{"version":3,"sources":["webpack://pdfjs-dist/build/pdf/webpack/universalModuleDefinition","webpack://pdfjs-dist/build/pdf/webpack/bootstrap","webpack://pdfjs-dist/build/pdf/src/pdf.js","webpack://pdfjs-dist/build/pdf/src/shared/util.js","webpack://pdfjs-dist/build/pdf/src/shared/compatibility.js","webpack://pdfjs-dist/build/pdf/src/shared/global_scope.js","webpack://pdfjs-dist/build/pdf/src/shared/is_node.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/fn/string/includes.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es6.string.includes.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_export.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_global.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_core.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_hide.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_object-dp.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_an-object.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_is-object.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_ie8-dom-define.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_descriptors.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_fails.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_dom-create.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_to-primitive.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_property-desc.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_redefine.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_has.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_uid.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_ctx.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_a-function.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_string-context.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_is-regexp.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_cof.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_wks.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_shared.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_library.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_defined.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_fails-is-regexp.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/fn/array/includes.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es7.array.includes.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_array-includes.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_to-iobject.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_iobject.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_to-length.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_to-integer.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_to-absolute-index.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_add-to-unscopables.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/fn/math/log2.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es6.math.log2.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/fn/number/is-nan.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es6.number.is-nan.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/fn/number/is-integer.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es6.number.is-integer.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_is-integer.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/fn/promise.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es6.object.to-string.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_classof.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es6.string.iterator.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_string-at.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_iter-define.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_iterators.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_iter-create.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_object-create.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_object-dps.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_object-keys.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_object-keys-internal.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_shared-key.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_enum-bug-keys.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_html.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_set-to-string-tag.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_object-gpo.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_to-object.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/web.dom.iterable.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es6.array.iterator.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_iter-step.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es6.promise.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_an-instance.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_for-of.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_iter-call.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_is-array-iter.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/core.get-iterator-method.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_species-constructor.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_task.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_invoke.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_microtask.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_new-promise-capability.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_perform.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_user-agent.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_promise-resolve.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_redefine-all.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_set-species.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_iter-detect.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es7.promise.finally.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es7.promise.try.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/fn/weak-map.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es6.weak-map.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_array-methods.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_array-species-create.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_array-species-constructor.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_is-array.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_meta.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_object-assign.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_object-gops.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_object-pie.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_collection-weak.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_validate-collection.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_collection.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_inherit-if-required.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_set-proto.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_object-gopd.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es7.weak-map.of.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_set-collection-of.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es7.weak-map.from.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_set-collection-from.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/fn/object/values.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/es7.object.values.js","webpack://pdfjs-dist/build/pdf/node_modules/core-js/modules/_object-to-array.js","webpack://pdfjs-dist/build/pdf/src/shared/streams_polyfill.js","webpack://pdfjs-dist/build/pdf/external/streams/streams-lib.js","webpack://pdfjs-dist/build/pdf/src/display/api.js","webpack://pdfjs-dist/build/pdf/src/display/dom_utils.js","webpack://pdfjs-dist/build/pdf/src/display/font_loader.js","webpack://pdfjs-dist/build/pdf/src/display/api_compatibility.js","webpack://pdfjs-dist/build/pdf/src/display/canvas.js","webpack://pdfjs-dist/build/pdf/src/display/pattern_helper.js","webpack://pdfjs-dist/build/pdf/src/display/worker_options.js","webpack://pdfjs-dist/build/pdf/src/shared/message_handler.js","webpack://pdfjs-dist/build/pdf/src/display/metadata.js","webpack://pdfjs-dist/build/pdf/src/display/xml_parser.js","webpack://pdfjs-dist/build/pdf/src/display/transport_stream.js","webpack://pdfjs-dist/build/pdf/src/display/webgl.js","webpack://pdfjs-dist/build/pdf/src/display/text_layer.js","webpack://pdfjs-dist/build/pdf/src/display/annotation_layer.js","webpack://pdfjs-dist/build/pdf/src/display/svg.js","webpack://pdfjs-dist/build/pdf/src/display/node_stream.js","webpack://pdfjs-dist/build/pdf/src/display/network_utils.js","webpack://pdfjs-dist/build/pdf/src/display/content_disposition.js","webpack://pdfjs-dist/build/pdf/src/display/fetch_stream.js","webpack://pdfjs-dist/build/pdf/src/display/network.js"],"names":["pdfjsVersion","pdfjsBuild","pdfjsSharedUtil","require","pdfjsDisplayAPI","pdfjsDisplayTextLayer","pdfjsDisplayAnnotationLayer","pdfjsDisplayDOMUtils","pdfjsDisplaySVG","pdfjsDisplayWorkerOptions","pdfjsDisplayAPICompatibility","isNodeJS","PDFNodeStream","Response","PDFFetchStream","PDFNetworkStream","exports","FONT_IDENTITY_MATRIX","NativeImageDecoding","NONE","DECODE","DISPLAY","TextRenderingMode","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","ImageKind","GRAYSCALE_1BPP","RGB_24BPP","RGBA_32BPP","AnnotationType","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","AnnotationFlag","HIDDEN","PRINT","NOZOOM","NOROTATE","NOVIEW","READONLY","LOCKED","TOGGLENOVIEW","LOCKEDCONTENTS","AnnotationFieldFlag","REQUIRED","NOEXPORT","MULTILINE","PASSWORD","NOTOGGLETOOFF","RADIO","PUSHBUTTON","COMBO","EDIT","SORT","FILESELECT","MULTISELECT","DONOTSPELLCHECK","DONOTSCROLL","COMB","RICHTEXT","RADIOSINUNISON","COMMITONSELCHANGE","AnnotationBorderStyleType","SOLID","DASHED","BEVELED","INSET","StreamType","UNKNOWN","FLATE","LZW","DCT","JPX","JBIG","A85","AHX","CCF","RL","FontType","TYPE1","TYPE1C","CIDFONTTYPE0","CIDFONTTYPE0C","TRUETYPE","CIDFONTTYPE2","TYPE3","OPENTYPE","TYPE0","MMTYPE1","VerbosityLevel","ERRORS","WARNINGS","INFOS","CMapCompressionType","BINARY","STREAM","OPS","dependency","setLineWidth","setLineCap","setLineJoin","setMiterLimit","setDash","setRenderingIntent","setFlatness","setGState","save","restore","transform","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","verbosity","Number","console","unreachable","UNSUPPORTED_FEATURES","unknown","forms","javaScript","smask","shadingPattern","font","base","other","url","absoluteUrl","baseUrl","isValidProtocol","Object","enumerable","configurable","writable","lookup","initializer","PasswordResponses","NEED_PASSWORD","INCORRECT_PASSWORD","PasswordException","UnknownErrorException","InvalidPDFException","MissingPDFException","UnexpectedResponseException","NotImplementedException","MissingDataException","XRefParseException","FormatError","AbortException","NullCharactersRegExp","warn","str","assert","bytes","length","MAX_ARGUMENT_COUNT","String","strBuf","i","chunkEnd","Math","chunk","arr","resultLength","ii","item","itemLength","arrayByteLength","pos","data","stringToBytes","value","x","offset","buffer8","view32","getArray","stopWhenFound","LOOP_LIMIT","loopCount","dict","values","IDENTITY_MATRIX","Util","rgbBuf","m1","m2","xt","p","m","yt","d","p1","p2","r","p3","p4","v","transpose","a","b","c","first","second","sx","sy","rect","orderedX","rect1","rect2","orderedY","result","ROMAN_NUMBER_MAP","number","romanBuf","romanStr","lowerCase","Array","obj1","obj2","sub","prototype","script","document","loaded","PDFStringTranslateTable","n","code","decodeURIComponent","escape","unescape","encodeURIComponent","ch","capability","createBlob","type","createObjectURL","digits","forceDataSchema","URL","blob","buffer","b1","b2","b3","d1","d2","d3","d4","globalScope","hasDOM","Buffer","get","scripts","Element","hasWorkingUrl","u","relative","relativePathDotMapping","clear","h","invalid","unicode","ALPHA","ALPHANUMERIC","errors","state","stateOverride","cursor","seenAt","seenBracket","input","err","isRelativeScheme","percentEscape","nextC","nextNextC","cp","tempC","IDNAToASCII","temp","parseInt","tmp","percentEscapeQuery","parse","JURL","toString","authority","host","OriginalURL","module","window","global","self","process","$export","context","INCLUDES","includes","arguments","core","hide","redefine","ctx","PROTOTYPE","IS_FORCED","IS_GLOBAL","IS_STATIC","IS_PROTO","IS_BIND","target","expProto","source","own","out","exp","Function","__g","version","__e","dP","createDesc","object","anObject","IE8_DOM_DEFINE","toPrimitive","P","TypeError","O","Attributes","isObject","it","is","S","val","fn","has","SRC","TO_STRING","$toString","TPL","isFunction","hasOwnProperty","id","px","key","aFunction","that","isRegExp","defined","cof","MATCH","store","uid","Symbol","USE_SYMBOL","$exports","SHARED","mode","copyright","re","$includes","toIObject","toLength","toAbsoluteIndex","index","IS_INCLUDES","el","IObject","toInteger","min","ceil","floor","isNaN","max","UNSCOPABLES","ArrayProto","log2","isInteger","isFinite","classof","test","TAG","ARG","tryGet","$at","done","point","s","l","LIBRARY","Iterators","$iterCreate","setToStringTag","getPrototypeOf","ITERATOR","BUGGY","FF_ITERATOR","KEYS","VALUES","returnThis","getMethod","kind","proto","NAME","DEF_VALUES","DEFAULT","VALUES_BUG","Base","$native","$default","$entries","$anyNative","IteratorPrototype","methods","keys","IS_SET","entries","create","descriptor","Constructor","next","dPs","enumBugKeys","IE_PROTO","Empty","createDict","iframe","lt","gt","iframeDocument","Properties","getKeys","$keys","arrayIndexOf","names","shared","def","stat","toObject","ObjectProto","$iterators","wks","TO_STRING_TAG","ArrayValues","DOMIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","collections","explicit","Collection","addToUnscopables","step","anInstance","forOf","speciesConstructor","task","microtask","newPromiseCapabilityModule","perform","userAgent","promiseResolve","PROMISE","versions","v8","$Promise","isNode","empty","newPromiseCapability","newGenericPromiseCapability","USE_NATIVE","promise","FakePromise","exec","isThenable","notify","chain","ok","run","handler","reaction","resolve","reject","domain","onHandleUnhandled","exited","then","isReject","onUnhandled","unhandled","isUnhandled","reason","$reject","$resolve","wrapper","_w","_d","Internal","executor","OwnPromiseCapability","C","Promise","Wrapper","$$reject","all","remaining","$index","alreadyCalled","race","forbiddenField","name","call","isArrayIter","getIterFn","BREAK","RETURN","iterFn","f","iterable","iterator","ret","SPECIES","invoke","html","cel","setTask","clearTask","MessageChannel","Dispatch","counter","queue","ONREADYSTATECHANGE","listener","event","args","defer","channel","port","setTimeout","set","un","macrotask","Observer","flush","parent","head","last","toggle","node","characterData","e","navigator","promiseCapability","src","DESCRIPTORS","SAFE_CLOSING","riter","safe","iter","each","meta","assign","weak","fails","validate","WEAK_MAP","getWeak","isExtensible","uncaughtFrozenStore","$WeakMap","InternalMap","method","asc","IS_MAP","TYPE","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","$create","res","isArray","original","META","setDesc","FREEZE","setMeta","w","fastKey","onFreeze","KEY","NEED","gOPS","pIE","$assign","A","B","K","T","aLen","getSymbols","isEnum","j","redefineAll","createArrayMethod","$has","arrayFind","arrayFindIndex","UncaughtFrozenStore","findUncaughtFrozen","entry","getConstructor","ufstore","$iterDetect","inheritIfRequired","ADDER","fixMethod","IS_WEAK","common","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setPrototypeOf","check","buggy","gOPD","of","from","mapFn","mapping","cb","$values","isReadableStreamSupported","start","controller","installedModules","modules","__w_pdfjs_require__","getter","_typeof","obj","_require","elements","IsPropertyKey","Call","F","highWaterMark","size","message","AssertionError","Error","rethrowAssertionErrorRejection","_createClass","props","defineProperties","InvokeOrNoop","PromiseInvokeOrNoop","ValidateAndNormalizeQueuingStrategy","typeIsObject","_require2","_require3","DequeueValue","EnqueueValueWithSize","PeekQueueValue","ResetQueue","WritableStream","underlyingSink","_ref","_ref$highWaterMark","_classCallCheck","IsWritableStream","streamBrandCheckException","IsWritableStreamLocked","WritableStreamAbort","AcquireWritableStreamDefaultWriter","WritableStreamDefaultControllerError","WritableStreamDefaultWriterCloseWithErrorPropagation","WritableStreamDefaultWriterRelease","WritableStreamDefaultWriterWrite","WritableStreamCloseQueuedOrInFlight","stream","error","wasAlreadyErroring","_resolve","_reject","_reason","_wasAlreadyErroring","WritableStreamStartErroring","writeRequest","WritableStreamFinishErroring","writer","WritableStreamDefaultWriterEnsureReadyPromiseRejected","WritableStreamHasOperationMarkedInFlight","storedError","WritableStreamRejectCloseAndClosedPromiseIfNeeded","abortRequest","WritableStreamDealWithRejection","defaultWriterClosedPromiseResolve","defaultWriterClosedPromiseReject","backpressure","defaultWriterReadyPromiseReset","defaultWriterReadyPromiseResolve","WritableStreamDefaultWriter","defaultWriterReadyPromiseInitialize","defaultWriterReadyPromiseInitializeAsResolved","defaultWriterClosedPromiseInitialize","defaultWriterReadyPromiseInitializeAsRejected","defaultWriterClosedPromiseInitializeAsResolved","defaultWriterClosedPromiseInitializeAsRejected","IsWritableStreamDefaultWriter","defaultWriterBrandCheckException","defaultWriterLockException","WritableStreamDefaultWriterAbort","WritableStreamDefaultWriterClose","WritableStreamDefaultWriterGetDesiredSize","closeRequest","WritableStreamDefaultControllerClose","defaultWriterClosedPromiseResetToRejected","defaultWriterReadyPromiseReject","defaultWriterReadyPromiseResetToRejected","WritableStreamDefaultControllerGetDesiredSize","releasedError","WritableStreamDefaultWriterEnsureClosedPromiseRejected","chunkSize","WritableStreamDefaultControllerGetChunkSize","WritableStreamAddWriteRequest","WritableStreamDefaultControllerWrite","WritableStreamDefaultController","normalizedStrategy","WritableStreamDefaultControllerGetBackpressure","WritableStreamUpdateBackpressure","IsWritableStreamDefaultController","_this","startResult","WritableStreamDefaultControllerAdvanceQueueIfNeeded","strategySize","WritableStreamDefaultControllerErrorIfNeeded","writeRecord","WritableStreamDefaultControllerProcessClose","WritableStreamDefaultControllerProcessWrite","WritableStreamMarkCloseRequestInFlight","sinkClosePromise","WritableStreamFinishInFlightClose","WritableStreamFinishInFlightCloseWithError","WritableStreamMarkFirstWriteRequestInFlight","sinkWritePromise","WritableStreamFinishInFlightWrite","WritableStreamFinishInFlightWriteWithError","desiredSize","IsFiniteNonNegativeNumber","container","pair","ArrayBufferCopy","CreateIterResultObject","TransferArrayBuffer","ValidateAndNormalizeHighWaterMark","createArrayFromList","createDataProperty","_require4","_require5","ReadableStream","underlyingSource","typeString","IsReadableStream","IsReadableStreamLocked","ReadableStreamCancel","_ref2","AcquireReadableStreamDefaultReader","AcquireReadableStreamBYOBReader","_ref3","readable","ifIsObjectAndHasAPromiseIsHandledInternalSlotSetPromiseIsHandledToTrue","_ref4","preventClose","preventAbort","preventCancel","Boolean","reader","shuttingDown","currentWrite","_ref5","isOrBecomesErrored","shutdownWithAction","shutdown","isOrBecomesClosed","dest","destClosed","pipeLoop","oldCurrentWrite","action","waitForWritesToFinish","finalize","ReadableStreamReaderGenericRelease","branches","ReadableStreamTee","IsReadableStreamDisturbed","ReadableStreamDefaultControllerClose","ReadableStreamDefaultControllerEnqueue","ReadableStreamDefaultControllerError","ReadableStreamDefaultControllerGetDesiredSize","teeState","closedOrErrored","canceled1","canceled2","reason1","reason2","pull","cancel1","cancel2","underlyingSource1","branch1Stream","underlyingSource2","branch2Stream","branch1","branch2","value1","value2","compositeReason","cancelResult","IsReadableStreamBYOBReader","readIntoRequest","IsReadableStreamDefaultReader","readRequest","ReadableStreamClose","sourceCancelPromise","defaultReaderClosedPromiseResolve","_i","defaultReaderClosedPromiseReject","ReadableStreamDefaultReader","ReadableStreamReaderGenericInitialize","defaultReaderBrandCheckException","readerLockException","ReadableStreamReaderGenericCancel","ReadableStreamDefaultReaderRead","ReadableStreamBYOBReader","IsReadableByteStreamController","byobReaderBrandCheckException","ArrayBuffer","view","ReadableStreamBYOBReaderRead","defaultReaderClosedPromiseInitialize","defaultReaderClosedPromiseInitializeAsResolved","defaultReaderClosedPromiseInitializeAsRejected","defaultReaderClosedPromiseResetToRejected","ReadableByteStreamControllerPullInto","ReadableStreamDefaultController","ReadableStreamDefaultControllerCallPullIfNeeded","ReadableStreamDefaultControllerErrorIfNeeded","IsReadableStreamDefaultController","defaultControllerBrandCheckException","pendingPromise","ReadableStreamAddReadRequest","shouldPull","ReadableStreamDefaultControllerShouldCallPull","pullPromise","ReadableStreamGetNumReadRequests","ReadableStreamFulfillReadRequest","ReadableStreamError","ReadableStreamBYOBRequest","IsReadableStreamBYOBRequest","byobRequestBrandCheckException","ReadableByteStreamControllerRespond","ReadableByteStreamControllerRespondWithNewView","ReadableByteStreamController","ReadableByteStreamControllerClearPendingPullIntos","autoAllocateChunkSize","underlyingByteSource","ReadableByteStreamControllerCallPullIfNeeded","ReadableByteStreamControllerError","byteStreamControllerBrandCheckException","ReadableByteStreamControllerClose","ReadableByteStreamControllerEnqueue","firstDescriptor","ReadableStreamHasDefaultReader","ReadableByteStreamControllerHandleQueueDrain","pullIntoDescriptor","byteOffset","byteLength","bytesFilled","elementSize","ctor","readerType","ReadableByteStreamControllerGetDesiredSize","ReadableByteStreamControllerShouldCallPull","ReadableByteStreamControllerInvalidateBYOBRequest","filledView","ReadableByteStreamControllerConvertPullIntoDescriptor","ReadableStreamFulfillReadIntoRequest","currentAlignedBytes","maxBytesToCopy","maxBytesFilled","maxAlignedBytes","totalBytesToCopyRemaining","ready","headOfQueue","bytesToCopy","destStart","ReadableByteStreamControllerFillHeadPullIntoDescriptor","ReadableByteStreamControllerFillPullIntoDescriptorFromQueue","ReadableByteStreamControllerShiftPendingPullInto","ReadableByteStreamControllerCommitPullIntoDescriptor","ReadableStreamAddReadIntoRequest","emptyView","ReadableStreamHasBYOBReader","ReadableStreamGetNumReadIntoRequests","remainderSize","end","remainder","ReadableByteStreamControllerEnqueueChunkToQueue","ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue","bytesWritten","ReadableByteStreamControllerRespondInClosedState","ReadableByteStreamControllerRespondInReadableState","firstPendingPullInto","transferredBuffer","transferredView","ReadableByteStreamControllerRespondInternal","transformStream","readableStream","writableStream","PromiseInvokeOrPerformFallback","TransformStreamCloseReadableInternal","TransformStreamErrorIfNeeded","maybeBackpressure","TransformStreamSetBackpressure","TransformStreamErrorInternal","resolution","transformStreamController","TransformStreamEnqueueToReadable","transformer","transformPromise","TransformStreamReadableReadyPromise","TransformStreamSink","TransformStreamTransform","flushPromise","TransformStreamSource","TransformStreamDefaultController","IsTransformStream","IsTransformStreamDefaultController","TransformStreamCloseReadable","TransformStreamError","readableController","TransformStream","readableStrategy","writableStrategy","startPromise_resolve","startPromise","sink","DEFAULT_RANGE_CHUNK_SIZE","isWorkerDisabled","pdfjsFilePath","fakeWorkerFilesLoader","useRequireEnsure","__non_webpack_require__","requirejs","workerSrc","dynamicLoaderSupported","worker","callback","createPDFNetworkStream","isArrayBuffer","range","params","rangeTransport","CMapReaderFactory","pdfBytes","NativeImageDecoderValues","apiCompatibilityParams","setVerbosityLevel","workerParams","postMessageTransfers","workerPort","GlobalWorkerOptions","PDFWorker","docId","networkStream","initialData","disableRange","disableStream","httpHeaders","withCredentials","rangeChunkSize","messageHandler","transport","pdfDataRangeTransport","apiVersion","password","disableAutoFetch","maxImageSize","disableFontFace","disableCreateObjectURL","docBaseUrl","nativeImageDecoderSupport","ignoreErrors","isEvalSupported","PDFDocumentLoadingTask","nextDocumentId","destroy","transportDestroyed","PDFDataRangeTransport","addRangeListener","addProgressListener","addProgressiveReadListener","onDataRange","listeners","onDataProgress","onDataProgressiveRead","transportReady","requestDataRange","abort","PDFDocumentProxy","getPage","getPageIndex","getDestinations","getDestination","getPageLabels","getPageMode","getAttachments","getJavaScript","getOutline","getMetadata","getData","getDownloadInfo","getStats","cleanup","PDFPageProxy","pdfBug","getViewport","rotate","dontFlip","viewBox","rotation","getAnnotations","intent","render","stats","renderingIntent","canvasFactory","webGLContext","enable","intentState","fnArray","argsArray","lastChunk","pageIndex","renderInteractiveForms","complete","internalRenderTask","renderTask","getOperatorList","opListTask","streamTextContent","TEXT_CONTENT_CHUNK_SIZE","normalizeWhitespace","combineTextItems","textContent","getTextContent","items","styles","_destroy","waitOn","renderCompleted","resetStats","_tryCleanup","_startRenderPage","_renderPageChunk","operatorListChunk","constructor","postMessage","cloned","transferable","transfers","desc","cloneValue","addEventListener","removeEventListener","nextFakeWorkerId","fakeWorkerFilesLoadedCapability","mainWorkerMessageHandler","loader","pdfWorkerPorts","isNum","_initializeFromPort","_initialize","isSameOrigin","createCDNWrapper","terminateEarly","onWorkerError","supportTypedArray","sendTest","testObj","info","_setupFakeWorker","setupFakeWorkerGlobal","isTypedArraysPresent","Uint8Array","workerHandler","WorkerMessageHandler","WorkerTransport","loadingTask","isCompressed","page","terminated","setupMessageHandler","evt","total","headersCapability","fullReader","isStreamingSupported","isRangeSupported","contentLength","_rangeReader","pdfInfo","pdfDocument","updatePassword","exception","exportedData","exportedError","fontRegistry","registerFont","fontReady","pageProxy","imageData","img","MAX_IMAGE_SIZE_TO_STORE","imageUrl","components","width","height","rgbaLength","buf","tmpCanvas","tmpCtx","pageNumber","results","metadata","contentDispositionFilename","startCleanup","PDFObjects","ensureObj","resolved","isResolved","objs","hasData","RenderTask","cancel","InternalRenderTask","canvasInRendering","initializeGraphics","viewport","background","operatorListChanged","_continue","_scheduleNext","_next","build","DEFAULT_LINK_REL","SVG_NS","canvas","reset","canvasAndContext","fetch","request","XMLHttpRequest","cMapData","compressionType","svg","createElement","offsetX","offsetY","centerX","centerY","rotateA","rotateB","rotateC","rotateD","offsetCanvasX","offsetCanvasY","clone","scale","convertToViewportPoint","convertToViewportRectangle","tl","br","convertToPdfPoint","RenderingCancelledException","LinkTarget","SELF","BLANK","PARENT","TOP","LinkTargetStringMap","link","removeNullCharacters","LinkTargetValues","targetIndex","anchor","query","time","Date","timeEnd","times","longest","span","duration","requests","nextRequestId","FontLoader","insertRule","styleElement","styleSheet","getLoadTestFont","atob","shadow","rules","fontsToLoad","fontLoadPromises","getNativeFontPromise","nativeFontFace","isFontLoadingAPISupported","fonts","rule","otherRequest","requestId","started","chunk1","chunk2","called","isFontReady","loadTestFontId","COMMENT_OFFSET","spliceString","CFF_CHECKSUM_OFFSET","XXXX_VALUE","checksum","int32","string32","btoa","div","isSyncFontLoadingSupported","supported","IsEvalSupportedCached","FontFaceObject","translatedData","createNativeFontFace","createFontFaceRule","bytesToString","fontName","getPathGenerator","cmds","js","len","current","compatibilityParams","isIE","isIOS","isIOSChrome","isSafari","MIN_FONT_SIZE","MAX_FONT_SIZE","MAX_GROUP_SIZE","MIN_WIDTH_FACTOR","COMPILE_TYPE3_GLYPHS","MAX_SIZE_TO_COMPILE","FULL_CHUNK_HEIGHT","IsLittleEndianCached","ad_bc","bc_ad","old","prev","cosValue","sinValue","CachedCanvases","getCanvas","canvasEntry","addContextCurrentTransform","POINT_TO_PROCESS_LIMIT","imgData","width1","points","POINT_TYPES","lineSize","data0","mask","elem","count","j0","sum","steps","outlines","coords","p0","pp","drawOutline","o","jj","CanvasExtraState","setCurrentPoint","CanvasGraphics","EXECUTION_TIME","EXECUTION_STEPS","partialChunkHeight","fullChunks","totalChunks","chunkImgData","srcPos","srcLength","dest32","dest32DataLength","fullSrcDiff","white","black","thisChunkHeight","destPos","srcDiff","k","kEnd","kEndUnrolled","srcByte","elemsInThisChunk","properties","property","sourceCtx","destCtx","alpha","alpha_","r0","g0","b0","maskData","transferMap","layerData","y","hasBackdrop","backdrop","subtype","composeFn","PIXELS_TO_PROCESS","row","chunkHeight","maskCtx","layerCtx","composeSMaskBackdrop","composed","layer","genericComposeSMask","LINE_CAP_STYLES","LINE_JOIN_STYLES","NORMAL_CLIP","EO_CLIP","beginDrawing","transparentCanvas","resetCtxToDefault","executeOperatorList","operatorList","executionStartIdx","argsArrayLen","chunkOperations","endTime","commonObjs","stepper","fnId","deps","nn","depObjId","objsPool","endDrawing","states","beginSMaskGroup","activeSMask","drawnWidth","drawnHeight","cacheId","scratchCanvas","currentCtx","currentTransform","groupCtx","copyCtxState","suspendSMaskGroup","composeSMask","deltaTransform","resumeSMaskGroup","endSMaskGroup","ops","xw","yh","consumePath","strokeColor","fillColor","isPatternFill","needRestore","paths","path","fontObj","bold","italic","typeface","browserFontSize","paintChar","textRenderingMode","fontSize","fillStrokeMode","isAddToPathSet","patternFill","addToPath","enabled","fontSizeScale","charSpacing","wordSpacing","fontDirection","textHScale","glyphsLength","glyphs","vertical","spacingDir","defaultVMetrics","widthAdvanceScale","simpleFillText","pattern","patternTransform","lineWidth","glyph","restoreNeeded","spacing","character","accent","vmetric","vx","vy","scaledX","scaledY","measuredWidth","characterScaleX","scaledAccentX","scaledAccentY","charWidth","showType3Text","fontMatrix","isTextInvisible","spacingLength","transformed","urx","ury","getColorN_Pattern","IR","color","baseTransform","canvasGraphicsFactory","createCanvasGraphics","getShadingPatternFromIR","inv","bl","ul","ur","x0","y0","x1","y1","matrix","bbox","group","bounds","canvasBounds","scaleX","scaleY","startTransformInverse","domImage","position","left","top","maskCanvas","putBinaryImageMask","positions","images","image","map","widthScale","heightScale","imgToPaint","putBinaryImageData","paintWidth","paintHeight","tmpCanvasId","newWidth","newHeight","getSinglePixelWidth","inverse","getCanvasPosition","ShadingIRs","fromIR","raw","colorStops","r1","getPattern","grad","createMeshCanvas","colors","rowSize","c1","c2","c3","x2","y2","x3","y3","c1r","c1g","c1b","c2r","c2g","c2b","c3r","c3g","c3b","minY","maxY","xa","car","cag","cab","xb","cbr","cbg","cbb","x1_","x2_","ps","figure","cs","verticesPerRow","rows","cols","q","drawTriangle","EXPECTED_SCALE","MAX_PATTERN_SIZE","BORDER_SIZE","boundsWidth","boundsHeight","combinesScale","paddedWidth","paddedHeight","cachedCanvases","backgroundColor","figures","drawFigure","owner","matrixScale","temporaryPatternCanvas","shadingIR","TilingPattern","PaintType","COLORED","UNCOLORED","createPatternCanvas","xstep","ystep","paintType","tilingType","topLeft","botRight","curMatrixScale","combinedScale","graphics","tmpTranslate","setScale","transformToScale","tmpScale","scaleToContext","clipBbox","bboxWidth","bboxHeight","setFillAndStrokeStyleToContext","cssColor","thisArg","callbacksCapabilities","ah","callbackId","wrapReason","sourceName","targetName","comObj","isReply","makeReasonSerializable","MessageHandler","on","send","sendWithPromise","sendWithStream","streamId","startCapability","startCall","isClosed","pullCapability","cancelCapability","_createStreamSink","sendStreamRequest","streamSink","enqueue","lastDesiredSize","close","sinkCapability","onPull","onCancel","isCancelled","resolveCall","success","_processStreamMessage","sendStreamResponse","deleteStreamController","resolveOrReject","parser","xmlDocument","_repair","chars","_parse","rdf","nodeName","children","XMLParserErrorCode","NoError","EndOfDocument","UnterminatedCdat","UnterminatedXmlDeclaration","UnterminatedDoctypeDeclaration","UnterminatedComment","MalformedElement","OutOfMemory","UnterminatedAttributeValue","UnterminatedElement","ElementNeverBegun","isWhitespace","_resolveEntities","entity","_parseContent","attributes","attrName","attrValue","attrEndChar","attrEndIndex","parsed","_parseProcessingInstruction","attrStart","parseXml","ch2","pi","q2","complexDoctype","doctypeContent","content","text","onResolveEntity","onPi","onComment","onCdata","onDoctype","onText","onBeginElement","onEndElement","onError","child","parseFromString","isWhitespaceString","lastElement","PDFDataTransportStream","_onReceiveData","found","rangeReader","_onProgress","firstReader","_removeRangeReader","getFullReader","queuedChunks","getRangeReader","cancelAllRequests","readers","PDFDataTransportStreamReader","_enqueue","requestCapability","read","PDFDataTransportStreamRangeReader","requestsCapability","WebGLUtils","drawFigures","shader","gl","compiled","errorMsg","loadShader","program","shaders","linked","texture","currentCanvas","currentGL","premultipliedalpha","smaskVertexShaderCode","smaskFragmentShaderCode","smaskCache","vertexShader","createVertexShader","fragmentShader","createFragmentShader","cache","texCoordLocation","texLayerLocation","texMaskLocation","texCoordBuffer","createTexture","maskTexture","figuresVertexShaderCode","figuresFragmentShaderCode","figuresCache","coordsMap","colorsMap","pIndex","cIndex","col","coordsBuffer","colorsBuffer","tryInitGL","renderTextLayer","MAX_TEXT_DIVS_TO_RENDER","NonWhitespaceRegexp","styleBuf","textDiv","textDivProperties","style","angle","canvasWidth","originalTransform","paddingBottom","paddingLeft","paddingRight","paddingTop","isAllWhitespace","geom","tx","fontHeight","fontAscent","angleCos","angleSin","divWidth","divHeight","right","bottom","textDivs","textDivsLength","expanded","expandBounds","divProperties","ts","t","findPositiveMin","boxScale","box","x1New","x2New","expandBoundsLTR","boxes","fakeBoundary","horizon","boundary","maxXNew","horizonPart","affectedBoundary","xNew","changedHorizon","lastBoundary","useBoundary","used","textContentItemsStr","TextLayerRenderTask","clearTimeout","_processItems","appendText","_layoutText","textLayerFrag","fontFamily","_render","styleCache","textItems","textStyles","pump","expandTextDivs","expand","padding","renderParameters","textContentStream","enhanceTextSelection","parameters","fieldType","isRenderable","ignoreBorder","_createContainer","horizontalRadius","verticalRadius","radius","_createPopup","trigger","popupElement","title","contents","hideWrapper","popup","addLinkAttributes","linkService","rel","_bindLink","_bindNamedAction","JSON","TEXT_ALIGNMENT","element","fieldWidth","combWidth","_setTextStyle","fallbackName","selectElement","option","optionElement","IGNORE_TYPES","selector","parentElement","parentLeft","parseFloat","parentWidth","BACKGROUND_ENLIGHT","g","_formatContents","lines","line","pin","_show","unpin","_hide","borderWidth","square","circle","vertices","polyline","file","getFilenameFromUrl","stringToPDFString","filename","downloadManager","imageResourcesPath","svgFactory","SVGGraphics","SVG_DEFAULTS","fontStyle","fontWeight","convertImgDataToPng","PNG_HEADER","CHUNK_WRAPPER_SIZE","crcTable","crc","body","crc32","deflateSyncUncompressed","output","level","literals","maxBlockLength","deflateBlocks","idat","adler","adler32","colorType","bitDepth","offsetLiterals","offsetBytes","ihdr","deflateSync","pngLength","writePngChunk","encode","SVGExtraState","opTree","opListLen","opList","pf","XML_NS","XLINK_NS","clipCount","maskCount","loadDependencies","fnArrayLen","transformMatrix","getSVG","svgElement","convertOpList","REVOPS","opListToTree","executeOpTree","opTreeLen","textMatrix","pm","addFontStyle","details","setStrokeAlpha","setFillAlpha","opLength","clipId","clipPath","clipElement","imgObj","imgEl","imgSrc","cliprect","definitions","rootGroup","_ensureClipGroup","clipGroup","_ensureTransformGroup","fs","http","https","fileUriRegex","parsedUrl","parseUrl","_error","_setReadableStream","protocol","auth","handleResponse","getResponseHeader","isHttp","suggestedLength","extractFilenameFromHeader","createRequestOptions","returnValues","allowRangeRequests","contentEncoding","contentDisposition","getFilenameFromContentDispositionHeader","status","needsEncodingFixup","toParamRegExp","rfc2616unquote","rfc5987decode","rfc2047decode","fixupEncoding","rfc2231getparam","decoder","fatal","textdecode","matches","parts","part","quotindex","encodingend","extvalue","encoding","langvalue","signal","abortController","credentials","redirect","createFetchOptions","validateResponseStatus","response","createResponseStatusError","rangeStr","begin","OK_RESPONSE","PARTIAL_CONTENT_RESPONSE","xhr","array","supportsMozChunked","NetworkManager","requestRange","requestFull","xhrId","pendingRequest","useMozChunkedLoading","onProgress","getArrayBuffer","onStateChange","xhrStatus","ok_response_on_range_request","rangeHeader","hasPendingRequests","getRequestXhr","isStreamingRequest","isPendingRequest","isLoadedRequest","abortAllRequests","_onRangeRequestReaderClosed","onHeadersReceived","onProgressiveData","onDone","manager","PDFNetworkStreamFullRequestReader","_onHeadersReceived","fullRequestXhrId","fullRequestXhr","networkManager","_onProgressiveData","_onDone","_onError","PDFNetworkStreamRangeRequestReader","_close"],"mappings":"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","file":"pdf.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"pdfjs-dist/build/pdf\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"pdfjs-dist/build/pdf\"] = factory();\n\telse\n\t\troot[\"pdfjs-dist/build/pdf\"] = factory();\n})(this, function() {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __w_pdfjs_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __w_pdfjs_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__w_pdfjs_require__.m = modules;\n\n \t// expose the module cache\n \t__w_pdfjs_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__w_pdfjs_require__.d = function(exports, name, getter) {\n \t\tif(!__w_pdfjs_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__w_pdfjs_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__w_pdfjs_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __w_pdfjs_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__w_pdfjs_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __w_pdfjs_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__w_pdfjs_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__w_pdfjs_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__w_pdfjs_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__w_pdfjs_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __w_pdfjs_require__(__w_pdfjs_require__.s = 0);\n","/* Copyright 2012 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/* eslint-disable no-unused-vars */\n\n'use strict';\n\nvar pdfjsVersion =\n typeof PDFJSDev !== 'undefined' ? PDFJSDev.eval('BUNDLE_VERSION') : void 0;\nvar pdfjsBuild =\n typeof PDFJSDev !== 'undefined' ? PDFJSDev.eval('BUNDLE_BUILD') : void 0;\n\nvar pdfjsSharedUtil = require('./shared/util.js');\nvar pdfjsDisplayAPI = require('./display/api.js');\nvar pdfjsDisplayTextLayer = require('./display/text_layer.js');\nvar pdfjsDisplayAnnotationLayer = require('./display/annotation_layer.js');\nvar pdfjsDisplayDOMUtils = require('./display/dom_utils.js');\nvar pdfjsDisplaySVG = require('./display/svg.js');\nlet pdfjsDisplayWorkerOptions = require('./display/worker_options.js');\nlet pdfjsDisplayAPICompatibility = require('./display/api_compatibility.js');\n\nif (typeof PDFJSDev === 'undefined' || PDFJSDev.test('GENERIC')) {\n const isNodeJS = require('./shared/is_node.js');\n if (isNodeJS()) {\n let PDFNodeStream = require('./display/node_stream.js').PDFNodeStream;\n pdfjsDisplayAPI.setPDFNetworkStreamFactory((params) => {\n return new PDFNodeStream(params);\n });\n } else if (typeof Response !== 'undefined' && 'body' in Response.prototype &&\n typeof ReadableStream !== 'undefined') {\n let PDFFetchStream = require('./display/fetch_stream.js').PDFFetchStream;\n pdfjsDisplayAPI.setPDFNetworkStreamFactory((params) => {\n return new PDFFetchStream(params);\n });\n } else {\n let PDFNetworkStream = require('./display/network.js').PDFNetworkStream;\n pdfjsDisplayAPI.setPDFNetworkStreamFactory((params) => {\n return new PDFNetworkStream(params);\n });\n }\n} else if (typeof PDFJSDev !== 'undefined' && PDFJSDev.test('CHROME')) {\n let PDFNetworkStream = require('./display/network.js').PDFNetworkStream;\n let PDFFetchStream;\n let isChromeWithFetchCredentials = function() {\n // fetch does not include credentials until Chrome 61.0.3138.0 and later.\n // https://chromium.googlesource.com/chromium/src/+/2e231cf052ca5e68e22baf0008ac9e5e29121707\n try {\n // Indexed properties on window are read-only in Chrome 61.0.3151.0+\n // https://chromium.googlesource.com/chromium/src.git/+/58ab4a971b06dec13e4edf9de8382ca6847f6190\n window[999] = 123; // should throw. Note: JS strict mode MUST be enabled.\n delete window[999];\n return false;\n } catch (e) {\n return true;\n }\n };\n if (typeof Response !== 'undefined' && 'body' in Response.prototype &&\n typeof ReadableStream !== 'undefined' && isChromeWithFetchCredentials()) {\n PDFFetchStream = require('./display/fetch_stream.js').PDFFetchStream;\n }\n pdfjsDisplayAPI.setPDFNetworkStreamFactory((params) => {\n if (PDFFetchStream && /^https?:/i.test(params.url)) {\n // \"fetch\" is only supported for http(s), not file/ftp.\n return new PDFFetchStream(params);\n }\n return new PDFNetworkStream(params);\n });\n}\n\nexports.build = pdfjsDisplayAPI.build;\nexports.version = pdfjsDisplayAPI.version;\nexports.getDocument = pdfjsDisplayAPI.getDocument;\nexports.LoopbackPort = pdfjsDisplayAPI.LoopbackPort;\nexports.PDFDataRangeTransport = pdfjsDisplayAPI.PDFDataRangeTransport;\nexports.PDFWorker = pdfjsDisplayAPI.PDFWorker;\nexports.renderTextLayer = pdfjsDisplayTextLayer.renderTextLayer;\nexports.AnnotationLayer = pdfjsDisplayAnnotationLayer.AnnotationLayer;\nexports.createPromiseCapability = pdfjsSharedUtil.createPromiseCapability;\nexports.PasswordResponses = pdfjsSharedUtil.PasswordResponses;\nexports.InvalidPDFException = pdfjsSharedUtil.InvalidPDFException;\nexports.MissingPDFException = pdfjsSharedUtil.MissingPDFException;\nexports.SVGGraphics = pdfjsDisplaySVG.SVGGraphics;\nexports.NativeImageDecoding = pdfjsSharedUtil.NativeImageDecoding;\nexports.UnexpectedResponseException =\n pdfjsSharedUtil.UnexpectedResponseException;\nexports.OPS = pdfjsSharedUtil.OPS;\nexports.VerbosityLevel = pdfjsSharedUtil.VerbosityLevel;\nexports.UNSUPPORTED_FEATURES = pdfjsSharedUtil.UNSUPPORTED_FEATURES;\nexports.createValidAbsoluteUrl = pdfjsSharedUtil.createValidAbsoluteUrl;\nexports.createObjectURL = pdfjsSharedUtil.createObjectURL;\nexports.removeNullCharacters = pdfjsSharedUtil.removeNullCharacters;\nexports.shadow = pdfjsSharedUtil.shadow;\nexports.createBlob = pdfjsSharedUtil.createBlob;\nexports.Util = pdfjsSharedUtil.Util;\nexports.RenderingCancelledException =\n pdfjsDisplayDOMUtils.RenderingCancelledException;\nexports.getFilenameFromUrl = pdfjsDisplayDOMUtils.getFilenameFromUrl;\nexports.LinkTarget = pdfjsDisplayDOMUtils.LinkTarget;\nexports.addLinkAttributes = pdfjsDisplayDOMUtils.addLinkAttributes;\nexports.GlobalWorkerOptions = pdfjsDisplayWorkerOptions.GlobalWorkerOptions;\nexports.apiCompatibilityParams =\n pdfjsDisplayAPICompatibility.apiCompatibilityParams;\n","/* Copyright 2012 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\nimport './compatibility';\nimport { ReadableStream } from './streams_polyfill';\n\nvar FONT_IDENTITY_MATRIX = [0.001, 0, 0, 0.001, 0, 0];\n\nconst NativeImageDecoding = {\n NONE: 'none',\n DECODE: 'decode',\n DISPLAY: 'display',\n};\n\nvar TextRenderingMode = {\n FILL: 0,\n STROKE: 1,\n FILL_STROKE: 2,\n INVISIBLE: 3,\n FILL_ADD_TO_PATH: 4,\n STROKE_ADD_TO_PATH: 5,\n FILL_STROKE_ADD_TO_PATH: 6,\n ADD_TO_PATH: 7,\n FILL_STROKE_MASK: 3,\n ADD_TO_PATH_FLAG: 4,\n};\n\nvar ImageKind = {\n GRAYSCALE_1BPP: 1,\n RGB_24BPP: 2,\n RGBA_32BPP: 3,\n};\n\nvar AnnotationType = {\n TEXT: 1,\n LINK: 2,\n FREETEXT: 3,\n LINE: 4,\n SQUARE: 5,\n CIRCLE: 6,\n POLYGON: 7,\n POLYLINE: 8,\n HIGHLIGHT: 9,\n UNDERLINE: 10,\n SQUIGGLY: 11,\n STRIKEOUT: 12,\n STAMP: 13,\n CARET: 14,\n INK: 15,\n POPUP: 16,\n FILEATTACHMENT: 17,\n SOUND: 18,\n MOVIE: 19,\n WIDGET: 20,\n SCREEN: 21,\n PRINTERMARK: 22,\n TRAPNET: 23,\n WATERMARK: 24,\n THREED: 25,\n REDACT: 26,\n};\n\nvar AnnotationFlag = {\n INVISIBLE: 0x01,\n HIDDEN: 0x02,\n PRINT: 0x04,\n NOZOOM: 0x08,\n NOROTATE: 0x10,\n NOVIEW: 0x20,\n READONLY: 0x40,\n LOCKED: 0x80,\n TOGGLENOVIEW: 0x100,\n LOCKEDCONTENTS: 0x200,\n};\n\nvar AnnotationFieldFlag = {\n READONLY: 0x0000001,\n REQUIRED: 0x0000002,\n NOEXPORT: 0x0000004,\n MULTILINE: 0x0001000,\n PASSWORD: 0x0002000,\n NOTOGGLETOOFF: 0x0004000,\n RADIO: 0x0008000,\n PUSHBUTTON: 0x0010000,\n COMBO: 0x0020000,\n EDIT: 0x0040000,\n SORT: 0x0080000,\n FILESELECT: 0x0100000,\n MULTISELECT: 0x0200000,\n DONOTSPELLCHECK: 0x0400000,\n DONOTSCROLL: 0x0800000,\n COMB: 0x1000000,\n RICHTEXT: 0x2000000,\n RADIOSINUNISON: 0x2000000,\n COMMITONSELCHANGE: 0x4000000,\n};\n\nvar AnnotationBorderStyleType = {\n SOLID: 1,\n DASHED: 2,\n BEVELED: 3,\n INSET: 4,\n UNDERLINE: 5,\n};\n\nvar StreamType = {\n UNKNOWN: 0,\n FLATE: 1,\n LZW: 2,\n DCT: 3,\n JPX: 4,\n JBIG: 5,\n A85: 6,\n AHX: 7,\n CCF: 8,\n RL: 9,\n};\n\nvar FontType = {\n UNKNOWN: 0,\n TYPE1: 1,\n TYPE1C: 2,\n CIDFONTTYPE0: 3,\n CIDFONTTYPE0C: 4,\n TRUETYPE: 5,\n CIDFONTTYPE2: 6,\n TYPE3: 7,\n OPENTYPE: 8,\n TYPE0: 9,\n MMTYPE1: 10,\n};\n\nconst VerbosityLevel = {\n ERRORS: 0,\n WARNINGS: 1,\n INFOS: 5,\n};\n\nvar CMapCompressionType = {\n NONE: 0,\n BINARY: 1,\n STREAM: 2,\n};\n\n// All the possible operations for an operator list.\nvar OPS = {\n // Intentionally start from 1 so it is easy to spot bad operators that will be\n // 0's.\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\nlet verbosity = VerbosityLevel.WARNINGS;\n\nfunction setVerbosityLevel(level) {\n if (Number.isInteger(level)) {\n verbosity = level;\n }\n}\n\nfunction getVerbosityLevel() {\n return verbosity;\n}\n\n// A notice for devs. These are good for things that are helpful to devs, such\n// as warning that Workers were disabled, which is important to devs but not\n// end users.\nfunction info(msg) {\n if (verbosity >= VerbosityLevel.INFOS) {\n console.log('Info: ' + msg);\n }\n}\n\n// Non-fatal warnings.\nfunction warn(msg) {\n if (verbosity >= VerbosityLevel.WARNINGS) {\n console.log('Warning: ' + msg);\n }\n}\n\n// Deprecated API function -- display regardless of the `verbosity` setting.\nfunction deprecated(details) {\n console.log('Deprecated API usage: ' + details);\n}\n\nfunction unreachable(msg) {\n throw new Error(msg);\n}\n\nfunction assert(cond, msg) {\n if (!cond) {\n unreachable(msg);\n }\n}\n\nvar UNSUPPORTED_FEATURES = {\n unknown: 'unknown',\n forms: 'forms',\n javaScript: 'javaScript',\n smask: 'smask',\n shadingPattern: 'shadingPattern',\n font: 'font',\n};\n\n// Checks if URLs have the same origin. For non-HTTP based URLs, returns false.\nfunction isSameOrigin(baseUrl, otherUrl) {\n try {\n var base = new URL(baseUrl);\n if (!base.origin || base.origin === 'null') {\n return false; // non-HTTP url\n }\n } catch (e) {\n return false;\n }\n\n var other = new URL(otherUrl, base);\n return base.origin === other.origin;\n}\n\n// Checks if URLs use one of the whitelisted protocols, e.g. to avoid XSS.\nfunction 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\n/**\n * Attempts to create a valid absolute URL (utilizing `isValidProtocol`).\n * @param {URL|string} url - An absolute, or relative, URL.\n * @param {URL|string} baseUrl - An absolute URL.\n * @returns Either a valid {URL}, or `null` otherwise.\n */\nfunction createValidAbsoluteUrl(url, baseUrl) {\n if (!url) {\n return null;\n }\n try {\n var absoluteUrl = baseUrl ? new URL(url, baseUrl) : new URL(url);\n if (isValidProtocol(absoluteUrl)) {\n return absoluteUrl;\n }\n } catch (ex) { /* `new URL()` will throw on incorrect data. */ }\n return null;\n}\n\nfunction shadow(obj, prop, value) {\n Object.defineProperty(obj, prop, { value,\n enumerable: true,\n configurable: true,\n writable: false, });\n return value;\n}\n\nfunction getLookupTableFactory(initializer) {\n var lookup;\n return function () {\n if (initializer) {\n lookup = Object.create(null);\n initializer(lookup);\n initializer = null;\n }\n return lookup;\n };\n}\n\nvar PasswordResponses = {\n NEED_PASSWORD: 1,\n INCORRECT_PASSWORD: 2,\n};\n\nvar PasswordException = (function PasswordExceptionClosure() {\n function PasswordException(msg, code) {\n this.name = 'PasswordException';\n this.message = msg;\n this.code = code;\n }\n\n PasswordException.prototype = new Error();\n PasswordException.constructor = PasswordException;\n\n return PasswordException;\n})();\n\nvar UnknownErrorException = (function UnknownErrorExceptionClosure() {\n function UnknownErrorException(msg, details) {\n this.name = 'UnknownErrorException';\n this.message = msg;\n this.details = details;\n }\n\n UnknownErrorException.prototype = new Error();\n UnknownErrorException.constructor = UnknownErrorException;\n\n return UnknownErrorException;\n})();\n\nvar InvalidPDFException = (function InvalidPDFExceptionClosure() {\n function InvalidPDFException(msg) {\n this.name = 'InvalidPDFException';\n this.message = msg;\n }\n\n InvalidPDFException.prototype = new Error();\n InvalidPDFException.constructor = InvalidPDFException;\n\n return InvalidPDFException;\n})();\n\nvar MissingPDFException = (function MissingPDFExceptionClosure() {\n function MissingPDFException(msg) {\n this.name = 'MissingPDFException';\n this.message = msg;\n }\n\n MissingPDFException.prototype = new Error();\n MissingPDFException.constructor = MissingPDFException;\n\n return MissingPDFException;\n})();\n\nvar UnexpectedResponseException =\n (function UnexpectedResponseExceptionClosure() {\n function UnexpectedResponseException(msg, status) {\n this.name = 'UnexpectedResponseException';\n this.message = msg;\n this.status = status;\n }\n\n UnexpectedResponseException.prototype = new Error();\n UnexpectedResponseException.constructor = UnexpectedResponseException;\n\n return UnexpectedResponseException;\n})();\n\nvar NotImplementedException = (function NotImplementedExceptionClosure() {\n function NotImplementedException(msg) {\n this.message = msg;\n }\n\n NotImplementedException.prototype = new Error();\n NotImplementedException.prototype.name = 'NotImplementedException';\n NotImplementedException.constructor = NotImplementedException;\n\n return NotImplementedException;\n})();\n\nvar MissingDataException = (function MissingDataExceptionClosure() {\n function MissingDataException(begin, end) {\n this.begin = begin;\n this.end = end;\n this.message = 'Missing data [' + begin + ', ' + end + ')';\n }\n\n MissingDataException.prototype = new Error();\n MissingDataException.prototype.name = 'MissingDataException';\n MissingDataException.constructor = MissingDataException;\n\n return MissingDataException;\n})();\n\nvar XRefParseException = (function XRefParseExceptionClosure() {\n function XRefParseException(msg) {\n this.message = msg;\n }\n\n XRefParseException.prototype = new Error();\n XRefParseException.prototype.name = 'XRefParseException';\n XRefParseException.constructor = XRefParseException;\n\n return XRefParseException;\n})();\n\n/**\n * Error caused during parsing PDF data.\n */\nlet FormatError = (function FormatErrorClosure() {\n function FormatError(msg) {\n this.message = msg;\n }\n\n FormatError.prototype = new Error();\n FormatError.prototype.name = 'FormatError';\n FormatError.constructor = FormatError;\n\n return FormatError;\n})();\n\n/**\n * Error used to indicate task cancellation.\n */\nlet AbortException = (function AbortExceptionClosure() {\n function AbortException(msg) {\n this.name = 'AbortException';\n this.message = msg;\n }\n\n AbortException.prototype = new Error();\n AbortException.constructor = AbortException;\n\n return AbortException;\n})();\n\nvar NullCharactersRegExp = /\\x00/g;\n\nfunction removeNullCharacters(str) {\n if (typeof str !== 'string') {\n warn('The argument for removeNullCharacters must be a string.');\n return str;\n }\n return str.replace(NullCharactersRegExp, '');\n}\n\nfunction bytesToString(bytes) {\n assert(bytes !== null && typeof bytes === 'object' &&\n 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\nfunction 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\n/**\n * Gets length of the array (Array, Uint8Array, or string) in bytes.\n * @param {Array|Uint8Array|string} arr\n * @returns {number}\n */\nfunction arrayByteLength(arr) {\n if (arr.length !== undefined) {\n return arr.length;\n }\n assert(arr.byteLength !== undefined);\n return arr.byteLength;\n}\n\n/**\n * Combines array items (arrays) into single Uint8Array object.\n * @param {Array} arr - the array of the arrays (Array, Uint8Array, or string).\n * @returns {Uint8Array}\n */\nfunction arraysToBytes(arr) {\n // Shortcut: if first and only item is Uint8Array, return it.\n if (arr.length === 1 && (arr[0] instanceof Uint8Array)) {\n return arr[0];\n }\n var resultLength = 0;\n var i, ii = arr.length;\n var item, itemLength;\n for (i = 0; i < ii; i++) {\n item = arr[i];\n itemLength = arrayByteLength(item);\n resultLength += itemLength;\n }\n var pos = 0;\n var data = new Uint8Array(resultLength);\n for (i = 0; i < ii; i++) {\n 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 itemLength = item.byteLength;\n data.set(item, pos);\n pos += itemLength;\n }\n return data;\n}\n\nfunction string32(value) {\n return String.fromCharCode((value >> 24) & 0xff, (value >> 16) & 0xff,\n (value >> 8) & 0xff, value & 0xff);\n}\n\n// Calculate the base 2 logarithm of the number `x`. This differs from the\n// native function in the sense that it returns the ceiling value and that it\n// returns 0 instead of `Infinity`/`NaN` for `x` values smaller than/equal to 0.\nfunction log2(x) {\n if (x <= 0) {\n return 0;\n }\n return Math.ceil(Math.log2(x));\n}\n\nfunction readInt8(data, start) {\n return (data[start] << 24) >> 24;\n}\n\nfunction readUint16(data, offset) {\n return (data[offset] << 8) | data[offset + 1];\n}\n\nfunction readUint32(data, offset) {\n return ((data[offset] << 24) | (data[offset + 1] << 16) |\n (data[offset + 2] << 8) | data[offset + 3]) >>> 0;\n}\n\n// Lazy test the endianness of the platform\n// NOTE: This will be 'true' for simulated TypedArrays\nfunction isLittleEndian() {\n var buffer8 = new Uint8Array(4);\n buffer8[0] = 1;\n var view32 = new Uint32Array(buffer8.buffer, 0, 1);\n return (view32[0] === 1);\n}\n\n// Checks if it's possible to eval JS expressions.\nfunction isEvalSupported() {\n try {\n new Function(''); // eslint-disable-line no-new, no-new-func\n return true;\n } catch (e) {\n return false;\n }\n}\n\n/**\n * Get the value of an inheritable property.\n *\n * If the PDF specification explicitly lists a property in a dictionary as\n * inheritable, then the value of the property may be present in the dictionary\n * itself or in one or more parents of the dictionary.\n *\n * If the key is not found in the tree, `undefined` is returned. Otherwise,\n * the value for the key is returned or, if `stopWhenFound` is `false`, a list\n * of values is returned. To avoid infinite loops, the traversal is stopped when\n * the loop limit is reached.\n *\n * @param {Dict} dict - Dictionary from where to start the traversal.\n * @param {string} key - The key of the property to find the value for.\n * @param {boolean} getArray - Whether or not the value should be fetched as an\n * array. The default value is `false`.\n * @param {boolean} stopWhenFound - Whether or not to stop the traversal when\n * the key is found. If set to `false`, we always walk up the entire parent\n * chain, for example to be able to find `\\Resources` placed on multiple\n * levels of the tree. The default value is `true`.\n */\nfunction getInheritableProperty({ dict, key, getArray = false,\n stopWhenFound = true, }) {\n const LOOP_LIMIT = 100;\n let loopCount = 0;\n let values;\n\n while (dict) {\n const value = getArray ? dict.getArray(key) : dict.get(key);\n if (value !== undefined) {\n if (stopWhenFound) {\n return value;\n }\n if (!values) {\n values = [];\n }\n values.push(value);\n }\n if (++loopCount > LOOP_LIMIT) {\n warn(`getInheritableProperty: maximum loop count exceeded for \"${key}\"`);\n break;\n }\n dict = dict.get('Parent');\n }\n return values;\n}\n\nvar IDENTITY_MATRIX = [1, 0, 0, 1, 0, 0];\n\nvar Util = (function UtilClosure() {\n function Util() {}\n\n var rgbBuf = ['rgb(', 0, ',', 0, ',', 0, ')'];\n\n // makeCssRgb() can be called thousands of times. Using |rgbBuf| avoids\n // creating many intermediate strings.\n Util.makeCssRgb = function Util_makeCssRgb(r, g, b) {\n rgbBuf[1] = r;\n rgbBuf[3] = g;\n rgbBuf[5] = b;\n return rgbBuf.join('');\n };\n\n // Concatenates two transformation matrices together and returns the result.\n Util.transform = function Util_transform(m1, m2) {\n return [\n m1[0] * m2[0] + m1[2] * m2[1],\n m1[1] * m2[0] + m1[3] * m2[1],\n m1[0] * m2[2] + m1[2] * m2[3],\n m1[1] * m2[2] + m1[3] * m2[3],\n m1[0] * m2[4] + m1[2] * m2[5] + m1[4],\n m1[1] * m2[4] + m1[3] * m2[5] + m1[5]\n ];\n };\n\n // For 2d affine transforms\n Util.applyTransform = function Util_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 Util.applyInverseTransform = function Util_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 // Applies the transform to the rectangle and finds the minimum axially\n // aligned bounding box.\n Util.getAxialAlignedBoundingBox =\n function Util_getAxialAlignedBoundingBox(r, m) {\n\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 [\n Math.min(p1[0], p2[0], p3[0], p4[0]),\n Math.min(p1[1], p2[1], p3[1], p4[1]),\n Math.max(p1[0], p2[0], p3[0], p4[0]),\n Math.max(p1[1], p2[1], p3[1], p4[1])\n ];\n };\n\n Util.inverseTransform = function Util_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,\n (m[2] * m[5] - m[4] * m[3]) / d, (m[4] * m[1] - m[5] * m[0]) / d];\n };\n\n // Apply a generic 3d matrix M on a 3-vector v:\n // | a b c | | X |\n // | d e f | x | Y |\n // | g h i | | Z |\n // M is assumed to be serialized as [a,b,c,d,e,f,g,h,i],\n // with v as [X,Y,Z]\n Util.apply3dTransform = function Util_apply3dTransform(m, v) {\n return [\n m[0] * v[0] + m[1] * v[1] + m[2] * v[2],\n m[3] * v[0] + m[4] * v[1] + m[5] * v[2],\n m[6] * v[0] + m[7] * v[1] + m[8] * v[2]\n ];\n };\n\n // This calculation uses Singular Value Decomposition.\n // The SVD can be represented with formula A = USV. We are interested in the\n // matrix S here because it represents the scale values.\n Util.singularValueDecompose2dScale =\n function Util_singularValueDecompose2dScale(m) {\n\n var transpose = [m[0], m[2], m[1], m[3]];\n\n // Multiply matrix m with its transpose.\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\n // Solve the second degree polynomial to get roots.\n var first = (a + d) / 2;\n var second = Math.sqrt((a + d) * (a + d) - 4 * (a * d - c * b)) / 2;\n var sx = first + second || 1;\n var sy = first - second || 1;\n\n // Scale values are the square roots of the eigenvalues.\n return [Math.sqrt(sx), Math.sqrt(sy)];\n };\n\n // Normalize rectangle rect=[x1, y1, x2, y2] so that (x1,y1) < (x2,y2)\n // For coordinate systems whose origin lies in the bottom-left, this\n // means normalization to (BL,TR) ordering. For systems with origin in the\n // top-left, this means (TL,BR) ordering.\n Util.normalizeRect = function Util_normalizeRect(rect) {\n var r = rect.slice(0); // clone rect\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 // Returns a rectangle [x1, y1, x2, y2] corresponding to the\n // intersection of rect1 and rect2. If no intersection, returns 'false'\n // The rectangle coordinates of rect1, rect2 should be [x1, y1, x2, y2]\n Util.intersect = function Util_intersect(rect1, rect2) {\n function compare(a, b) {\n return a - b;\n }\n\n // Order points along the axes\n var orderedX = [rect1[0], rect1[2], rect2[0], rect2[2]].sort(compare),\n orderedY = [rect1[1], rect1[3], rect2[1], rect2[3]].sort(compare),\n result = [];\n\n rect1 = Util.normalizeRect(rect1);\n rect2 = Util.normalizeRect(rect2);\n\n // X: first and second points belong to different rectangles?\n if ((orderedX[0] === rect1[0] && orderedX[1] === rect2[0]) ||\n (orderedX[0] === rect2[0] && orderedX[1] === rect1[0])) {\n // Intersection must be between second and third points\n result[0] = orderedX[1];\n result[2] = orderedX[2];\n } else {\n return false;\n }\n\n // Y: first and second points belong to different rectangles?\n if ((orderedY[0] === rect1[1] && orderedY[1] === rect2[1]) ||\n (orderedY[0] === rect2[1] && orderedY[1] === rect1[1])) {\n // Intersection must be between second and third points\n result[1] = orderedY[1];\n result[3] = orderedY[2];\n } else {\n return false;\n }\n\n return result;\n };\n\n var ROMAN_NUMBER_MAP = [\n '', 'C', 'CC', 'CCC', 'CD', 'D', 'DC', 'DCC', 'DCCC', 'CM',\n '', 'X', 'XX', 'XXX', 'XL', 'L', 'LX', 'LXX', 'LXXX', 'XC',\n '', 'I', 'II', 'III', 'IV', 'V', 'VI', 'VII', 'VIII', 'IX'\n ];\n /**\n * Converts positive integers to (upper case) Roman numerals.\n * @param {integer} number - The number that should be converted.\n * @param {boolean} lowerCase - Indicates if the result should be converted\n * to lower case letters. The default is false.\n * @return {string} The resulting Roman number.\n */\n Util.toRoman = function Util_toRoman(number, lowerCase) {\n assert(Number.isInteger(number) && number > 0,\n 'The number should be a positive integer.');\n var pos, romanBuf = [];\n // Thousands\n while (number >= 1000) {\n number -= 1000;\n romanBuf.push('M');\n }\n // Hundreds\n pos = (number / 100) | 0;\n number %= 100;\n romanBuf.push(ROMAN_NUMBER_MAP[pos]);\n // Tens\n pos = (number / 10) | 0;\n number %= 10;\n romanBuf.push(ROMAN_NUMBER_MAP[10 + pos]);\n // Ones\n romanBuf.push(ROMAN_NUMBER_MAP[20 + number]);\n\n var romanStr = romanBuf.join('');\n return (lowerCase ? romanStr.toLowerCase() : romanStr);\n };\n\n Util.appendToArray = function Util_appendToArray(arr1, arr2) {\n Array.prototype.push.apply(arr1, arr2);\n };\n\n Util.prependToArray = function Util_prependToArray(arr1, arr2) {\n Array.prototype.unshift.apply(arr1, arr2);\n };\n\n Util.extendObj = function extendObj(obj1, obj2) {\n for (var key in obj2) {\n obj1[key] = obj2[key];\n }\n };\n\n Util.inherit = function Util_inherit(sub, base, prototype) {\n sub.prototype = Object.create(base.prototype);\n sub.prototype.constructor = sub;\n for (var prop in prototype) {\n sub.prototype[prop] = prototype[prop];\n }\n };\n\n Util.loadScript = function Util_loadScript(src, callback) {\n var script = document.createElement('script');\n var loaded = false;\n script.setAttribute('src', src);\n if (callback) {\n script.onload = function() {\n if (!loaded) {\n callback();\n }\n loaded = true;\n };\n }\n document.getElementsByTagName('head')[0].appendChild(script);\n };\n\n return Util;\n})();\n\nvar PDFStringTranslateTable = [\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0x2D8, 0x2C7, 0x2C6, 0x2D9, 0x2DD, 0x2DB, 0x2DA, 0x2DC, 0, 0, 0, 0, 0, 0, 0,\n 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,\n 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,\n 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,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014,\n 0x2013, 0x192, 0x2044, 0x2039, 0x203A, 0x2212, 0x2030, 0x201E, 0x201C,\n 0x201D, 0x2018, 0x2019, 0x201A, 0x2122, 0xFB01, 0xFB02, 0x141, 0x152, 0x160,\n 0x178, 0x17D, 0x131, 0x142, 0x153, 0x161, 0x17E, 0, 0x20AC\n];\n\nfunction stringToPDFString(str) {\n var i, n = str.length, strBuf = [];\n if (str[0] === '\\xFE' && str[1] === '\\xFF') {\n // UTF16BE BOM\n for (i = 2; i < n; i += 2) {\n strBuf.push(String.fromCharCode(\n (str.charCodeAt(i) << 8) | str.charCodeAt(i + 1)));\n }\n } else {\n for (i = 0; i < n; ++i) {\n var code = PDFStringTranslateTable[str.charCodeAt(i)];\n strBuf.push(code ? String.fromCharCode(code) : str.charAt(i));\n }\n }\n return strBuf.join('');\n}\n\nfunction stringToUTF8String(str) {\n return decodeURIComponent(escape(str));\n}\n\nfunction utf8StringToString(str) {\n return unescape(encodeURIComponent(str));\n}\n\nfunction isEmptyObj(obj) {\n for (var key in obj) {\n return false;\n }\n return true;\n}\n\nfunction isBool(v) {\n return typeof v === 'boolean';\n}\n\nfunction isNum(v) {\n return typeof v === 'number';\n}\n\nfunction isString(v) {\n return typeof v === 'string';\n}\n\nfunction isArrayBuffer(v) {\n return typeof v === 'object' && v !== null && v.byteLength !== undefined;\n}\n\n// Checks if ch is one of the following characters: SPACE, TAB, CR or LF.\nfunction isSpace(ch) {\n return (ch === 0x20 || ch === 0x09 || ch === 0x0D || ch === 0x0A);\n}\n\n/**\n * Promise Capability object.\n *\n * @typedef {Object} PromiseCapability\n * @property {Promise} promise - A promise object.\n * @property {function} resolve - Fulfills the promise.\n * @property {function} reject - Rejects the promise.\n */\n\n/**\n * Creates a promise capability object.\n * @alias createPromiseCapability\n *\n * @return {PromiseCapability} A capability object contains:\n * - a Promise, resolve and reject methods.\n */\nfunction createPromiseCapability() {\n var capability = {};\n capability.promise = new Promise(function (resolve, reject) {\n capability.resolve = resolve;\n capability.reject = reject;\n });\n return capability;\n}\n\nvar createBlob = function createBlob(data, contentType) {\n if (typeof Blob !== 'undefined') {\n return new Blob([data], { type: contentType, });\n }\n throw new Error('The \"Blob\" constructor is not supported.');\n};\n\nvar createObjectURL = (function createObjectURLClosure() {\n // Blob/createObjectURL is not available, falling back to data schema.\n var digits =\n 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\n return function createObjectURL(data, contentType, forceDataSchema = false) {\n if (!forceDataSchema && URL.createObjectURL) {\n var blob = createBlob(data, contentType);\n return URL.createObjectURL(blob);\n }\n\n var buffer = 'data:' + 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, 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\nexport {\n FONT_IDENTITY_MATRIX,\n IDENTITY_MATRIX,\n OPS,\n VerbosityLevel,\n UNSUPPORTED_FEATURES,\n AnnotationBorderStyleType,\n AnnotationFieldFlag,\n AnnotationFlag,\n AnnotationType,\n FontType,\n ImageKind,\n CMapCompressionType,\n AbortException,\n InvalidPDFException,\n MissingDataException,\n MissingPDFException,\n NativeImageDecoding,\n NotImplementedException,\n PasswordException,\n PasswordResponses,\n StreamType,\n TextRenderingMode,\n UnexpectedResponseException,\n UnknownErrorException,\n Util,\n XRefParseException,\n FormatError,\n arrayByteLength,\n arraysToBytes,\n assert,\n bytesToString,\n createBlob,\n createPromiseCapability,\n createObjectURL,\n deprecated,\n getInheritableProperty,\n getLookupTableFactory,\n getVerbosityLevel,\n info,\n isArrayBuffer,\n isBool,\n isEmptyObj,\n isNum,\n isString,\n isSpace,\n isSameOrigin,\n createValidAbsoluteUrl,\n isLittleEndian,\n isEvalSupported,\n log2,\n readInt8,\n readUint16,\n readUint32,\n removeNullCharacters,\n ReadableStream,\n setVerbosityLevel,\n shadow,\n string32,\n stringToBytes,\n stringToPDFString,\n stringToUTF8String,\n utf8StringToString,\n warn,\n unreachable,\n};\n","/* Copyright 2017 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/* eslint-disable mozilla/use-includes-instead-of-indexOf */\n\nconst globalScope = require('./global_scope');\n\n// Skip compatibility checks for the extensions and if we already ran\n// this module.\nif ((typeof PDFJSDev === 'undefined' ||\n !PDFJSDev.test('FIREFOX || MOZCENTRAL')) &&\n !globalScope._pdfjsCompatibilityChecked) {\n\nglobalScope._pdfjsCompatibilityChecked = true;\n\n// In the Chrome extension, most of the polyfills are unnecessary.\n// We support down to Chrome 49, because it's still commonly used by Windows XP\n// users - https://github.com/mozilla/pdf.js/issues/9397\nif (typeof PDFJSDev === 'undefined' || !PDFJSDev.test('CHROME')) {\n\nconst isNodeJS = require('./is_node');\n\nconst hasDOM = typeof window === 'object' && typeof document === 'object';\n\n// Support: Node.js\n(function checkNodeBtoa() {\n if (globalScope.btoa || !isNodeJS()) {\n return;\n }\n globalScope.btoa = function(chars) {\n // eslint-disable-next-line no-undef\n return Buffer.from(chars, 'binary').toString('base64');\n };\n})();\n\n// Support: Node.js\n(function checkNodeAtob() {\n if (globalScope.atob || !isNodeJS()) {\n return;\n }\n globalScope.atob = function(input) {\n // eslint-disable-next-line no-undef\n return Buffer.from(input, 'base64').toString('binary');\n };\n})();\n\n// Provides document.currentScript support\n// Support: IE, Chrome<29.\n(function checkCurrentScript() {\n if (!hasDOM) {\n return;\n }\n if ('currentScript' in document) {\n return;\n }\n Object.defineProperty(document, 'currentScript', {\n get() {\n var scripts = document.getElementsByTagName('script');\n return scripts[scripts.length - 1];\n },\n enumerable: true,\n configurable: true,\n });\n})();\n\n// Provides support for ChildNode.remove in legacy browsers.\n// Support: IE.\n(function checkChildNodeRemove() {\n if (!hasDOM) {\n return;\n }\n if (typeof Element.prototype.remove !== 'undefined') {\n return;\n }\n Element.prototype.remove = function () {\n if (this.parentNode) {\n // eslint-disable-next-line mozilla/avoid-removeChild\n this.parentNode.removeChild(this);\n }\n };\n})();\n\n// Provides support for String.prototype.includes in legacy browsers.\n// Support: IE, Chrome<41\n(function checkStringIncludes() {\n if (String.prototype.includes) {\n return;\n }\n require('core-js/fn/string/includes');\n})();\n\n// Provides support for Array.prototype.includes in legacy browsers.\n// Support: IE, Chrome<47\n(function checkArrayIncludes() {\n if (Array.prototype.includes) {\n return;\n }\n require('core-js/fn/array/includes');\n})();\n\n// Provides support for Math.log2 in legacy browsers.\n// Support: IE, Chrome<38\n(function checkMathLog2() {\n if (Math.log2) {\n return;\n }\n Math.log2 = require('core-js/fn/math/log2');\n})();\n\n// Provides support for Number.isNaN in legacy browsers.\n// Support: IE.\n(function checkNumberIsNaN() {\n if (Number.isNaN) {\n return;\n }\n Number.isNaN = require('core-js/fn/number/is-nan');\n})();\n\n// Provides support for Number.isInteger in legacy browsers.\n// Support: IE, Chrome<34\n(function checkNumberIsInteger() {\n if (Number.isInteger) {\n return;\n }\n Number.isInteger = require('core-js/fn/number/is-integer');\n})();\n\n// Support: IE, Safari<8, Chrome<32\n(function checkPromise() {\n if (globalScope.Promise) {\n return;\n }\n globalScope.Promise = require('core-js/fn/promise');\n})();\n\n// Support: IE<11, Safari<8, Chrome<36\n(function checkWeakMap() {\n if (globalScope.WeakMap) {\n return;\n }\n globalScope.WeakMap = require('core-js/fn/weak-map');\n})();\n\n// Support: IE, Chrome<32\n// Polyfill from https://github.com/Polymer/URL\n/* Any copyright is dedicated to the Public Domain.\n * http://creativecommons.org/publicdomain/zero/1.0/ */\n(function checkURLConstructor() {\n // feature detect for URL constructor\n var hasWorkingUrl = false;\n try {\n if (typeof URL === 'function' &&\n typeof URL.prototype === 'object' &&\n ('origin' in URL.prototype)) {\n var u = new URL('b', 'http://a');\n u.pathname = 'c%20d';\n hasWorkingUrl = u.href === 'http://a/c%20d';\n }\n } catch (e) { }\n\n if (hasWorkingUrl) {\n return;\n }\n\n var relative = Object.create(null);\n relative['ftp'] = 21;\n relative['file'] = 0;\n relative['gopher'] = 70;\n relative['http'] = 80;\n relative['https'] = 443;\n relative['ws'] = 80;\n relative['wss'] = 443;\n\n var relativePathDotMapping = Object.create(null);\n relativePathDotMapping['%2e'] = '.';\n relativePathDotMapping['.%2e'] = '..';\n relativePathDotMapping['%2e.'] = '..';\n relativePathDotMapping['%2e%2e'] = '..';\n\n function isRelativeScheme(scheme) {\n return relative[scheme] !== undefined;\n }\n\n function invalid() {\n clear.call(this);\n this._isInvalid = true;\n }\n\n function IDNAToASCII(h) {\n if (h === '') {\n invalid.call(this);\n }\n // XXX\n return h.toLowerCase();\n }\n\n function percentEscape(c) {\n var unicode = c.charCodeAt(0);\n if (unicode > 0x20 &&\n unicode < 0x7F &&\n // \" # < > ? `\n [0x22, 0x23, 0x3C, 0x3E, 0x3F, 0x60].indexOf(unicode) === -1\n ) {\n return c;\n }\n return encodeURIComponent(c);\n }\n\n function percentEscapeQuery(c) {\n // XXX This actually needs to encode c using encoding and then\n // convert the bytes one-by-one.\n\n var unicode = c.charCodeAt(0);\n if (unicode > 0x20 &&\n unicode < 0x7F &&\n // \" # < > ` (do not escape '?')\n [0x22, 0x23, 0x3C, 0x3E, 0x60].indexOf(unicode) === -1\n ) {\n return c;\n }\n return encodeURIComponent(c);\n }\n\n var EOF, ALPHA = /[a-zA-Z]/,\n ALPHANUMERIC = /[a-zA-Z0-9\\+\\-\\.]/;\n\n function parse(input, stateOverride, base) {\n function err(message) {\n errors.push(message);\n }\n\n var state = stateOverride || 'scheme start',\n cursor = 0,\n buffer = '',\n seenAt = false,\n seenBracket = false,\n errors = [];\n\n loop: while ((input[cursor - 1] !== EOF || cursor === 0) &&\n !this._isInvalid) {\n var c = input[cursor];\n switch (state) {\n case 'scheme start':\n if (c && ALPHA.test(c)) {\n buffer += c.toLowerCase(); // ASCII-safe\n state = 'scheme';\n } else if (!stateOverride) {\n buffer = '';\n state = 'no scheme';\n continue;\n } else {\n err('Invalid scheme.');\n break loop;\n }\n break;\n\n case 'scheme':\n if (c && ALPHANUMERIC.test(c)) {\n buffer += c.toLowerCase(); // ASCII-safe\n } else if (c === ':') {\n this._scheme = buffer;\n buffer = '';\n if (stateOverride) {\n break loop;\n }\n if (isRelativeScheme(this._scheme)) {\n this._isRelative = true;\n }\n if (this._scheme === 'file') {\n state = 'relative';\n } else if (this._isRelative && base &&\n base._scheme === this._scheme) {\n state = 'relative or authority';\n } else if (this._isRelative) {\n state = 'authority first slash';\n } else {\n state = 'scheme data';\n }\n } else if (!stateOverride) {\n buffer = '';\n cursor = 0;\n state = 'no scheme';\n continue;\n } else if (c === EOF) {\n break loop;\n } else {\n err('Code point not allowed in scheme: ' + c);\n break loop;\n }\n break;\n\n case 'scheme data':\n if (c === '?') {\n this._query = '?';\n state = 'query';\n } else if (c === '#') {\n this._fragment = '#';\n state = 'fragment';\n } else {\n // XXX error handling\n if (c !== EOF && c !== '\\t' && c !== '\\n' && c !== '\\r') {\n this._schemeData += percentEscape(c);\n }\n }\n break;\n\n case 'no scheme':\n if (!base || !(isRelativeScheme(base._scheme))) {\n err('Missing scheme.');\n invalid.call(this);\n } else {\n state = 'relative';\n continue;\n }\n break;\n\n case 'relative or authority':\n if (c === '/' && input[cursor + 1] === '/') {\n state = 'authority ignore slashes';\n } else {\n err('Expected /, got: ' + c);\n state = 'relative';\n continue;\n }\n break;\n\n case 'relative':\n this._isRelative = true;\n if (this._scheme !== 'file') {\n this._scheme = base._scheme;\n }\n if (c === EOF) {\n this._host = base._host;\n this._port = base._port;\n this._path = base._path.slice();\n this._query = base._query;\n this._username = base._username;\n this._password = base._password;\n break loop;\n } else if (c === '/' || c === '\\\\') {\n if (c === '\\\\') {\n err('\\\\ is an invalid code point.');\n }\n state = 'relative slash';\n } else if (c === '?') {\n this._host = base._host;\n this._port = base._port;\n this._path = base._path.slice();\n this._query = '?';\n this._username = base._username;\n this._password = base._password;\n state = 'query';\n } else if (c === '#') {\n this._host = base._host;\n this._port = base._port;\n this._path = base._path.slice();\n this._query = base._query;\n this._fragment = '#';\n this._username = base._username;\n this._password = base._password;\n state = 'fragment';\n } else {\n var nextC = input[cursor + 1];\n var nextNextC = input[cursor + 2];\n if (this._scheme !== 'file' || !ALPHA.test(c) ||\n (nextC !== ':' && nextC !== '|') ||\n (nextNextC !== EOF && nextNextC !== '/' && nextNextC !== '\\\\' &&\n nextNextC !== '?' && nextNextC !== '#')) {\n this._host = base._host;\n this._port = base._port;\n this._username = base._username;\n this._password = base._password;\n this._path = base._path.slice();\n this._path.pop();\n }\n state = 'relative path';\n continue;\n }\n break;\n\n case 'relative slash':\n if (c === '/' || c === '\\\\') {\n if (c === '\\\\') {\n err('\\\\ is an invalid code point.');\n }\n if (this._scheme === 'file') {\n state = 'file host';\n } else {\n state = 'authority ignore slashes';\n }\n } else {\n if (this._scheme !== 'file') {\n this._host = base._host;\n this._port = base._port;\n this._username = base._username;\n this._password = base._password;\n }\n state = 'relative path';\n continue;\n }\n break;\n\n case 'authority first slash':\n if (c === '/') {\n state = 'authority second slash';\n } else {\n err('Expected \\'/\\', got: ' + c);\n state = 'authority ignore slashes';\n continue;\n }\n break;\n\n case 'authority second slash':\n state = 'authority ignore slashes';\n if (c !== '/') {\n err('Expected \\'/\\', got: ' + c);\n continue;\n }\n break;\n\n case 'authority ignore slashes':\n if (c !== '/' && c !== '\\\\') {\n state = 'authority';\n continue;\n } else {\n err('Expected authority, got: ' + c);\n }\n break;\n\n case 'authority':\n if (c === '@') {\n if (seenAt) {\n err('@ already seen.');\n buffer += '%40';\n }\n seenAt = true;\n for (var i = 0; i < buffer.length; i++) {\n var cp = buffer[i];\n if (cp === '\\t' || cp === '\\n' || cp === '\\r') {\n err('Invalid whitespace in authority.');\n continue;\n }\n // XXX check URL code points\n if (cp === ':' && this._password === null) {\n this._password = '';\n continue;\n }\n var tempC = percentEscape(cp);\n if (this._password !== null) {\n this._password += tempC;\n } else {\n this._username += tempC;\n }\n }\n buffer = '';\n } else if (c === EOF || c === '/' || c === '\\\\' ||\n c === '?' || c === '#') {\n cursor -= buffer.length;\n buffer = '';\n state = 'host';\n continue;\n } else {\n buffer += c;\n }\n break;\n\n case 'file host':\n if (c === EOF || c === '/' || c === '\\\\' || c === '?' || c === '#') {\n if (buffer.length === 2 && ALPHA.test(buffer[0]) &&\n (buffer[1] === ':' || buffer[1] === '|')) {\n state = 'relative path';\n } else if (buffer.length === 0) {\n state = 'relative path start';\n } else {\n this._host = IDNAToASCII.call(this, buffer);\n buffer = '';\n state = 'relative path start';\n }\n continue;\n } else if (c === '\\t' || c === '\\n' || c === '\\r') {\n err('Invalid whitespace in file host.');\n } else {\n buffer += c;\n }\n break;\n\n case 'host':\n case 'hostname':\n if (c === ':' && !seenBracket) {\n // XXX host parsing\n this._host = IDNAToASCII.call(this, buffer);\n buffer = '';\n state = 'port';\n if (stateOverride === 'hostname') {\n break loop;\n }\n } else if (c === EOF || c === '/' ||\n c === '\\\\' || c === '?' || c === '#') {\n this._host = IDNAToASCII.call(this, buffer);\n buffer = '';\n state = 'relative path start';\n if (stateOverride) {\n break loop;\n }\n continue;\n } else if (c !== '\\t' && c !== '\\n' && c !== '\\r') {\n if (c === '[') {\n seenBracket = true;\n } else if (c === ']') {\n seenBracket = false;\n }\n buffer += c;\n } else {\n err('Invalid code point in host/hostname: ' + c);\n }\n break;\n\n case 'port':\n if (/[0-9]/.test(c)) {\n buffer += c;\n } else if (c === EOF || c === '/' || c === '\\\\' ||\n c === '?' || c === '#' || stateOverride) {\n if (buffer !== '') {\n var temp = parseInt(buffer, 10);\n if (temp !== relative[this._scheme]) {\n this._port = temp + '';\n }\n buffer = '';\n }\n if (stateOverride) {\n break loop;\n }\n state = 'relative path start';\n continue;\n } else if (c === '\\t' || c === '\\n' || c === '\\r') {\n err('Invalid code point in port: ' + c);\n } else {\n invalid.call(this);\n }\n break;\n\n case 'relative path start':\n if (c === '\\\\') {\n err('\\'\\\\\\' not allowed in path.');\n }\n state = 'relative path';\n if (c !== '/' && c !== '\\\\') {\n continue;\n }\n break;\n\n case 'relative path':\n if (c === EOF || c === '/' || c === '\\\\' ||\n (!stateOverride && (c === '?' || c === '#'))) {\n if (c === '\\\\') {\n err('\\\\ not allowed in relative path.');\n }\n var tmp;\n if ((tmp = relativePathDotMapping[buffer.toLowerCase()])) {\n buffer = tmp;\n }\n if (buffer === '..') {\n this._path.pop();\n if (c !== '/' && c !== '\\\\') {\n this._path.push('');\n }\n } else if (buffer === '.' && c !== '/' && c !== '\\\\') {\n this._path.push('');\n } else if (buffer !== '.') {\n if (this._scheme === 'file' && this._path.length === 0 &&\n buffer.length === 2 && ALPHA.test(buffer[0]) &&\n buffer[1] === '|') {\n buffer = buffer[0] + ':';\n }\n this._path.push(buffer);\n }\n buffer = '';\n if (c === '?') {\n this._query = '?';\n state = 'query';\n } else if (c === '#') {\n this._fragment = '#';\n state = 'fragment';\n }\n } else if (c !== '\\t' && c !== '\\n' && c !== '\\r') {\n buffer += percentEscape(c);\n }\n break;\n\n case 'query':\n if (!stateOverride && c === '#') {\n this._fragment = '#';\n state = 'fragment';\n } else if (c !== EOF && c !== '\\t' && c !== '\\n' && c !== '\\r') {\n this._query += percentEscapeQuery(c);\n }\n break;\n\n case 'fragment':\n if (c !== EOF && c !== '\\t' && c !== '\\n' && c !== '\\r') {\n this._fragment += c;\n }\n break;\n }\n\n cursor++;\n }\n }\n\n function clear() {\n this._scheme = '';\n this._schemeData = '';\n this._username = '';\n this._password = null;\n this._host = '';\n this._port = '';\n this._path = [];\n this._query = '';\n this._fragment = '';\n this._isInvalid = false;\n this._isRelative = false;\n }\n\n // Does not process domain names or IP addresses.\n // Does not handle encoding for the query parameter.\n function JURL(url, base /* , encoding */) {\n if (base !== undefined && !(base instanceof JURL)) {\n base = new JURL(String(base));\n }\n\n this._url = url;\n clear.call(this);\n\n var input = url.replace(/^[ \\t\\r\\n\\f]+|[ \\t\\r\\n\\f]+$/g, '');\n // encoding = encoding || 'utf-8'\n\n parse.call(this, input, null, base);\n }\n\n JURL.prototype = {\n toString() {\n return this.href;\n },\n get href() {\n if (this._isInvalid) {\n return this._url;\n }\n var authority = '';\n if (this._username !== '' || this._password !== null) {\n authority = this._username +\n (this._password !== null ? ':' + this._password : '') + '@';\n }\n\n return this.protocol +\n (this._isRelative ? '//' + authority + this.host : '') +\n this.pathname + this._query + this._fragment;\n },\n // The named parameter should be different from the setter's function name.\n // Otherwise Safari 5 will throw an error (see issue 8541)\n set href(value) {\n clear.call(this);\n parse.call(this, value);\n },\n\n get protocol() {\n return this._scheme + ':';\n },\n set protocol(value) {\n if (this._isInvalid) {\n return;\n }\n parse.call(this, value + ':', 'scheme start');\n },\n\n get host() {\n return this._isInvalid ? '' : this._port ?\n this._host + ':' + this._port : this._host;\n },\n set host(value) {\n if (this._isInvalid || !this._isRelative) {\n return;\n }\n parse.call(this, value, 'host');\n },\n\n get hostname() {\n return this._host;\n },\n set hostname(value) {\n if (this._isInvalid || !this._isRelative) {\n return;\n }\n parse.call(this, value, 'hostname');\n },\n\n get port() {\n return this._port;\n },\n set port(value) {\n if (this._isInvalid || !this._isRelative) {\n return;\n }\n parse.call(this, value, 'port');\n },\n\n get pathname() {\n return this._isInvalid ? '' : this._isRelative ?\n '/' + this._path.join('/') : this._schemeData;\n },\n set pathname(value) {\n if (this._isInvalid || !this._isRelative) {\n return;\n }\n this._path = [];\n parse.call(this, value, 'relative path start');\n },\n\n get search() {\n return this._isInvalid || !this._query || this._query === '?' ?\n '' : this._query;\n },\n set search(value) {\n if (this._isInvalid || !this._isRelative) {\n return;\n }\n this._query = '?';\n if (value[0] === '?') {\n value = value.slice(1);\n }\n parse.call(this, value, 'query');\n },\n\n get hash() {\n return this._isInvalid || !this._fragment || this._fragment === '#' ?\n '' : this._fragment;\n },\n set hash(value) {\n if (this._isInvalid) {\n return;\n }\n this._fragment = '#';\n if (value[0] === '#') {\n value = value.slice(1);\n }\n parse.call(this, value, 'fragment');\n },\n\n get origin() {\n var host;\n if (this._isInvalid || !this._scheme) {\n return '';\n }\n // javascript: Gecko returns String(\"\"), WebKit/Blink String(\"null\")\n // Gecko throws error for \"data://\"\n // data: Gecko returns \"\", Blink returns \"data://\", WebKit returns \"null\"\n // Gecko returns String(\"\") for file: mailto:\n // WebKit/Blink returns String(\"SCHEME://\") for file: mailto:\n switch (this._scheme) {\n case 'data':\n case 'file':\n case 'javascript':\n case 'mailto':\n return 'null';\n case 'blob':\n // Special case of blob: -- returns valid origin of _schemeData.\n try {\n return new JURL(this._schemeData).origin || 'null';\n } catch (_) {\n // Invalid _schemeData origin -- ignoring errors.\n }\n return 'null';\n }\n host = this.host;\n if (!host) {\n return '';\n }\n return this._scheme + '://' + host;\n },\n };\n\n // Copy over the static methods\n var OriginalURL = globalScope.URL;\n if (OriginalURL) {\n JURL.createObjectURL = function(blob) {\n // IE extension allows a second optional options argument.\n // http://msdn.microsoft.com/en-us/library/ie/hh772302(v=vs.85).aspx\n return OriginalURL.createObjectURL.apply(OriginalURL, arguments);\n };\n JURL.revokeObjectURL = function(url) {\n OriginalURL.revokeObjectURL(url);\n };\n }\n\n globalScope.URL = JURL;\n})();\n\n} // End of !PDFJSDev.test('CHROME')\n\n// Provides support for Object.values in legacy browsers.\n// Support: IE, Chrome<54\n(function checkObjectValues() {\n if (Object.values) {\n return;\n }\n Object.values = require('core-js/fn/object/values');\n})();\n\n}\n","/* Copyright 2017 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/* globals module */\n\nmodule.exports =\n (typeof window !== 'undefined' && window.Math === Math) ? window :\n // eslint-disable-next-line no-undef\n (typeof global !== 'undefined' && global.Math === Math) ? global :\n (typeof self !== 'undefined' && self.Math === Math) ? self : {};\n","/* Copyright 2018 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/* globals module, process */\n\nmodule.exports = function isNodeJS() {\n return typeof process === 'object' && process + '' === '[object process]';\n};\n","require('../../modules/es6.string.includes');\nmodule.exports = require('../../modules/_core').String.includes;\n","// 21.1.3.7 String.prototype.includes(searchString, position = 0)\n'use strict';\nvar $export = require('./_export');\nvar context = require('./_string-context');\nvar INCLUDES = 'includes';\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(INCLUDES), 'String', {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~context(this, searchString, INCLUDES)\n .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var global = require('./_global');\nvar core = require('./_core');\nvar hide = require('./_hide');\nvar redefine = require('./_redefine');\nvar ctx = require('./_ctx');\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});\n var key, own, out, exp;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n // export native or passed\n out = (own ? target : source)[key];\n // bind timers to global for call from export context\n exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // extend global\n if (target) redefine(target, key, out, type & $export.U);\n // export\n if (exports[key] != out) hide(exports, key, exp);\n if (IS_PROTO && expProto[key] != out) expProto[key] = out;\n }\n};\nglobal.core = core;\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n","var core = module.exports = { version: '2.5.7' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n","var dP = require('./_object-dp');\nvar createDesc = require('./_property-desc');\nmodule.exports = require('./_descriptors') ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\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","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('./_fails')(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n","var isObject = require('./_is-object');\nvar document = require('./_global').document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('./_is-object');\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\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","var global = require('./_global');\nvar hide = require('./_hide');\nvar has = require('./_has');\nvar SRC = require('./_uid')('src');\nvar TO_STRING = 'toString';\nvar $toString = Function[TO_STRING];\nvar TPL = ('' + $toString).split(TO_STRING);\n\nrequire('./_core').inspectSource = function (it) {\n return $toString.call(it);\n};\n\n(module.exports = function (O, key, val, safe) {\n var isFunction = typeof val == 'function';\n if (isFunction) has(val, 'name') || hide(val, 'name', key);\n if (O[key] === val) return;\n if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));\n if (O === global) {\n O[key] = val;\n } else if (!safe) {\n delete O[key];\n hide(O, key, val);\n } else if (O[key]) {\n O[key] = val;\n } else {\n hide(O, key, val);\n }\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, TO_STRING, function toString() {\n return typeof this == 'function' && this[SRC] || $toString.call(this);\n});\n","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n","// helper for String#{startsWith, endsWith, includes}\nvar isRegExp = require('./_is-regexp');\nvar defined = require('./_defined');\n\nmodule.exports = function (that, searchString, NAME) {\n if (isRegExp(searchString)) throw TypeError('String#' + NAME + \" doesn't accept regex!\");\n return String(defined(that));\n};\n","// 7.2.8 IsRegExp(argument)\nvar isObject = require('./_is-object');\nvar cof = require('./_cof');\nvar MATCH = require('./_wks')('match');\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","var store = require('./_shared')('wks');\nvar uid = require('./_uid');\nvar Symbol = require('./_global').Symbol;\nvar USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function (name) {\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n","var core = require('./_core');\nvar global = require('./_global');\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: core.version,\n mode: require('./_library') ? 'pure' : 'global',\n copyright: '© 2018 Denis Pushkarev (zloirock.ru)'\n});\n","module.exports = false;\n","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var MATCH = require('./_wks')('match');\nmodule.exports = function (KEY) {\n var re = /./;\n try {\n '/./'[KEY](re);\n } catch (e) {\n try {\n re[MATCH] = false;\n return !'/./'[KEY](re);\n } catch (f) { /* empty */ }\n } return true;\n};\n","require('../../modules/es7.array.includes');\nmodule.exports = require('../../modules/_core').Array.includes;\n","'use strict';\n// https://github.com/tc39/Array.prototype.includes\nvar $export = require('./_export');\nvar $includes = require('./_array-includes')(true);\n\n$export($export.P, 'Array', {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\nrequire('./_add-to-unscopables')('includes');\n","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject');\nvar toLength = require('./_to-length');\nvar toAbsoluteIndex = require('./_to-absolute-index');\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n","// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = require('./_iobject');\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = require('./_cof');\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n","// 7.1.15 ToLength\nvar toInteger = require('./_to-integer');\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n","var toInteger = require('./_to-integer');\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n","// 22.1.3.31 Array.prototype[@@unscopables]\nvar UNSCOPABLES = require('./_wks')('unscopables');\nvar ArrayProto = Array.prototype;\nif (ArrayProto[UNSCOPABLES] == undefined) require('./_hide')(ArrayProto, UNSCOPABLES, {});\nmodule.exports = function (key) {\n ArrayProto[UNSCOPABLES][key] = true;\n};\n","require('../../modules/es6.math.log2');\nmodule.exports = require('../../modules/_core').Math.log2;\n","// 20.2.2.22 Math.log2(x)\nvar $export = require('./_export');\n\n$export($export.S, 'Math', {\n log2: function log2(x) {\n return Math.log(x) / Math.LN2;\n }\n});\n","require('../../modules/es6.number.is-nan');\nmodule.exports = require('../../modules/_core').Number.isNaN;\n","// 20.1.2.4 Number.isNaN(number)\nvar $export = require('./_export');\n\n$export($export.S, 'Number', {\n isNaN: function isNaN(number) {\n // eslint-disable-next-line no-self-compare\n return number != number;\n }\n});\n","require('../../modules/es6.number.is-integer');\nmodule.exports = require('../../modules/_core').Number.isInteger;\n","// 20.1.2.3 Number.isInteger(number)\nvar $export = require('./_export');\n\n$export($export.S, 'Number', { isInteger: require('./_is-integer') });\n","// 20.1.2.3 Number.isInteger(number)\nvar isObject = require('./_is-object');\nvar floor = Math.floor;\nmodule.exports = function isInteger(it) {\n return !isObject(it) && isFinite(it) && floor(it) === it;\n};\n","require('../modules/es6.object.to-string');\nrequire('../modules/es6.string.iterator');\nrequire('../modules/web.dom.iterable');\nrequire('../modules/es6.promise');\nrequire('../modules/es7.promise.finally');\nrequire('../modules/es7.promise.try');\nmodule.exports = require('../modules/_core').Promise;\n","'use strict';\n// 19.1.3.6 Object.prototype.toString()\nvar classof = require('./_classof');\nvar test = {};\ntest[require('./_wks')('toStringTag')] = 'z';\nif (test + '' != '[object z]') {\n require('./_redefine')(Object.prototype, 'toString', function toString() {\n return '[object ' + classof(this) + ']';\n }, true);\n}\n","// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = require('./_cof');\nvar TAG = require('./_wks')('toStringTag');\n// ES3 wrong here\nvar ARG = cof(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (e) { /* empty */ }\n};\n\nmodule.exports = function (it) {\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n","'use strict';\nvar $at = require('./_string-at')(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\nrequire('./_iter-define')(String, 'String', function (iterated) {\n this._t = String(iterated); // target\n this._i = 0; // next index\n// 21.1.5.2.1 %StringIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var index = this._i;\n var point;\n if (index >= O.length) return { value: undefined, done: true };\n point = $at(O, index);\n this._i += point.length;\n return { value: point, done: false };\n});\n","var toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n","'use strict';\nvar LIBRARY = require('./_library');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar $iterCreate = require('./_iter-create');\nvar setToStringTag = require('./_set-to-string-tag');\nvar getPrototypeOf = require('./_object-gpo');\nvar ITERATOR = require('./_wks')('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n","module.exports = {};\n","'use strict';\nvar create = require('./_object-create');\nvar descriptor = require('./_property-desc');\nvar setToStringTag = require('./_set-to-string-tag');\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n","// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = require('./_an-object');\nvar dPs = require('./_object-dps');\nvar enumBugKeys = require('./_enum-bug-keys');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar Empty = function () { /* empty */ };\nvar PROTOTYPE = 'prototype';\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = require('./_dom-create')('iframe');\n var i = enumBugKeys.length;\n var lt = '<';\n var gt = '>';\n var iframeDocument;\n iframe.style.display = 'none';\n require('./_html').appendChild(iframe);\n iframe.src = 'javascript:'; // eslint-disable-line no-script-url\n // createDict = iframe.contentWindow.Object;\n // html.removeChild(iframe);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty();\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : dPs(result, Properties);\n};\n","var dP = require('./_object-dp');\nvar anObject = require('./_an-object');\nvar getKeys = require('./_object-keys');\n\nmodule.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = getKeys(Properties);\n var length = keys.length;\n var i = 0;\n var P;\n while (length > i) dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal');\nvar enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n","var has = require('./_has');\nvar toIObject = require('./_to-iobject');\nvar arrayIndexOf = require('./_array-includes')(false);\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n","var shared = require('./_shared')('keys');\nvar uid = require('./_uid');\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n","var document = require('./_global').document;\nmodule.exports = document && document.documentElement;\n","var def = require('./_object-dp').f;\nvar has = require('./_has');\nvar TAG = require('./_wks')('toStringTag');\n\nmodule.exports = function (it, tag, stat) {\n if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });\n};\n","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has');\nvar toObject = require('./_to-object');\nvar IE_PROTO = require('./_shared-key')('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n","// 7.1.13 ToObject(argument)\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n","var $iterators = require('./es6.array.iterator');\nvar getKeys = require('./_object-keys');\nvar redefine = require('./_redefine');\nvar global = require('./_global');\nvar hide = require('./_hide');\nvar Iterators = require('./_iterators');\nvar wks = require('./_wks');\nvar ITERATOR = wks('iterator');\nvar TO_STRING_TAG = wks('toStringTag');\nvar ArrayValues = Iterators.Array;\n\nvar DOMIterables = {\n CSSRuleList: true, // TODO: Not spec compliant, should be false.\n CSSStyleDeclaration: false,\n CSSValueList: false,\n ClientRectList: false,\n DOMRectList: false,\n DOMStringList: false,\n DOMTokenList: true,\n DataTransferItemList: false,\n FileList: false,\n HTMLAllCollection: false,\n HTMLCollection: false,\n HTMLFormElement: false,\n HTMLSelectElement: false,\n MediaList: true, // TODO: Not spec compliant, should be false.\n MimeTypeArray: false,\n NamedNodeMap: false,\n NodeList: true,\n PaintRequestList: false,\n Plugin: false,\n PluginArray: false,\n SVGLengthList: false,\n SVGNumberList: false,\n SVGPathSegList: false,\n SVGPointList: false,\n SVGStringList: false,\n SVGTransformList: false,\n SourceBufferList: false,\n StyleSheetList: true, // TODO: Not spec compliant, should be false.\n TextTrackCueList: false,\n TextTrackList: false,\n TouchList: false\n};\n\nfor (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {\n var NAME = collections[i];\n var explicit = DOMIterables[NAME];\n var Collection = global[NAME];\n var proto = Collection && Collection.prototype;\n var key;\n if (proto) {\n if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);\n if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);\n Iterators[NAME] = ArrayValues;\n if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);\n }\n}\n","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables');\nvar step = require('./_iter-step');\nvar Iterators = require('./_iterators');\nvar toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","module.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n","'use strict';\nvar LIBRARY = require('./_library');\nvar global = require('./_global');\nvar ctx = require('./_ctx');\nvar classof = require('./_classof');\nvar $export = require('./_export');\nvar isObject = require('./_is-object');\nvar aFunction = require('./_a-function');\nvar anInstance = require('./_an-instance');\nvar forOf = require('./_for-of');\nvar speciesConstructor = require('./_species-constructor');\nvar task = require('./_task').set;\nvar microtask = require('./_microtask')();\nvar newPromiseCapabilityModule = require('./_new-promise-capability');\nvar perform = require('./_perform');\nvar userAgent = require('./_user-agent');\nvar promiseResolve = require('./_promise-resolve');\nvar PROMISE = 'Promise';\nvar TypeError = global.TypeError;\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8 || '';\nvar $Promise = global[PROMISE];\nvar isNode = classof(process) == 'process';\nvar empty = function () { /* empty */ };\nvar Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;\nvar newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;\n\nvar USE_NATIVE = !!function () {\n try {\n // correct subclassing with @@species support\n var promise = $Promise.resolve(1);\n var FakePromise = (promise.constructor = {})[require('./_wks')('species')] = function (exec) {\n exec(empty, empty);\n };\n // unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n return (isNode || typeof PromiseRejectionEvent == 'function')\n && promise.then(empty) instanceof FakePromise\n // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // we can't detect it synchronously, so just check versions\n && v8.indexOf('6.6') !== 0\n && userAgent.indexOf('Chrome/66') === -1;\n } catch (e) { /* empty */ }\n}();\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\nvar notify = function (promise, isReject) {\n if (promise._n) return;\n promise._n = true;\n var chain = promise._c;\n microtask(function () {\n var value = promise._v;\n var ok = promise._s == 1;\n var i = 0;\n var run = function (reaction) {\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 (promise._h == 2) onHandleUnhandled(promise);\n promise._h = 1;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // may throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (e) {\n if (domain && !exited) domain.exit();\n reject(e);\n }\n };\n while (chain.length > i) run(chain[i++]); // variable length - can't use forEach\n promise._c = [];\n promise._n = false;\n if (isReject && !promise._h) onUnhandled(promise);\n });\n};\nvar onUnhandled = function (promise) {\n task.call(global, function () {\n var value = promise._v;\n var unhandled = isUnhandled(promise);\n var result, handler, console;\n if (unhandled) {\n result = perform(function () {\n if (isNode) {\n process.emit('unhandledRejection', value, promise);\n } else if (handler = global.onunhandledrejection) {\n handler({ promise: promise, reason: value });\n } else if ((console = global.console) && console.error) {\n console.error('Unhandled promise rejection', value);\n }\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n promise._h = isNode || isUnhandled(promise) ? 2 : 1;\n } promise._a = undefined;\n if (unhandled && result.e) throw result.v;\n });\n};\nvar isUnhandled = function (promise) {\n return promise._h !== 1 && (promise._a || promise._c).length === 0;\n};\nvar onHandleUnhandled = function (promise) {\n task.call(global, function () {\n var handler;\n if (isNode) {\n process.emit('rejectionHandled', promise);\n } else if (handler = global.onrejectionhandled) {\n handler({ promise: promise, reason: promise._v });\n }\n });\n};\nvar $reject = function (value) {\n var promise = this;\n if (promise._d) return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n promise._v = value;\n promise._s = 2;\n if (!promise._a) promise._a = promise._c.slice();\n notify(promise, true);\n};\nvar $resolve = function (value) {\n var promise = this;\n var then;\n if (promise._d) return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n try {\n if (promise === value) throw TypeError(\"Promise can't be resolved itself\");\n if (then = isThenable(value)) {\n microtask(function () {\n var wrapper = { _w: promise, _d: false }; // wrap\n try {\n then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));\n } catch (e) {\n $reject.call(wrapper, e);\n }\n });\n } else {\n promise._v = value;\n promise._s = 1;\n notify(promise, false);\n }\n } catch (e) {\n $reject.call({ _w: promise, _d: false }, e); // wrap\n }\n};\n\n// constructor polyfill\nif (!USE_NATIVE) {\n // 25.4.3.1 Promise(executor)\n $Promise = function Promise(executor) {\n anInstance(this, $Promise, PROMISE, '_h');\n aFunction(executor);\n Internal.call(this);\n try {\n executor(ctx($resolve, this, 1), ctx($reject, this, 1));\n } catch (err) {\n $reject.call(this, err);\n }\n };\n // eslint-disable-next-line no-unused-vars\n Internal = function Promise(executor) {\n this._c = []; // <- awaiting reactions\n this._a = undefined; // <- checked in isUnhandled reactions\n this._s = 0; // <- state\n this._d = false; // <- done\n this._v = undefined; // <- value\n this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled\n this._n = false; // <- notify\n };\n Internal.prototype = require('./_redefine-all')($Promise.prototype, {\n // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)\n then: function then(onFulfilled, onRejected) {\n var reaction = newPromiseCapability(speciesConstructor(this, $Promise));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = isNode ? process.domain : undefined;\n this._c.push(reaction);\n if (this._a) this._a.push(reaction);\n if (this._s) notify(this, false);\n return reaction.promise;\n },\n // 25.4.5.1 Promise.prototype.catch(onRejected)\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n this.promise = promise;\n this.resolve = ctx($resolve, promise, 1);\n this.reject = ctx($reject, promise, 1);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === $Promise || C === Wrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });\nrequire('./_set-to-string-tag')($Promise, PROMISE);\nrequire('./_set-species')(PROMISE);\nWrapper = require('./_core')[PROMISE];\n\n// statics\n$export($export.S + $export.F * !USE_NATIVE, PROMISE, {\n // 25.4.4.5 Promise.reject(r)\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n var $$reject = capability.reject;\n $$reject(r);\n return capability.promise;\n }\n});\n$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {\n // 25.4.4.6 Promise.resolve(x)\n resolve: function resolve(x) {\n return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);\n }\n});\n$export($export.S + $export.F * !(USE_NATIVE && require('./_iter-detect')(function (iter) {\n $Promise.all(iter)['catch'](empty);\n})), PROMISE, {\n // 25.4.4.1 Promise.all(iterable)\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 values = [];\n var index = 0;\n var remaining = 1;\n forOf(iterable, false, function (promise) {\n var $index = index++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n C.resolve(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.e) reject(result.v);\n return capability.promise;\n },\n // 25.4.4.4 Promise.race(iterable)\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 forOf(iterable, false, function (promise) {\n C.resolve(promise).then(capability.resolve, reject);\n });\n });\n if (result.e) reject(result.v);\n return capability.promise;\n }\n});\n","module.exports = function (it, Constructor, name, forbiddenField) {\n if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {\n throw TypeError(name + ': incorrect invocation!');\n } return it;\n};\n","var ctx = require('./_ctx');\nvar call = require('./_iter-call');\nvar isArrayIter = require('./_is-array-iter');\nvar anObject = require('./_an-object');\nvar toLength = require('./_to-length');\nvar getIterFn = require('./core.get-iterator-method');\nvar BREAK = {};\nvar RETURN = {};\nvar exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {\n var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);\n var f = ctx(fn, that, entries ? 2 : 1);\n var index = 0;\n var length, step, iterator, result;\n if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');\n // fast case for arrays with default iterator\n if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {\n result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);\n if (result === BREAK || result === RETURN) return result;\n } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {\n result = call(iterator, f, step.value, entries);\n if (result === BREAK || result === RETURN) return result;\n }\n};\nexports.BREAK = BREAK;\nexports.RETURN = RETURN;\n","// call something on iterator step with safe closing on error\nvar anObject = require('./_an-object');\nmodule.exports = function (iterator, fn, value, entries) {\n try {\n return entries ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (e) {\n var ret = iterator['return'];\n if (ret !== undefined) anObject(ret.call(iterator));\n throw e;\n }\n};\n","// check on default Array iterator\nvar Iterators = require('./_iterators');\nvar ITERATOR = require('./_wks')('iterator');\nvar ArrayProto = Array.prototype;\n\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);\n};\n","var classof = require('./_classof');\nvar ITERATOR = require('./_wks')('iterator');\nvar Iterators = require('./_iterators');\nmodule.exports = require('./_core').getIteratorMethod = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","// 7.3.20 SpeciesConstructor(O, defaultConstructor)\nvar anObject = require('./_an-object');\nvar aFunction = require('./_a-function');\nvar SPECIES = require('./_wks')('species');\nmodule.exports = function (O, D) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);\n};\n","var ctx = require('./_ctx');\nvar invoke = require('./_invoke');\nvar html = require('./_html');\nvar cel = require('./_dom-create');\nvar global = require('./_global');\nvar process = global.process;\nvar setTask = global.setImmediate;\nvar clearTask = global.clearImmediate;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\nvar run = function () {\n var id = +this;\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\nvar listener = function (event) {\n run.call(event.data);\n};\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!setTask || !clearTask) {\n setTask = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n invoke(typeof fn == 'function' ? fn : Function(fn), args);\n };\n defer(counter);\n return counter;\n };\n clearTask = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (require('./_cof')(process) == 'process') {\n defer = function (id) {\n process.nextTick(ctx(run, id, 1));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(ctx(run, id, 1));\n };\n // Browsers with MessageChannel, includes WebWorkers\n } else if (MessageChannel) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = ctx(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {\n defer = function (id) {\n global.postMessage(id + '', '*');\n };\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in cel('script')) {\n defer = function (id) {\n html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run.call(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(ctx(run, id, 1), 0);\n };\n }\n}\nmodule.exports = {\n set: setTask,\n clear: clearTask\n};\n","// fast apply, http://jsperf.lnkit.com/fast-apply/5\nmodule.exports = function (fn, args, that) {\n var un = that === undefined;\n switch (args.length) {\n case 0: return un ? fn()\n : fn.call(that);\n case 1: return un ? fn(args[0])\n : fn.call(that, args[0]);\n case 2: return un ? fn(args[0], args[1])\n : fn.call(that, args[0], args[1]);\n case 3: return un ? fn(args[0], args[1], args[2])\n : fn.call(that, args[0], args[1], args[2]);\n case 4: return un ? fn(args[0], args[1], args[2], args[3])\n : fn.call(that, args[0], args[1], args[2], args[3]);\n } return fn.apply(that, args);\n};\n","var global = require('./_global');\nvar macrotask = require('./_task').set;\nvar Observer = global.MutationObserver || global.WebKitMutationObserver;\nvar process = global.process;\nvar Promise = global.Promise;\nvar isNode = require('./_cof')(process) == 'process';\n\nmodule.exports = function () {\n var head, last, notify;\n\n var flush = function () {\n var parent, fn;\n if (isNode && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (e) {\n if (head) notify();\n else last = undefined;\n throw e;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // Node.js\n if (isNode) {\n notify = function () {\n process.nextTick(flush);\n };\n // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339\n } else if (Observer && !(global.navigator && global.navigator.standalone)) {\n var toggle = true;\n var node = document.createTextNode('');\n new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n var promise = Promise.resolve(undefined);\n notify = function () {\n promise.then(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n\n return function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n };\n};\n","'use strict';\n// 25.4.1.5 NewPromiseCapability(C)\nvar aFunction = require('./_a-function');\n\nfunction 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 = aFunction(resolve);\n this.reject = aFunction(reject);\n}\n\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","module.exports = function (exec) {\n try {\n return { e: false, v: exec() };\n } catch (e) {\n return { e: true, v: e };\n }\n};\n","var global = require('./_global');\nvar navigator = global.navigator;\n\nmodule.exports = navigator && navigator.userAgent || '';\n","var anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar newPromiseCapability = require('./_new-promise-capability');\n\nmodule.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","var redefine = require('./_redefine');\nmodule.exports = function (target, src, safe) {\n for (var key in src) redefine(target, key, src[key], safe);\n return target;\n};\n","'use strict';\nvar global = require('./_global');\nvar dP = require('./_object-dp');\nvar DESCRIPTORS = require('./_descriptors');\nvar SPECIES = require('./_wks')('species');\n\nmodule.exports = function (KEY) {\n var C = global[KEY];\n if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n};\n","var ITERATOR = require('./_wks')('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var riter = [7][ITERATOR]();\n riter['return'] = function () { SAFE_CLOSING = true; };\n // eslint-disable-next-line no-throw-literal\n Array.from(riter, function () { throw 2; });\n} catch (e) { /* empty */ }\n\nmodule.exports = function (exec, skipClosing) {\n if (!skipClosing && !SAFE_CLOSING) return false;\n var safe = false;\n try {\n var arr = [7];\n var iter = arr[ITERATOR]();\n iter.next = function () { return { done: safe = true }; };\n arr[ITERATOR] = function () { return iter; };\n exec(arr);\n } catch (e) { /* empty */ }\n return safe;\n};\n","// https://github.com/tc39/proposal-promise-finally\n'use strict';\nvar $export = require('./_export');\nvar core = require('./_core');\nvar global = require('./_global');\nvar speciesConstructor = require('./_species-constructor');\nvar promiseResolve = require('./_promise-resolve');\n\n$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {\n var C = speciesConstructor(this, core.Promise || global.Promise);\n var isFunction = typeof onFinally == 'function';\n return this.then(\n isFunction ? function (x) {\n return promiseResolve(C, onFinally()).then(function () { return x; });\n } : onFinally,\n isFunction ? function (e) {\n return promiseResolve(C, onFinally()).then(function () { throw e; });\n } : onFinally\n );\n} });\n","'use strict';\n// https://github.com/tc39/proposal-promise-try\nvar $export = require('./_export');\nvar newPromiseCapability = require('./_new-promise-capability');\nvar perform = require('./_perform');\n\n$export($export.S, 'Promise', { 'try': function (callbackfn) {\n var promiseCapability = newPromiseCapability.f(this);\n var result = perform(callbackfn);\n (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v);\n return promiseCapability.promise;\n} });\n","require('../modules/es6.object.to-string');\nrequire('../modules/web.dom.iterable');\nrequire('../modules/es6.weak-map');\nrequire('../modules/es7.weak-map.of');\nrequire('../modules/es7.weak-map.from');\nmodule.exports = require('../modules/_core').WeakMap;\n","'use strict';\nvar each = require('./_array-methods')(0);\nvar redefine = require('./_redefine');\nvar meta = require('./_meta');\nvar assign = require('./_object-assign');\nvar weak = require('./_collection-weak');\nvar isObject = require('./_is-object');\nvar fails = require('./_fails');\nvar validate = require('./_validate-collection');\nvar WEAK_MAP = 'WeakMap';\nvar getWeak = meta.getWeak;\nvar isExtensible = Object.isExtensible;\nvar uncaughtFrozenStore = weak.ufstore;\nvar tmp = {};\nvar InternalMap;\n\nvar wrapper = function (get) {\n return function WeakMap() {\n return get(this, arguments.length > 0 ? arguments[0] : undefined);\n };\n};\n\nvar methods = {\n // 23.3.3.3 WeakMap.prototype.get(key)\n get: function get(key) {\n if (isObject(key)) {\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);\n return data ? data[this._i] : undefined;\n }\n },\n // 23.3.3.5 WeakMap.prototype.set(key, value)\n set: function set(key, value) {\n return weak.def(validate(this, WEAK_MAP), key, value);\n }\n};\n\n// 23.3 WeakMap Objects\nvar $WeakMap = module.exports = require('./_collection')(WEAK_MAP, wrapper, methods, weak, true, true);\n\n// IE11 WeakMap frozen keys fix\nif (fails(function () { return new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7; })) {\n InternalMap = weak.getConstructor(wrapper, WEAK_MAP);\n assign(InternalMap.prototype, methods);\n meta.NEED = true;\n each(['delete', 'has', 'get', 'set'], function (key) {\n var proto = $WeakMap.prototype;\n var method = proto[key];\n redefine(proto, key, function (a, b) {\n // store frozen objects on internal weakmap shim\n if (isObject(a) && !isExtensible(a)) {\n if (!this._f) this._f = new InternalMap();\n var result = this._f[key](a, b);\n return key == 'set' ? this : result;\n // store all the rest on native weakmap\n } return method.call(this, a, b);\n });\n });\n}\n","// 0 -> Array#forEach\n// 1 -> Array#map\n// 2 -> Array#filter\n// 3 -> Array#some\n// 4 -> Array#every\n// 5 -> Array#find\n// 6 -> Array#findIndex\nvar ctx = require('./_ctx');\nvar IObject = require('./_iobject');\nvar toObject = require('./_to-object');\nvar toLength = require('./_to-length');\nvar asc = require('./_array-species-create');\nmodule.exports = function (TYPE, $create) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n var create = $create || asc;\n return function ($this, callbackfn, that) {\n var O = toObject($this);\n var self = IObject(O);\n var f = ctx(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var val, res;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n val = self[index];\n res = f(val, index, O);\n if (TYPE) {\n if (IS_MAP) result[index] = res; // map\n else if (res) switch (TYPE) {\n case 3: return true; // some\n case 5: return val; // find\n case 6: return index; // findIndex\n case 2: result.push(val); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;\n };\n};\n","// 9.4.2.3 ArraySpeciesCreate(originalArray, length)\nvar speciesConstructor = require('./_array-species-constructor');\n\nmodule.exports = function (original, length) {\n return new (speciesConstructor(original))(length);\n};\n","var isObject = require('./_is-object');\nvar isArray = require('./_is-array');\nvar SPECIES = require('./_wks')('species');\n\nmodule.exports = function (original) {\n var C;\n if (isArray(original)) {\n C = original.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? Array : C;\n};\n","// 7.2.2 IsArray(argument)\nvar cof = require('./_cof');\nmodule.exports = Array.isArray || function isArray(arg) {\n return cof(arg) == 'Array';\n};\n","var META = require('./_uid')('meta');\nvar isObject = require('./_is-object');\nvar has = require('./_has');\nvar setDesc = require('./_object-dp').f;\nvar id = 0;\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\nvar FREEZE = !require('./_fails')(function () {\n return isExtensible(Object.preventExtensions({}));\n});\nvar setMeta = function (it) {\n setDesc(it, META, { value: {\n i: 'O' + ++id, // object ID\n w: {} // weak collections IDs\n } });\n};\nvar fastKey = function (it, create) {\n // return primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMeta(it);\n // return object ID\n } return it[META].i;\n};\nvar getWeak = function (it, create) {\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMeta(it);\n // return hash weak collections IDs\n } return it[META].w;\n};\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);\n return it;\n};\nvar meta = module.exports = {\n KEY: META,\n NEED: false,\n fastKey: fastKey,\n getWeak: getWeak,\n onFreeze: onFreeze\n};\n","'use strict';\n// 19.1.2.1 Object.assign(target, source, ...)\nvar getKeys = require('./_object-keys');\nvar gOPS = require('./_object-gops');\nvar pIE = require('./_object-pie');\nvar toObject = require('./_to-object');\nvar IObject = require('./_iobject');\nvar $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || require('./_fails')(function () {\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var S = Symbol();\n var K = 'abcdefghijklmnopqrst';\n A[S] = 7;\n K.split('').forEach(function (k) { B[k] = k; });\n return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var aLen = arguments.length;\n var index = 1;\n var getSymbols = gOPS.f;\n var isEnum = pIE.f;\n while (aLen > index) {\n var S = IObject(arguments[index++]);\n var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) if (isEnum.call(S, key = keys[j++])) T[key] = S[key];\n } return T;\n} : $assign;\n","exports.f = Object.getOwnPropertySymbols;\n","exports.f = {}.propertyIsEnumerable;\n","'use strict';\nvar redefineAll = require('./_redefine-all');\nvar getWeak = require('./_meta').getWeak;\nvar anObject = require('./_an-object');\nvar isObject = require('./_is-object');\nvar anInstance = require('./_an-instance');\nvar forOf = require('./_for-of');\nvar createArrayMethod = require('./_array-methods');\nvar $has = require('./_has');\nvar validate = require('./_validate-collection');\nvar arrayFind = createArrayMethod(5);\nvar arrayFindIndex = createArrayMethod(6);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (that) {\n return that._l || (that._l = new UncaughtFrozenStore());\n};\nvar UncaughtFrozenStore = function () {\n this.a = [];\n};\nvar findUncaughtFrozen = function (store, key) {\n return arrayFind(store.a, function (it) {\n return it[0] === key;\n });\n};\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.a.push([key, value]);\n },\n 'delete': function (key) {\n var index = arrayFindIndex(this.a, function (it) {\n return it[0] === key;\n });\n if (~index) this.a.splice(index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, NAME, '_i');\n that._t = NAME; // collection type\n that._i = id++; // collection id\n that._l = undefined; // leak store for uncaught frozen objects\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.3.3.2 WeakMap.prototype.delete(key)\n // 23.4.3.3 WeakSet.prototype.delete(value)\n 'delete': function (key) {\n if (!isObject(key)) return false;\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);\n return data && $has(data, this._i) && delete data[this._i];\n },\n // 23.3.3.4 WeakMap.prototype.has(key)\n // 23.4.3.4 WeakSet.prototype.has(value)\n has: function has(key) {\n if (!isObject(key)) return false;\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);\n return data && $has(data, this._i);\n }\n });\n return C;\n },\n def: function (that, key, value) {\n var data = getWeak(anObject(key), true);\n if (data === true) uncaughtFrozenStore(that).set(key, value);\n else data[that._i] = value;\n return that;\n },\n ufstore: uncaughtFrozenStore\n};\n","var isObject = require('./_is-object');\nmodule.exports = function (it, TYPE) {\n if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');\n return it;\n};\n","'use strict';\nvar global = require('./_global');\nvar $export = require('./_export');\nvar redefine = require('./_redefine');\nvar redefineAll = require('./_redefine-all');\nvar meta = require('./_meta');\nvar forOf = require('./_for-of');\nvar anInstance = require('./_an-instance');\nvar isObject = require('./_is-object');\nvar fails = require('./_fails');\nvar $iterDetect = require('./_iter-detect');\nvar setToStringTag = require('./_set-to-string-tag');\nvar inheritIfRequired = require('./_inherit-if-required');\n\nmodule.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {\n var Base = global[NAME];\n var C = Base;\n var ADDER = IS_MAP ? 'set' : 'add';\n var proto = C && C.prototype;\n var O = {};\n var fixMethod = function (KEY) {\n var fn = proto[KEY];\n redefine(proto, KEY,\n KEY == 'delete' ? function (a) {\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'has' ? function has(a) {\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'get' ? function get(a) {\n return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'add' ? function add(a) { fn.call(this, a === 0 ? 0 : a); return this; }\n : function set(a, b) { fn.call(this, a === 0 ? 0 : a, b); return this; }\n );\n };\n if (typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {\n new C().entries().next();\n }))) {\n // create collection constructor\n C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);\n redefineAll(C.prototype, methods);\n meta.NEED = true;\n } else {\n var instance = new C();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n var ACCEPT_ITERABLES = $iterDetect(function (iter) { new C(iter); }); // eslint-disable-line no-new\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new C();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n if (!ACCEPT_ITERABLES) {\n C = wrapper(function (target, iterable) {\n anInstance(target, C, NAME);\n var that = inheritIfRequired(new Base(), target, C);\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n return that;\n });\n C.prototype = proto;\n proto.constructor = C;\n }\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n // weak collections should not contains .clear method\n if (IS_WEAK && proto.clear) delete proto.clear;\n }\n\n setToStringTag(C, NAME);\n\n O[NAME] = C;\n $export($export.G + $export.W + $export.F * (C != Base), O);\n\n if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);\n\n return C;\n};\n","var isObject = require('./_is-object');\nvar setPrototypeOf = require('./_set-proto').set;\nmodule.exports = function (that, target, C) {\n var S = target.constructor;\n var P;\n if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {\n setPrototypeOf(that, P);\n } return that;\n};\n","// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nvar isObject = require('./_is-object');\nvar anObject = require('./_an-object');\nvar check = function (O, proto) {\n anObject(O);\n if (!isObject(proto) && proto !== null) throw TypeError(proto + \": can't set as prototype!\");\n};\nmodule.exports = {\n set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line\n function (test, buggy, set) {\n try {\n set = require('./_ctx')(Function.call, require('./_object-gopd').f(Object.prototype, '__proto__').set, 2);\n set(test, []);\n buggy = !(test instanceof Array);\n } catch (e) { buggy = true; }\n return function setPrototypeOf(O, proto) {\n check(O, proto);\n if (buggy) O.__proto__ = proto;\n else set(O, proto);\n return O;\n };\n }({}, false) : undefined),\n check: check\n};\n","var pIE = require('./_object-pie');\nvar createDesc = require('./_property-desc');\nvar toIObject = require('./_to-iobject');\nvar toPrimitive = require('./_to-primitive');\nvar has = require('./_has');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar gOPD = Object.getOwnPropertyDescriptor;\n\nexports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P) {\n O = toIObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return gOPD(O, P);\n } catch (e) { /* empty */ }\n if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);\n};\n","// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of\nrequire('./_set-collection-of')('WeakMap');\n","'use strict';\n// https://tc39.github.io/proposal-setmap-offrom/\nvar $export = require('./_export');\n\nmodule.exports = function (COLLECTION) {\n $export($export.S, COLLECTION, { of: function of() {\n var length = arguments.length;\n var A = new Array(length);\n while (length--) A[length] = arguments[length];\n return new this(A);\n } });\n};\n","// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from\nrequire('./_set-collection-from')('WeakMap');\n","'use strict';\n// https://tc39.github.io/proposal-setmap-offrom/\nvar $export = require('./_export');\nvar aFunction = require('./_a-function');\nvar ctx = require('./_ctx');\nvar forOf = require('./_for-of');\n\nmodule.exports = function (COLLECTION) {\n $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) {\n var mapFn = arguments[1];\n var mapping, A, n, cb;\n aFunction(this);\n mapping = mapFn !== undefined;\n if (mapping) aFunction(mapFn);\n if (source == undefined) return new this();\n A = [];\n if (mapping) {\n n = 0;\n cb = ctx(mapFn, arguments[2], 2);\n forOf(source, false, function (nextItem) {\n A.push(cb(nextItem, n++));\n });\n } else {\n forOf(source, false, A.push, A);\n }\n return new this(A);\n } });\n};\n","require('../../modules/es7.object.values');\nmodule.exports = require('../../modules/_core').Object.values;\n","// https://github.com/tc39/proposal-object-values-entries\nvar $export = require('./_export');\nvar $values = require('./_object-to-array')(false);\n\n$export($export.S, 'Object', {\n values: function values(it) {\n return $values(it);\n }\n});\n","var getKeys = require('./_object-keys');\nvar toIObject = require('./_to-iobject');\nvar isEnum = require('./_object-pie').f;\nmodule.exports = function (isEntries) {\n return function (it) {\n var O = toIObject(it);\n var keys = getKeys(O);\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) if (isEnum.call(O, key = keys[i++])) {\n result.push(isEntries ? [key, O[key]] : O[key]);\n } return result;\n };\n};\n","/* Copyright 2017 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\nlet isReadableStreamSupported = false;\nif (typeof ReadableStream !== 'undefined') {\n // MS Edge may say it has ReadableStream but they are not up to spec yet.\n try {\n // eslint-disable-next-line no-new\n new ReadableStream({\n start(controller) {\n controller.close();\n },\n });\n isReadableStreamSupported = true;\n } catch (e) {\n // The ReadableStream constructor cannot be used.\n }\n}\nif (isReadableStreamSupported) {\n exports.ReadableStream = ReadableStream;\n} else {\n exports.ReadableStream =\n require('../../external/streams/streams-lib').ReadableStream;\n}\n","/*\n * To the extent possible under law, the authors have dedicated all copyright\n * and related and neighboring rights to this software to the public\n * domain worldwide. This software is distributed without any warranty.\n *\n * You should have received a copy of the CC0 Public Domain Dedication along\n * with this software. If not, see https://creativecommons.org/publicdomain/zero/1.0/.\n */\n\n(function(e, a) { for(var i in a) e[i] = a[i]; }(exports, /******/ (function(modules) { // webpackBootstrap\n/******/ // The module cache\n/******/ var installedModules = {};\n/******/\n/******/ // The require function\n/******/ function __w_pdfjs_require__(moduleId) {\n/******/\n/******/ // Check if module is in cache\n/******/ if(installedModules[moduleId])\n/******/ return installedModules[moduleId].exports;\n/******/\n/******/ // Create a new module (and put it into the cache)\n/******/ var module = installedModules[moduleId] = {\n/******/ i: moduleId,\n/******/ l: false,\n/******/ exports: {}\n/******/ };\n/******/\n/******/ // Execute the module function\n/******/ modules[moduleId].call(module.exports, module, module.exports, __w_pdfjs_require__);\n/******/\n/******/ // Flag the module as loaded\n/******/ module.l = true;\n/******/\n/******/ // Return the exports of the module\n/******/ return module.exports;\n/******/ }\n/******/\n/******/\n/******/ // expose the modules object (__webpack_modules__)\n/******/ __w_pdfjs_require__.m = modules;\n/******/\n/******/ // expose the module cache\n/******/ __w_pdfjs_require__.c = installedModules;\n/******/\n/******/ // identity function for calling harmony imports with the correct context\n/******/ __w_pdfjs_require__.i = function(value) { return value; };\n/******/\n/******/ // define getter function for harmony exports\n/******/ __w_pdfjs_require__.d = function(exports, name, getter) {\n/******/ if(!__w_pdfjs_require__.o(exports, name)) {\n/******/ Object.defineProperty(exports, name, {\n/******/ configurable: false,\n/******/ enumerable: true,\n/******/ get: getter\n/******/ });\n/******/ }\n/******/ };\n/******/\n/******/ // getDefaultExport function for compatibility with non-harmony modules\n/******/ __w_pdfjs_require__.n = function(module) {\n/******/ var getter = module && module.__esModule ?\n/******/ function getDefault() { return module['default']; } :\n/******/ function getModuleExports() { return module; };\n/******/ __w_pdfjs_require__.d(getter, 'a', getter);\n/******/ return getter;\n/******/ };\n/******/\n/******/ // Object.prototype.hasOwnProperty.call\n/******/ __w_pdfjs_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ // __webpack_public_path__\n/******/ __w_pdfjs_require__.p = \"\";\n/******/\n/******/ // Load entry module and return exports\n/******/ return __w_pdfjs_require__(__w_pdfjs_require__.s = 7);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __w_pdfjs_require__) {\n\n\"use strict\";\n\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _require = __w_pdfjs_require__(1),\n assert = _require.assert;\n\nfunction IsPropertyKey(argument) {\n return typeof argument === 'string' || (typeof argument === 'undefined' ? 'undefined' : _typeof(argument)) === 'symbol';\n}\n\nexports.typeIsObject = function (x) {\n return (typeof x === 'undefined' ? 'undefined' : _typeof(x)) === 'object' && x !== null || typeof x === 'function';\n};\n\nexports.createDataProperty = function (o, p, v) {\n assert(exports.typeIsObject(o));\n Object.defineProperty(o, p, { value: v, writable: true, enumerable: true, configurable: true });\n};\n\nexports.createArrayFromList = function (elements) {\n // We use arrays to represent lists, so this is basically a no-op.\n // Do a slice though just in case we happen to depend on the unique-ness.\n return elements.slice();\n};\n\nexports.ArrayBufferCopy = function (dest, destOffset, src, srcOffset, n) {\n new Uint8Array(dest).set(new Uint8Array(src, srcOffset, n), destOffset);\n};\n\nexports.CreateIterResultObject = function (value, done) {\n assert(typeof done === 'boolean');\n var obj = {};\n Object.defineProperty(obj, 'value', { value: value, enumerable: true, writable: true, configurable: true });\n Object.defineProperty(obj, 'done', { value: done, enumerable: true, writable: true, configurable: true });\n return obj;\n};\n\nexports.IsFiniteNonNegativeNumber = function (v) {\n if (Number.isNaN(v)) {\n return false;\n }\n if (v === Infinity) {\n return false;\n }\n if (v < 0) {\n return false;\n }\n\n return true;\n};\n\nfunction Call(F, V, args) {\n if (typeof F !== 'function') {\n throw new TypeError('Argument is not a function');\n }\n\n return Function.prototype.apply.call(F, V, args);\n}\n\nexports.InvokeOrNoop = function (O, P, args) {\n assert(O !== undefined);\n assert(IsPropertyKey(P));\n assert(Array.isArray(args));\n\n var method = O[P];\n if (method === undefined) {\n return undefined;\n }\n\n return Call(method, O, args);\n};\n\nexports.PromiseInvokeOrNoop = function (O, P, args) {\n assert(O !== undefined);\n assert(IsPropertyKey(P));\n assert(Array.isArray(args));\n try {\n return Promise.resolve(exports.InvokeOrNoop(O, P, args));\n } catch (returnValueE) {\n return Promise.reject(returnValueE);\n }\n};\n\nexports.PromiseInvokeOrPerformFallback = function (O, P, args, F, argsF) {\n assert(O !== undefined);\n assert(IsPropertyKey(P));\n assert(Array.isArray(args));\n assert(Array.isArray(argsF));\n\n var method = void 0;\n try {\n method = O[P];\n } catch (methodE) {\n return Promise.reject(methodE);\n }\n\n if (method === undefined) {\n return F.apply(null, argsF);\n }\n\n try {\n return Promise.resolve(Call(method, O, args));\n } catch (e) {\n return Promise.reject(e);\n }\n};\n\n// Not implemented correctly\nexports.TransferArrayBuffer = function (O) {\n return O.slice();\n};\n\nexports.ValidateAndNormalizeHighWaterMark = function (highWaterMark) {\n highWaterMark = Number(highWaterMark);\n if (Number.isNaN(highWaterMark) || highWaterMark < 0) {\n throw new RangeError('highWaterMark property of a queuing strategy must be non-negative and non-NaN');\n }\n\n return highWaterMark;\n};\n\nexports.ValidateAndNormalizeQueuingStrategy = function (size, highWaterMark) {\n if (size !== undefined && typeof size !== 'function') {\n throw new TypeError('size property of a queuing strategy must be a function');\n }\n\n highWaterMark = exports.ValidateAndNormalizeHighWaterMark(highWaterMark);\n\n return { size: size, highWaterMark: highWaterMark };\n};\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __w_pdfjs_require__) {\n\n\"use strict\";\n\n\nfunction rethrowAssertionErrorRejection(e) {\n // Used throughout the reference implementation, as `.catch(rethrowAssertionErrorRejection)`, to ensure any errors\n // get shown. There are places in the spec where we do promise transformations and purposefully ignore or don't\n // expect any errors, but assertion errors are always problematic.\n if (e && e.constructor === AssertionError) {\n setTimeout(function () {\n throw e;\n }, 0);\n }\n};\n\nfunction AssertionError(message) {\n this.name = 'AssertionError';\n this.message = message || '';\n this.stack = new Error().stack;\n}\nAssertionError.prototype = Object.create(Error.prototype);\nAssertionError.prototype.constructor = AssertionError;\n\nfunction assert(value, message) {\n if (!value) {\n throw new AssertionError(message);\n }\n}\n\nmodule.exports = {\n rethrowAssertionErrorRejection: rethrowAssertionErrorRejection,\n AssertionError: AssertionError,\n assert: assert\n};\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __w_pdfjs_require__) {\n\n\"use strict\";\n\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar _require = __w_pdfjs_require__(0),\n InvokeOrNoop = _require.InvokeOrNoop,\n PromiseInvokeOrNoop = _require.PromiseInvokeOrNoop,\n ValidateAndNormalizeQueuingStrategy = _require.ValidateAndNormalizeQueuingStrategy,\n typeIsObject = _require.typeIsObject;\n\nvar _require2 = __w_pdfjs_require__(1),\n assert = _require2.assert,\n rethrowAssertionErrorRejection = _require2.rethrowAssertionErrorRejection;\n\nvar _require3 = __w_pdfjs_require__(3),\n DequeueValue = _require3.DequeueValue,\n EnqueueValueWithSize = _require3.EnqueueValueWithSize,\n PeekQueueValue = _require3.PeekQueueValue,\n ResetQueue = _require3.ResetQueue;\n\nvar WritableStream = function () {\n function WritableStream() {\n var underlyingSink = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n size = _ref.size,\n _ref$highWaterMark = _ref.highWaterMark,\n highWaterMark = _ref$highWaterMark === undefined ? 1 : _ref$highWaterMark;\n\n _classCallCheck(this, WritableStream);\n\n this._state = 'writable';\n\n // The error that will be reported by new method calls once the state becomes errored. Only set when [[state]] is\n // 'erroring' or 'errored'. May be set to an undefined value.\n this._storedError = undefined;\n\n this._writer = undefined;\n\n // Initialize to undefined first because the constructor of the controller checks this\n // variable to validate the caller.\n this._writableStreamController = undefined;\n\n // This queue is placed here instead of the writer class in order to allow for passing a writer to the next data\n // producer without waiting for the queued writes to finish.\n this._writeRequests = [];\n\n // Write requests are removed from _writeRequests when write() is called on the underlying sink. This prevents\n // them from being erroneously rejected on error. If a write() call is in-flight, the request is stored here.\n this._inFlightWriteRequest = undefined;\n\n // The promise that was returned from writer.close(). Stored here because it may be fulfilled after the writer\n // has been detached.\n this._closeRequest = undefined;\n\n // Close request is removed from _closeRequest when close() is called on the underlying sink. This prevents it\n // from being erroneously rejected on error. If a close() call is in-flight, the request is stored here.\n this._inFlightCloseRequest = undefined;\n\n // The promise that was returned from writer.abort(). This may also be fulfilled after the writer has detached.\n this._pendingAbortRequest = undefined;\n\n // The backpressure signal set by the controller.\n this._backpressure = false;\n\n var type = underlyingSink.type;\n\n if (type !== undefined) {\n throw new RangeError('Invalid type is specified');\n }\n\n this._writableStreamController = new WritableStreamDefaultController(this, underlyingSink, size, highWaterMark);\n this._writableStreamController.__startSteps();\n }\n\n _createClass(WritableStream, [{\n key: 'abort',\n value: function abort(reason) {\n if (IsWritableStream(this) === false) {\n return Promise.reject(streamBrandCheckException('abort'));\n }\n\n if (IsWritableStreamLocked(this) === true) {\n return Promise.reject(new TypeError('Cannot abort a stream that already has a writer'));\n }\n\n return WritableStreamAbort(this, reason);\n }\n }, {\n key: 'getWriter',\n value: function getWriter() {\n if (IsWritableStream(this) === false) {\n throw streamBrandCheckException('getWriter');\n }\n\n return AcquireWritableStreamDefaultWriter(this);\n }\n }, {\n key: 'locked',\n get: function get() {\n if (IsWritableStream(this) === false) {\n throw streamBrandCheckException('locked');\n }\n\n return IsWritableStreamLocked(this);\n }\n }]);\n\n return WritableStream;\n}();\n\nmodule.exports = {\n AcquireWritableStreamDefaultWriter: AcquireWritableStreamDefaultWriter,\n IsWritableStream: IsWritableStream,\n IsWritableStreamLocked: IsWritableStreamLocked,\n WritableStream: WritableStream,\n WritableStreamAbort: WritableStreamAbort,\n WritableStreamDefaultControllerError: WritableStreamDefaultControllerError,\n WritableStreamDefaultWriterCloseWithErrorPropagation: WritableStreamDefaultWriterCloseWithErrorPropagation,\n WritableStreamDefaultWriterRelease: WritableStreamDefaultWriterRelease,\n WritableStreamDefaultWriterWrite: WritableStreamDefaultWriterWrite,\n WritableStreamCloseQueuedOrInFlight: WritableStreamCloseQueuedOrInFlight\n};\n\n// Abstract operations for the WritableStream.\n\nfunction AcquireWritableStreamDefaultWriter(stream) {\n return new WritableStreamDefaultWriter(stream);\n}\n\nfunction IsWritableStream(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n\n if (!Object.prototype.hasOwnProperty.call(x, '_writableStreamController')) {\n return false;\n }\n\n return true;\n}\n\nfunction IsWritableStreamLocked(stream) {\n assert(IsWritableStream(stream) === true, 'IsWritableStreamLocked should only be used on known writable streams');\n\n if (stream._writer === undefined) {\n return false;\n }\n\n return true;\n}\n\nfunction WritableStreamAbort(stream, reason) {\n var state = stream._state;\n if (state === 'closed') {\n return Promise.resolve(undefined);\n }\n if (state === 'errored') {\n return Promise.reject(stream._storedError);\n }\n var error = new TypeError('Requested to abort');\n if (stream._pendingAbortRequest !== undefined) {\n return Promise.reject(error);\n }\n\n assert(state === 'writable' || state === 'erroring', 'state must be writable or erroring');\n\n var wasAlreadyErroring = false;\n if (state === 'erroring') {\n wasAlreadyErroring = true;\n // reason will not be used, so don't keep a reference to it.\n reason = undefined;\n }\n\n var promise = new Promise(function (resolve, reject) {\n stream._pendingAbortRequest = {\n _resolve: resolve,\n _reject: reject,\n _reason: reason,\n _wasAlreadyErroring: wasAlreadyErroring\n };\n });\n\n if (wasAlreadyErroring === false) {\n WritableStreamStartErroring(stream, error);\n }\n\n return promise;\n}\n\n// WritableStream API exposed for controllers.\n\nfunction WritableStreamAddWriteRequest(stream) {\n assert(IsWritableStreamLocked(stream) === true);\n assert(stream._state === 'writable');\n\n var promise = new Promise(function (resolve, reject) {\n var writeRequest = {\n _resolve: resolve,\n _reject: reject\n };\n\n stream._writeRequests.push(writeRequest);\n });\n\n return promise;\n}\n\nfunction WritableStreamDealWithRejection(stream, error) {\n var state = stream._state;\n\n if (state === 'writable') {\n WritableStreamStartErroring(stream, error);\n return;\n }\n\n assert(state === 'erroring');\n WritableStreamFinishErroring(stream);\n}\n\nfunction WritableStreamStartErroring(stream, reason) {\n assert(stream._storedError === undefined, 'stream._storedError === undefined');\n assert(stream._state === 'writable', 'state must be writable');\n\n var controller = stream._writableStreamController;\n assert(controller !== undefined, 'controller must not be undefined');\n\n stream._state = 'erroring';\n stream._storedError = reason;\n var writer = stream._writer;\n if (writer !== undefined) {\n WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer, reason);\n }\n\n if (WritableStreamHasOperationMarkedInFlight(stream) === false && controller._started === true) {\n WritableStreamFinishErroring(stream);\n }\n}\n\nfunction WritableStreamFinishErroring(stream) {\n assert(stream._state === 'erroring', 'stream._state === erroring');\n assert(WritableStreamHasOperationMarkedInFlight(stream) === false, 'WritableStreamHasOperationMarkedInFlight(stream) === false');\n stream._state = 'errored';\n stream._writableStreamController.__errorSteps();\n\n var storedError = stream._storedError;\n for (var i = 0; i < stream._writeRequests.length; i++) {\n var writeRequest = stream._writeRequests[i];\n writeRequest._reject(storedError);\n }\n stream._writeRequests = [];\n\n if (stream._pendingAbortRequest === undefined) {\n WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream);\n return;\n }\n\n var abortRequest = stream._pendingAbortRequest;\n stream._pendingAbortRequest = undefined;\n\n if (abortRequest._wasAlreadyErroring === true) {\n abortRequest._reject(storedError);\n WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream);\n return;\n }\n\n var promise = stream._writableStreamController.__abortSteps(abortRequest._reason);\n promise.then(function () {\n abortRequest._resolve();\n WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream);\n }, function (reason) {\n abortRequest._reject(reason);\n WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream);\n });\n}\n\nfunction WritableStreamFinishInFlightWrite(stream) {\n assert(stream._inFlightWriteRequest !== undefined);\n stream._inFlightWriteRequest._resolve(undefined);\n stream._inFlightWriteRequest = undefined;\n}\n\nfunction WritableStreamFinishInFlightWriteWithError(stream, error) {\n assert(stream._inFlightWriteRequest !== undefined);\n stream._inFlightWriteRequest._reject(error);\n stream._inFlightWriteRequest = undefined;\n\n assert(stream._state === 'writable' || stream._state === 'erroring');\n\n WritableStreamDealWithRejection(stream, error);\n}\n\nfunction WritableStreamFinishInFlightClose(stream) {\n assert(stream._inFlightCloseRequest !== undefined);\n stream._inFlightCloseRequest._resolve(undefined);\n stream._inFlightCloseRequest = undefined;\n\n var state = stream._state;\n\n assert(state === 'writable' || state === 'erroring');\n\n if (state === 'erroring') {\n // The error was too late to do anything, so it is ignored.\n stream._storedError = undefined;\n if (stream._pendingAbortRequest !== undefined) {\n stream._pendingAbortRequest._resolve();\n stream._pendingAbortRequest = undefined;\n }\n }\n\n stream._state = 'closed';\n\n var writer = stream._writer;\n if (writer !== undefined) {\n defaultWriterClosedPromiseResolve(writer);\n }\n\n assert(stream._pendingAbortRequest === undefined, 'stream._pendingAbortRequest === undefined');\n assert(stream._storedError === undefined, 'stream._storedError === undefined');\n}\n\nfunction WritableStreamFinishInFlightCloseWithError(stream, error) {\n assert(stream._inFlightCloseRequest !== undefined);\n stream._inFlightCloseRequest._reject(error);\n stream._inFlightCloseRequest = undefined;\n\n assert(stream._state === 'writable' || stream._state === 'erroring');\n\n // Never execute sink abort() after sink close().\n if (stream._pendingAbortRequest !== undefined) {\n stream._pendingAbortRequest._reject(error);\n stream._pendingAbortRequest = undefined;\n }\n WritableStreamDealWithRejection(stream, error);\n}\n\n// TODO(ricea): Fix alphabetical order.\nfunction WritableStreamCloseQueuedOrInFlight(stream) {\n if (stream._closeRequest === undefined && stream._inFlightCloseRequest === undefined) {\n return false;\n }\n\n return true;\n}\n\nfunction WritableStreamHasOperationMarkedInFlight(stream) {\n if (stream._inFlightWriteRequest === undefined && stream._inFlightCloseRequest === undefined) {\n return false;\n }\n\n return true;\n}\n\nfunction WritableStreamMarkCloseRequestInFlight(stream) {\n assert(stream._inFlightCloseRequest === undefined);\n assert(stream._closeRequest !== undefined);\n stream._inFlightCloseRequest = stream._closeRequest;\n stream._closeRequest = undefined;\n}\n\nfunction WritableStreamMarkFirstWriteRequestInFlight(stream) {\n assert(stream._inFlightWriteRequest === undefined, 'there must be no pending write request');\n assert(stream._writeRequests.length !== 0, 'writeRequests must not be empty');\n stream._inFlightWriteRequest = stream._writeRequests.shift();\n}\n\nfunction WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream) {\n assert(stream._state === 'errored', '_stream_.[[state]] is `\"errored\"`');\n if (stream._closeRequest !== undefined) {\n assert(stream._inFlightCloseRequest === undefined);\n\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 writer._closedPromise.catch(function () {});\n }\n}\n\nfunction WritableStreamUpdateBackpressure(stream, backpressure) {\n assert(stream._state === 'writable');\n assert(WritableStreamCloseQueuedOrInFlight(stream) === false);\n\n var writer = stream._writer;\n if (writer !== undefined && backpressure !== stream._backpressure) {\n if (backpressure === true) {\n defaultWriterReadyPromiseReset(writer);\n } else {\n assert(backpressure === false);\n\n defaultWriterReadyPromiseResolve(writer);\n }\n }\n\n stream._backpressure = backpressure;\n}\n\nvar WritableStreamDefaultWriter = function () {\n function WritableStreamDefaultWriter(stream) {\n _classCallCheck(this, WritableStreamDefaultWriter);\n\n if (IsWritableStream(stream) === false) {\n throw new TypeError('WritableStreamDefaultWriter can only be constructed with a WritableStream instance');\n }\n if (IsWritableStreamLocked(stream) === true) {\n throw new TypeError('This stream has already been locked for exclusive writing by another writer');\n }\n\n this._ownerWritableStream = stream;\n stream._writer = this;\n\n var state = stream._state;\n\n if (state === 'writable') {\n if (WritableStreamCloseQueuedOrInFlight(stream) === false && stream._backpressure === true) {\n defaultWriterReadyPromiseInitialize(this);\n } else {\n defaultWriterReadyPromiseInitializeAsResolved(this);\n }\n\n defaultWriterClosedPromiseInitialize(this);\n } else if (state === 'erroring') {\n defaultWriterReadyPromiseInitializeAsRejected(this, stream._storedError);\n this._readyPromise.catch(function () {});\n defaultWriterClosedPromiseInitialize(this);\n } else if (state === 'closed') {\n defaultWriterReadyPromiseInitializeAsResolved(this);\n defaultWriterClosedPromiseInitializeAsResolved(this);\n } else {\n assert(state === 'errored', 'state must be errored');\n\n var storedError = stream._storedError;\n defaultWriterReadyPromiseInitializeAsRejected(this, storedError);\n this._readyPromise.catch(function () {});\n defaultWriterClosedPromiseInitializeAsRejected(this, storedError);\n this._closedPromise.catch(function () {});\n }\n }\n\n _createClass(WritableStreamDefaultWriter, [{\n key: 'abort',\n value: function abort(reason) {\n if (IsWritableStreamDefaultWriter(this) === false) {\n return Promise.reject(defaultWriterBrandCheckException('abort'));\n }\n\n if (this._ownerWritableStream === undefined) {\n return Promise.reject(defaultWriterLockException('abort'));\n }\n\n return WritableStreamDefaultWriterAbort(this, reason);\n }\n }, {\n key: 'close',\n value: function close() {\n if (IsWritableStreamDefaultWriter(this) === false) {\n return Promise.reject(defaultWriterBrandCheckException('close'));\n }\n\n var stream = this._ownerWritableStream;\n\n if (stream === undefined) {\n return Promise.reject(defaultWriterLockException('close'));\n }\n\n if (WritableStreamCloseQueuedOrInFlight(stream) === true) {\n return Promise.reject(new TypeError('cannot close an already-closing stream'));\n }\n\n return WritableStreamDefaultWriterClose(this);\n }\n }, {\n key: 'releaseLock',\n value: function releaseLock() {\n if (IsWritableStreamDefaultWriter(this) === false) {\n throw defaultWriterBrandCheckException('releaseLock');\n }\n\n var stream = this._ownerWritableStream;\n\n if (stream === undefined) {\n return;\n }\n\n assert(stream._writer !== undefined);\n\n WritableStreamDefaultWriterRelease(this);\n }\n }, {\n key: 'write',\n value: function write(chunk) {\n if (IsWritableStreamDefaultWriter(this) === false) {\n return Promise.reject(defaultWriterBrandCheckException('write'));\n }\n\n if (this._ownerWritableStream === undefined) {\n return Promise.reject(defaultWriterLockException('write to'));\n }\n\n return WritableStreamDefaultWriterWrite(this, chunk);\n }\n }, {\n key: 'closed',\n get: function get() {\n if (IsWritableStreamDefaultWriter(this) === false) {\n return Promise.reject(defaultWriterBrandCheckException('closed'));\n }\n\n return this._closedPromise;\n }\n }, {\n key: 'desiredSize',\n get: function get() {\n if (IsWritableStreamDefaultWriter(this) === false) {\n throw defaultWriterBrandCheckException('desiredSize');\n }\n\n if (this._ownerWritableStream === undefined) {\n throw defaultWriterLockException('desiredSize');\n }\n\n return WritableStreamDefaultWriterGetDesiredSize(this);\n }\n }, {\n key: 'ready',\n get: function get() {\n if (IsWritableStreamDefaultWriter(this) === false) {\n return Promise.reject(defaultWriterBrandCheckException('ready'));\n }\n\n return this._readyPromise;\n }\n }]);\n\n return WritableStreamDefaultWriter;\n}();\n\n// Abstract operations for the WritableStreamDefaultWriter.\n\nfunction IsWritableStreamDefaultWriter(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n\n if (!Object.prototype.hasOwnProperty.call(x, '_ownerWritableStream')) {\n return false;\n }\n\n return true;\n}\n\n// A client of WritableStreamDefaultWriter may use these functions directly to bypass state check.\n\nfunction WritableStreamDefaultWriterAbort(writer, reason) {\n var stream = writer._ownerWritableStream;\n\n assert(stream !== undefined);\n\n return WritableStreamAbort(stream, reason);\n}\n\nfunction WritableStreamDefaultWriterClose(writer) {\n var stream = writer._ownerWritableStream;\n\n assert(stream !== undefined);\n\n var state = stream._state;\n if (state === 'closed' || state === 'errored') {\n return Promise.reject(new TypeError('The stream (in ' + state + ' state) is not in the writable state and cannot be closed'));\n }\n\n assert(state === 'writable' || state === 'erroring');\n assert(WritableStreamCloseQueuedOrInFlight(stream) === false);\n\n var promise = new Promise(function (resolve, reject) {\n var closeRequest = {\n _resolve: resolve,\n _reject: reject\n };\n\n stream._closeRequest = closeRequest;\n });\n\n if (stream._backpressure === true && state === 'writable') {\n defaultWriterReadyPromiseResolve(writer);\n }\n\n WritableStreamDefaultControllerClose(stream._writableStreamController);\n\n return promise;\n}\n\nfunction WritableStreamDefaultWriterCloseWithErrorPropagation(writer) {\n var stream = writer._ownerWritableStream;\n\n assert(stream !== undefined);\n\n var state = stream._state;\n if (WritableStreamCloseQueuedOrInFlight(stream) === true || state === 'closed') {\n return Promise.resolve();\n }\n\n if (state === 'errored') {\n return Promise.reject(stream._storedError);\n }\n\n assert(state === 'writable' || state === 'erroring');\n\n return WritableStreamDefaultWriterClose(writer);\n}\n\nfunction WritableStreamDefaultWriterEnsureClosedPromiseRejected(writer, error) {\n if (writer._closedPromiseState === 'pending') {\n defaultWriterClosedPromiseReject(writer, error);\n } else {\n defaultWriterClosedPromiseResetToRejected(writer, error);\n }\n writer._closedPromise.catch(function () {});\n}\n\nfunction WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer, error) {\n if (writer._readyPromiseState === 'pending') {\n defaultWriterReadyPromiseReject(writer, error);\n } else {\n defaultWriterReadyPromiseResetToRejected(writer, error);\n }\n writer._readyPromise.catch(function () {});\n}\n\nfunction WritableStreamDefaultWriterGetDesiredSize(writer) {\n var stream = writer._ownerWritableStream;\n var state = stream._state;\n\n if (state === 'errored' || state === 'erroring') {\n return null;\n }\n\n if (state === 'closed') {\n return 0;\n }\n\n return WritableStreamDefaultControllerGetDesiredSize(stream._writableStreamController);\n}\n\nfunction WritableStreamDefaultWriterRelease(writer) {\n var stream = writer._ownerWritableStream;\n assert(stream !== undefined);\n assert(stream._writer === writer);\n\n var releasedError = new TypeError('Writer was released and can no longer be used to monitor the stream\\'s closedness');\n\n WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer, releasedError);\n\n // The state transitions to \"errored\" before the sink abort() method runs, but the writer.closed promise is not\n // rejected until afterwards. This means that simply testing state will not work.\n WritableStreamDefaultWriterEnsureClosedPromiseRejected(writer, releasedError);\n\n stream._writer = undefined;\n writer._ownerWritableStream = undefined;\n}\n\nfunction WritableStreamDefaultWriterWrite(writer, chunk) {\n var stream = writer._ownerWritableStream;\n\n assert(stream !== undefined);\n\n var controller = stream._writableStreamController;\n\n var chunkSize = WritableStreamDefaultControllerGetChunkSize(controller, chunk);\n\n if (stream !== writer._ownerWritableStream) {\n return Promise.reject(defaultWriterLockException('write to'));\n }\n\n var state = stream._state;\n if (state === 'errored') {\n return Promise.reject(stream._storedError);\n }\n if (WritableStreamCloseQueuedOrInFlight(stream) === true || state === 'closed') {\n return Promise.reject(new TypeError('The stream is closing or closed and cannot be written to'));\n }\n if (state === 'erroring') {\n return Promise.reject(stream._storedError);\n }\n\n assert(state === 'writable');\n\n var promise = WritableStreamAddWriteRequest(stream);\n\n WritableStreamDefaultControllerWrite(controller, chunk, chunkSize);\n\n return promise;\n}\n\nvar WritableStreamDefaultController = function () {\n function WritableStreamDefaultController(stream, underlyingSink, size, highWaterMark) {\n _classCallCheck(this, WritableStreamDefaultController);\n\n if (IsWritableStream(stream) === false) {\n throw new TypeError('WritableStreamDefaultController can only be constructed with a WritableStream instance');\n }\n\n if (stream._writableStreamController !== undefined) {\n throw new TypeError('WritableStreamDefaultController instances can only be created by the WritableStream constructor');\n }\n\n this._controlledWritableStream = stream;\n\n this._underlyingSink = underlyingSink;\n\n // Need to set the slots so that the assert doesn't fire. In the spec the slots already exist implicitly.\n this._queue = undefined;\n this._queueTotalSize = undefined;\n ResetQueue(this);\n\n this._started = false;\n\n var normalizedStrategy = ValidateAndNormalizeQueuingStrategy(size, highWaterMark);\n this._strategySize = normalizedStrategy.size;\n this._strategyHWM = normalizedStrategy.highWaterMark;\n\n var backpressure = WritableStreamDefaultControllerGetBackpressure(this);\n WritableStreamUpdateBackpressure(stream, backpressure);\n }\n\n _createClass(WritableStreamDefaultController, [{\n key: 'error',\n value: function error(e) {\n if (IsWritableStreamDefaultController(this) === false) {\n throw new TypeError('WritableStreamDefaultController.prototype.error can only be used on a WritableStreamDefaultController');\n }\n var state = this._controlledWritableStream._state;\n if (state !== 'writable') {\n // The stream is closed, errored or will be soon. The sink can't do anything useful if it gets an error here, so\n // just treat it as a no-op.\n return;\n }\n\n WritableStreamDefaultControllerError(this, e);\n }\n }, {\n key: '__abortSteps',\n value: function __abortSteps(reason) {\n return PromiseInvokeOrNoop(this._underlyingSink, 'abort', [reason]);\n }\n }, {\n key: '__errorSteps',\n value: function __errorSteps() {\n ResetQueue(this);\n }\n }, {\n key: '__startSteps',\n value: function __startSteps() {\n var _this = this;\n\n var startResult = InvokeOrNoop(this._underlyingSink, 'start', [this]);\n var stream = this._controlledWritableStream;\n\n Promise.resolve(startResult).then(function () {\n assert(stream._state === 'writable' || stream._state === 'erroring');\n _this._started = true;\n WritableStreamDefaultControllerAdvanceQueueIfNeeded(_this);\n }, function (r) {\n assert(stream._state === 'writable' || stream._state === 'erroring');\n _this._started = true;\n WritableStreamDealWithRejection(stream, r);\n }).catch(rethrowAssertionErrorRejection);\n }\n }]);\n\n return WritableStreamDefaultController;\n}();\n\n// Abstract operations implementing interface required by the WritableStream.\n\nfunction WritableStreamDefaultControllerClose(controller) {\n EnqueueValueWithSize(controller, 'close', 0);\n WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller);\n}\n\nfunction WritableStreamDefaultControllerGetChunkSize(controller, chunk) {\n var strategySize = controller._strategySize;\n\n if (strategySize === undefined) {\n return 1;\n }\n\n try {\n return strategySize(chunk);\n } catch (chunkSizeE) {\n WritableStreamDefaultControllerErrorIfNeeded(controller, chunkSizeE);\n return 1;\n }\n}\n\nfunction WritableStreamDefaultControllerGetDesiredSize(controller) {\n return controller._strategyHWM - controller._queueTotalSize;\n}\n\nfunction WritableStreamDefaultControllerWrite(controller, chunk, chunkSize) {\n var writeRecord = { chunk: chunk };\n\n try {\n EnqueueValueWithSize(controller, writeRecord, chunkSize);\n } catch (enqueueE) {\n WritableStreamDefaultControllerErrorIfNeeded(controller, enqueueE);\n return;\n }\n\n var stream = controller._controlledWritableStream;\n if (WritableStreamCloseQueuedOrInFlight(stream) === false && stream._state === 'writable') {\n var backpressure = WritableStreamDefaultControllerGetBackpressure(controller);\n WritableStreamUpdateBackpressure(stream, backpressure);\n }\n\n WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller);\n}\n\n// Abstract operations for the WritableStreamDefaultController.\n\nfunction IsWritableStreamDefaultController(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n\n if (!Object.prototype.hasOwnProperty.call(x, '_underlyingSink')) {\n return false;\n }\n\n return true;\n}\n\nfunction WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller) {\n var stream = controller._controlledWritableStream;\n\n if (controller._started === false) {\n return;\n }\n\n if (stream._inFlightWriteRequest !== undefined) {\n return;\n }\n\n var state = stream._state;\n if (state === 'closed' || state === 'errored') {\n return;\n }\n if (state === 'erroring') {\n WritableStreamFinishErroring(stream);\n return;\n }\n\n if (controller._queue.length === 0) {\n return;\n }\n\n var writeRecord = PeekQueueValue(controller);\n if (writeRecord === 'close') {\n WritableStreamDefaultControllerProcessClose(controller);\n } else {\n WritableStreamDefaultControllerProcessWrite(controller, writeRecord.chunk);\n }\n}\n\nfunction WritableStreamDefaultControllerErrorIfNeeded(controller, error) {\n if (controller._controlledWritableStream._state === 'writable') {\n WritableStreamDefaultControllerError(controller, error);\n }\n}\n\nfunction WritableStreamDefaultControllerProcessClose(controller) {\n var stream = controller._controlledWritableStream;\n\n WritableStreamMarkCloseRequestInFlight(stream);\n\n DequeueValue(controller);\n assert(controller._queue.length === 0, 'queue must be empty once the final write record is dequeued');\n\n var sinkClosePromise = PromiseInvokeOrNoop(controller._underlyingSink, 'close', []);\n sinkClosePromise.then(function () {\n WritableStreamFinishInFlightClose(stream);\n }, function (reason) {\n WritableStreamFinishInFlightCloseWithError(stream, reason);\n }).catch(rethrowAssertionErrorRejection);\n}\n\nfunction WritableStreamDefaultControllerProcessWrite(controller, chunk) {\n var stream = controller._controlledWritableStream;\n\n WritableStreamMarkFirstWriteRequestInFlight(stream);\n\n var sinkWritePromise = PromiseInvokeOrNoop(controller._underlyingSink, 'write', [chunk, controller]);\n sinkWritePromise.then(function () {\n WritableStreamFinishInFlightWrite(stream);\n\n var state = stream._state;\n assert(state === 'writable' || state === 'erroring');\n\n DequeueValue(controller);\n\n if (WritableStreamCloseQueuedOrInFlight(stream) === false && state === 'writable') {\n var backpressure = WritableStreamDefaultControllerGetBackpressure(controller);\n WritableStreamUpdateBackpressure(stream, backpressure);\n }\n\n WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller);\n }, function (reason) {\n WritableStreamFinishInFlightWriteWithError(stream, reason);\n }).catch(rethrowAssertionErrorRejection);\n}\n\nfunction WritableStreamDefaultControllerGetBackpressure(controller) {\n var desiredSize = WritableStreamDefaultControllerGetDesiredSize(controller);\n return desiredSize <= 0;\n}\n\n// A client of WritableStreamDefaultController may use these functions directly to bypass state check.\n\nfunction WritableStreamDefaultControllerError(controller, error) {\n var stream = controller._controlledWritableStream;\n\n assert(stream._state === 'writable');\n\n WritableStreamStartErroring(stream, error);\n}\n\n// Helper functions for the WritableStream.\n\nfunction streamBrandCheckException(name) {\n return new TypeError('WritableStream.prototype.' + name + ' can only be used on a WritableStream');\n}\n\n// Helper functions for the WritableStreamDefaultWriter.\n\nfunction defaultWriterBrandCheckException(name) {\n return new TypeError('WritableStreamDefaultWriter.prototype.' + name + ' can only be used on a WritableStreamDefaultWriter');\n}\n\nfunction defaultWriterLockException(name) {\n return new TypeError('Cannot ' + name + ' a stream using a released writer');\n}\n\nfunction defaultWriterClosedPromiseInitialize(writer) {\n writer._closedPromise = new Promise(function (resolve, reject) {\n writer._closedPromise_resolve = resolve;\n writer._closedPromise_reject = reject;\n writer._closedPromiseState = 'pending';\n });\n}\n\nfunction defaultWriterClosedPromiseInitializeAsRejected(writer, reason) {\n writer._closedPromise = Promise.reject(reason);\n writer._closedPromise_resolve = undefined;\n writer._closedPromise_reject = undefined;\n writer._closedPromiseState = 'rejected';\n}\n\nfunction defaultWriterClosedPromiseInitializeAsResolved(writer) {\n writer._closedPromise = Promise.resolve(undefined);\n writer._closedPromise_resolve = undefined;\n writer._closedPromise_reject = undefined;\n writer._closedPromiseState = 'resolved';\n}\n\nfunction defaultWriterClosedPromiseReject(writer, reason) {\n assert(writer._closedPromise_resolve !== undefined, 'writer._closedPromise_resolve !== undefined');\n assert(writer._closedPromise_reject !== undefined, 'writer._closedPromise_reject !== undefined');\n assert(writer._closedPromiseState === 'pending', 'writer._closedPromiseState is pending');\n\n writer._closedPromise_reject(reason);\n writer._closedPromise_resolve = undefined;\n writer._closedPromise_reject = undefined;\n writer._closedPromiseState = 'rejected';\n}\n\nfunction defaultWriterClosedPromiseResetToRejected(writer, reason) {\n assert(writer._closedPromise_resolve === undefined, 'writer._closedPromise_resolve === undefined');\n assert(writer._closedPromise_reject === undefined, 'writer._closedPromise_reject === undefined');\n assert(writer._closedPromiseState !== 'pending', 'writer._closedPromiseState is not pending');\n\n writer._closedPromise = Promise.reject(reason);\n writer._closedPromiseState = 'rejected';\n}\n\nfunction defaultWriterClosedPromiseResolve(writer) {\n assert(writer._closedPromise_resolve !== undefined, 'writer._closedPromise_resolve !== undefined');\n assert(writer._closedPromise_reject !== undefined, 'writer._closedPromise_reject !== undefined');\n assert(writer._closedPromiseState === 'pending', 'writer._closedPromiseState is pending');\n\n writer._closedPromise_resolve(undefined);\n writer._closedPromise_resolve = undefined;\n writer._closedPromise_reject = undefined;\n writer._closedPromiseState = 'resolved';\n}\n\nfunction defaultWriterReadyPromiseInitialize(writer) {\n writer._readyPromise = new Promise(function (resolve, reject) {\n writer._readyPromise_resolve = resolve;\n writer._readyPromise_reject = reject;\n });\n writer._readyPromiseState = 'pending';\n}\n\nfunction defaultWriterReadyPromiseInitializeAsRejected(writer, reason) {\n writer._readyPromise = Promise.reject(reason);\n writer._readyPromise_resolve = undefined;\n writer._readyPromise_reject = undefined;\n writer._readyPromiseState = 'rejected';\n}\n\nfunction defaultWriterReadyPromiseInitializeAsResolved(writer) {\n writer._readyPromise = Promise.resolve(undefined);\n writer._readyPromise_resolve = undefined;\n writer._readyPromise_reject = undefined;\n writer._readyPromiseState = 'fulfilled';\n}\n\nfunction defaultWriterReadyPromiseReject(writer, reason) {\n assert(writer._readyPromise_resolve !== undefined, 'writer._readyPromise_resolve !== undefined');\n assert(writer._readyPromise_reject !== undefined, 'writer._readyPromise_reject !== undefined');\n\n writer._readyPromise_reject(reason);\n writer._readyPromise_resolve = undefined;\n writer._readyPromise_reject = undefined;\n writer._readyPromiseState = 'rejected';\n}\n\nfunction defaultWriterReadyPromiseReset(writer) {\n assert(writer._readyPromise_resolve === undefined, 'writer._readyPromise_resolve === undefined');\n assert(writer._readyPromise_reject === undefined, 'writer._readyPromise_reject === undefined');\n\n writer._readyPromise = new Promise(function (resolve, reject) {\n writer._readyPromise_resolve = resolve;\n writer._readyPromise_reject = reject;\n });\n writer._readyPromiseState = 'pending';\n}\n\nfunction defaultWriterReadyPromiseResetToRejected(writer, reason) {\n assert(writer._readyPromise_resolve === undefined, 'writer._readyPromise_resolve === undefined');\n assert(writer._readyPromise_reject === undefined, 'writer._readyPromise_reject === undefined');\n\n writer._readyPromise = Promise.reject(reason);\n writer._readyPromiseState = 'rejected';\n}\n\nfunction defaultWriterReadyPromiseResolve(writer) {\n assert(writer._readyPromise_resolve !== undefined, 'writer._readyPromise_resolve !== undefined');\n assert(writer._readyPromise_reject !== undefined, 'writer._readyPromise_reject !== undefined');\n\n writer._readyPromise_resolve(undefined);\n writer._readyPromise_resolve = undefined;\n writer._readyPromise_reject = undefined;\n writer._readyPromiseState = 'fulfilled';\n}\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports, __w_pdfjs_require__) {\n\n\"use strict\";\n\n\nvar _require = __w_pdfjs_require__(0),\n IsFiniteNonNegativeNumber = _require.IsFiniteNonNegativeNumber;\n\nvar _require2 = __w_pdfjs_require__(1),\n assert = _require2.assert;\n\nexports.DequeueValue = function (container) {\n assert('_queue' in container && '_queueTotalSize' in container, 'Spec-level failure: DequeueValue should only be used on containers with [[queue]] and [[queueTotalSize]].');\n assert(container._queue.length > 0, 'Spec-level failure: should never dequeue from an empty queue.');\n\n var pair = container._queue.shift();\n container._queueTotalSize -= pair.size;\n if (container._queueTotalSize < 0) {\n container._queueTotalSize = 0;\n }\n\n return pair.value;\n};\n\nexports.EnqueueValueWithSize = function (container, value, size) {\n assert('_queue' in container && '_queueTotalSize' in container, 'Spec-level failure: EnqueueValueWithSize should only be used on containers with [[queue]] and ' + '[[queueTotalSize]].');\n\n size = Number(size);\n if (!IsFiniteNonNegativeNumber(size)) {\n throw new RangeError('Size must be a finite, non-NaN, non-negative number.');\n }\n\n container._queue.push({ value: value, size: size });\n container._queueTotalSize += size;\n};\n\nexports.PeekQueueValue = function (container) {\n assert('_queue' in container && '_queueTotalSize' in container, 'Spec-level failure: PeekQueueValue should only be used on containers with [[queue]] and [[queueTotalSize]].');\n assert(container._queue.length > 0, 'Spec-level failure: should never peek at an empty queue.');\n\n var pair = container._queue[0];\n return pair.value;\n};\n\nexports.ResetQueue = function (container) {\n assert('_queue' in container && '_queueTotalSize' in container, 'Spec-level failure: ResetQueue should only be used on containers with [[queue]] and [[queueTotalSize]].');\n\n container._queue = [];\n container._queueTotalSize = 0;\n};\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __w_pdfjs_require__) {\n\n\"use strict\";\n\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar _require = __w_pdfjs_require__(0),\n ArrayBufferCopy = _require.ArrayBufferCopy,\n CreateIterResultObject = _require.CreateIterResultObject,\n IsFiniteNonNegativeNumber = _require.IsFiniteNonNegativeNumber,\n InvokeOrNoop = _require.InvokeOrNoop,\n PromiseInvokeOrNoop = _require.PromiseInvokeOrNoop,\n TransferArrayBuffer = _require.TransferArrayBuffer,\n ValidateAndNormalizeQueuingStrategy = _require.ValidateAndNormalizeQueuingStrategy,\n ValidateAndNormalizeHighWaterMark = _require.ValidateAndNormalizeHighWaterMark;\n\nvar _require2 = __w_pdfjs_require__(0),\n createArrayFromList = _require2.createArrayFromList,\n createDataProperty = _require2.createDataProperty,\n typeIsObject = _require2.typeIsObject;\n\nvar _require3 = __w_pdfjs_require__(1),\n assert = _require3.assert,\n rethrowAssertionErrorRejection = _require3.rethrowAssertionErrorRejection;\n\nvar _require4 = __w_pdfjs_require__(3),\n DequeueValue = _require4.DequeueValue,\n EnqueueValueWithSize = _require4.EnqueueValueWithSize,\n ResetQueue = _require4.ResetQueue;\n\nvar _require5 = __w_pdfjs_require__(2),\n AcquireWritableStreamDefaultWriter = _require5.AcquireWritableStreamDefaultWriter,\n IsWritableStream = _require5.IsWritableStream,\n IsWritableStreamLocked = _require5.IsWritableStreamLocked,\n WritableStreamAbort = _require5.WritableStreamAbort,\n WritableStreamDefaultWriterCloseWithErrorPropagation = _require5.WritableStreamDefaultWriterCloseWithErrorPropagation,\n WritableStreamDefaultWriterRelease = _require5.WritableStreamDefaultWriterRelease,\n WritableStreamDefaultWriterWrite = _require5.WritableStreamDefaultWriterWrite,\n WritableStreamCloseQueuedOrInFlight = _require5.WritableStreamCloseQueuedOrInFlight;\n\nvar ReadableStream = function () {\n function ReadableStream() {\n var underlyingSource = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n size = _ref.size,\n highWaterMark = _ref.highWaterMark;\n\n _classCallCheck(this, ReadableStream);\n\n // Exposed to controllers.\n this._state = 'readable';\n\n this._reader = undefined;\n this._storedError = undefined;\n\n this._disturbed = false;\n\n // Initialize to undefined first because the constructor of the controller checks this\n // variable to validate the caller.\n this._readableStreamController = undefined;\n var type = underlyingSource.type;\n var typeString = String(type);\n if (typeString === 'bytes') {\n if (highWaterMark === undefined) {\n highWaterMark = 0;\n }\n this._readableStreamController = new ReadableByteStreamController(this, underlyingSource, highWaterMark);\n } else if (type === undefined) {\n if (highWaterMark === undefined) {\n highWaterMark = 1;\n }\n this._readableStreamController = new ReadableStreamDefaultController(this, underlyingSource, size, highWaterMark);\n } else {\n throw new RangeError('Invalid type is specified');\n }\n }\n\n _createClass(ReadableStream, [{\n key: 'cancel',\n value: function cancel(reason) {\n if (IsReadableStream(this) === false) {\n return Promise.reject(streamBrandCheckException('cancel'));\n }\n\n if (IsReadableStreamLocked(this) === true) {\n return Promise.reject(new TypeError('Cannot cancel a stream that already has a reader'));\n }\n\n return ReadableStreamCancel(this, reason);\n }\n }, {\n key: 'getReader',\n value: function getReader() {\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n mode = _ref2.mode;\n\n if (IsReadableStream(this) === false) {\n throw streamBrandCheckException('getReader');\n }\n\n if (mode === undefined) {\n return AcquireReadableStreamDefaultReader(this);\n }\n\n mode = String(mode);\n\n if (mode === 'byob') {\n return AcquireReadableStreamBYOBReader(this);\n }\n\n throw new RangeError('Invalid mode is specified');\n }\n }, {\n key: 'pipeThrough',\n value: function pipeThrough(_ref3, options) {\n var writable = _ref3.writable,\n readable = _ref3.readable;\n\n var promise = this.pipeTo(writable, options);\n\n ifIsObjectAndHasAPromiseIsHandledInternalSlotSetPromiseIsHandledToTrue(promise);\n\n return readable;\n }\n }, {\n key: 'pipeTo',\n value: function pipeTo(dest) {\n var _this = this;\n\n var _ref4 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n preventClose = _ref4.preventClose,\n preventAbort = _ref4.preventAbort,\n preventCancel = _ref4.preventCancel;\n\n if (IsReadableStream(this) === false) {\n return Promise.reject(streamBrandCheckException('pipeTo'));\n }\n if (IsWritableStream(dest) === false) {\n return Promise.reject(new TypeError('ReadableStream.prototype.pipeTo\\'s first argument must be a WritableStream'));\n }\n\n preventClose = Boolean(preventClose);\n preventAbort = Boolean(preventAbort);\n preventCancel = Boolean(preventCancel);\n\n if (IsReadableStreamLocked(this) === true) {\n return Promise.reject(new TypeError('ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream'));\n }\n if (IsWritableStreamLocked(dest) === true) {\n return Promise.reject(new TypeError('ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream'));\n }\n\n var reader = AcquireReadableStreamDefaultReader(this);\n var writer = AcquireWritableStreamDefaultWriter(dest);\n\n var shuttingDown = false;\n\n // This is used to keep track of the spec's requirement that we wait for ongoing writes during shutdown.\n var currentWrite = Promise.resolve();\n\n return new Promise(function (resolve, reject) {\n // Using reader and writer, read all chunks from this and write them to dest\n // - Backpressure must be enforced\n // - Shutdown must stop all activity\n function pipeLoop() {\n currentWrite = Promise.resolve();\n\n if (shuttingDown === true) {\n return Promise.resolve();\n }\n\n return writer._readyPromise.then(function () {\n return ReadableStreamDefaultReaderRead(reader).then(function (_ref5) {\n var value = _ref5.value,\n done = _ref5.done;\n\n if (done === true) {\n return;\n }\n\n currentWrite = WritableStreamDefaultWriterWrite(writer, value).catch(function () {});\n });\n }).then(pipeLoop);\n }\n\n // Errors must be propagated forward\n isOrBecomesErrored(_this, reader._closedPromise, function (storedError) {\n if (preventAbort === false) {\n shutdownWithAction(function () {\n return WritableStreamAbort(dest, storedError);\n }, true, storedError);\n } else {\n shutdown(true, storedError);\n }\n });\n\n // Errors must be propagated backward\n isOrBecomesErrored(dest, writer._closedPromise, function (storedError) {\n if (preventCancel === false) {\n shutdownWithAction(function () {\n return ReadableStreamCancel(_this, storedError);\n }, true, storedError);\n } else {\n shutdown(true, storedError);\n }\n });\n\n // Closing must be propagated forward\n isOrBecomesClosed(_this, reader._closedPromise, function () {\n if (preventClose === false) {\n shutdownWithAction(function () {\n return WritableStreamDefaultWriterCloseWithErrorPropagation(writer);\n });\n } else {\n shutdown();\n }\n });\n\n // Closing must be propagated backward\n if (WritableStreamCloseQueuedOrInFlight(dest) === true || dest._state === 'closed') {\n var destClosed = new TypeError('the destination writable stream closed before all data could be piped to it');\n\n if (preventCancel === false) {\n shutdownWithAction(function () {\n return ReadableStreamCancel(_this, destClosed);\n }, true, destClosed);\n } else {\n shutdown(true, destClosed);\n }\n }\n\n pipeLoop().catch(function (err) {\n currentWrite = Promise.resolve();\n rethrowAssertionErrorRejection(err);\n });\n\n function waitForWritesToFinish() {\n // Another write may have started while we were waiting on this currentWrite, so we have to be sure to wait\n // for that too.\n var oldCurrentWrite = currentWrite;\n return currentWrite.then(function () {\n return oldCurrentWrite !== currentWrite ? waitForWritesToFinish() : undefined;\n });\n }\n\n function isOrBecomesErrored(stream, promise, action) {\n if (stream._state === 'errored') {\n action(stream._storedError);\n } else {\n promise.catch(action).catch(rethrowAssertionErrorRejection);\n }\n }\n\n function isOrBecomesClosed(stream, promise, action) {\n if (stream._state === 'closed') {\n action();\n } else {\n promise.then(action).catch(rethrowAssertionErrorRejection);\n }\n }\n\n function shutdownWithAction(action, originalIsError, originalError) {\n if (shuttingDown === true) {\n return;\n }\n shuttingDown = true;\n\n if (dest._state === 'writable' && WritableStreamCloseQueuedOrInFlight(dest) === false) {\n waitForWritesToFinish().then(doTheRest);\n } else {\n doTheRest();\n }\n\n function doTheRest() {\n action().then(function () {\n return finalize(originalIsError, originalError);\n }, function (newError) {\n return finalize(true, newError);\n }).catch(rethrowAssertionErrorRejection);\n }\n }\n\n function shutdown(isError, error) {\n if (shuttingDown === true) {\n return;\n }\n shuttingDown = true;\n\n if (dest._state === 'writable' && WritableStreamCloseQueuedOrInFlight(dest) === false) {\n waitForWritesToFinish().then(function () {\n return finalize(isError, error);\n }).catch(rethrowAssertionErrorRejection);\n } else {\n finalize(isError, error);\n }\n }\n\n function finalize(isError, error) {\n WritableStreamDefaultWriterRelease(writer);\n ReadableStreamReaderGenericRelease(reader);\n\n if (isError) {\n reject(error);\n } else {\n resolve(undefined);\n }\n }\n });\n }\n }, {\n key: 'tee',\n value: function tee() {\n if (IsReadableStream(this) === false) {\n throw streamBrandCheckException('tee');\n }\n\n var branches = ReadableStreamTee(this, false);\n return createArrayFromList(branches);\n }\n }, {\n key: 'locked',\n get: function get() {\n if (IsReadableStream(this) === false) {\n throw streamBrandCheckException('locked');\n }\n\n return IsReadableStreamLocked(this);\n }\n }]);\n\n return ReadableStream;\n}();\n\nmodule.exports = {\n ReadableStream: ReadableStream,\n IsReadableStreamDisturbed: IsReadableStreamDisturbed,\n ReadableStreamDefaultControllerClose: ReadableStreamDefaultControllerClose,\n ReadableStreamDefaultControllerEnqueue: ReadableStreamDefaultControllerEnqueue,\n ReadableStreamDefaultControllerError: ReadableStreamDefaultControllerError,\n ReadableStreamDefaultControllerGetDesiredSize: ReadableStreamDefaultControllerGetDesiredSize\n};\n\n// Abstract operations for the ReadableStream.\n\nfunction AcquireReadableStreamBYOBReader(stream) {\n return new ReadableStreamBYOBReader(stream);\n}\n\nfunction AcquireReadableStreamDefaultReader(stream) {\n return new ReadableStreamDefaultReader(stream);\n}\n\nfunction IsReadableStream(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n\n if (!Object.prototype.hasOwnProperty.call(x, '_readableStreamController')) {\n return false;\n }\n\n return true;\n}\n\nfunction IsReadableStreamDisturbed(stream) {\n assert(IsReadableStream(stream) === true, 'IsReadableStreamDisturbed should only be used on known readable streams');\n\n return stream._disturbed;\n}\n\nfunction IsReadableStreamLocked(stream) {\n assert(IsReadableStream(stream) === true, 'IsReadableStreamLocked should only be used on known readable streams');\n\n if (stream._reader === undefined) {\n return false;\n }\n\n return true;\n}\n\nfunction ReadableStreamTee(stream, cloneForBranch2) {\n assert(IsReadableStream(stream) === true);\n assert(typeof cloneForBranch2 === 'boolean');\n\n var reader = AcquireReadableStreamDefaultReader(stream);\n\n var teeState = {\n closedOrErrored: false,\n canceled1: false,\n canceled2: false,\n reason1: undefined,\n reason2: undefined\n };\n teeState.promise = new Promise(function (resolve) {\n teeState._resolve = resolve;\n });\n\n var pull = create_ReadableStreamTeePullFunction();\n pull._reader = reader;\n pull._teeState = teeState;\n pull._cloneForBranch2 = cloneForBranch2;\n\n var cancel1 = create_ReadableStreamTeeBranch1CancelFunction();\n cancel1._stream = stream;\n cancel1._teeState = teeState;\n\n var cancel2 = create_ReadableStreamTeeBranch2CancelFunction();\n cancel2._stream = stream;\n cancel2._teeState = teeState;\n\n var underlyingSource1 = Object.create(Object.prototype);\n createDataProperty(underlyingSource1, 'pull', pull);\n createDataProperty(underlyingSource1, 'cancel', cancel1);\n var branch1Stream = new ReadableStream(underlyingSource1);\n\n var underlyingSource2 = Object.create(Object.prototype);\n createDataProperty(underlyingSource2, 'pull', pull);\n createDataProperty(underlyingSource2, 'cancel', cancel2);\n var branch2Stream = new ReadableStream(underlyingSource2);\n\n pull._branch1 = branch1Stream._readableStreamController;\n pull._branch2 = branch2Stream._readableStreamController;\n\n reader._closedPromise.catch(function (r) {\n if (teeState.closedOrErrored === true) {\n return;\n }\n\n ReadableStreamDefaultControllerError(pull._branch1, r);\n ReadableStreamDefaultControllerError(pull._branch2, r);\n teeState.closedOrErrored = true;\n });\n\n return [branch1Stream, branch2Stream];\n}\n\nfunction create_ReadableStreamTeePullFunction() {\n function f() {\n var reader = f._reader,\n branch1 = f._branch1,\n branch2 = f._branch2,\n teeState = f._teeState;\n\n\n return ReadableStreamDefaultReaderRead(reader).then(function (result) {\n assert(typeIsObject(result));\n var value = result.value;\n var done = result.done;\n assert(typeof done === 'boolean');\n\n if (done === true && teeState.closedOrErrored === false) {\n if (teeState.canceled1 === false) {\n ReadableStreamDefaultControllerClose(branch1);\n }\n if (teeState.canceled2 === false) {\n ReadableStreamDefaultControllerClose(branch2);\n }\n teeState.closedOrErrored = true;\n }\n\n if (teeState.closedOrErrored === true) {\n return;\n }\n\n var value1 = value;\n var value2 = value;\n\n // There is no way to access the cloning code right now in the reference implementation.\n // If we add one then we'll need an implementation for serializable objects.\n // if (teeState.canceled2 === false && cloneForBranch2 === true) {\n // value2 = StructuredDeserialize(StructuredSerialize(value2));\n // }\n\n if (teeState.canceled1 === false) {\n ReadableStreamDefaultControllerEnqueue(branch1, value1);\n }\n\n if (teeState.canceled2 === false) {\n ReadableStreamDefaultControllerEnqueue(branch2, value2);\n }\n });\n }\n return f;\n}\n\nfunction create_ReadableStreamTeeBranch1CancelFunction() {\n function f(reason) {\n var stream = f._stream,\n teeState = f._teeState;\n\n\n teeState.canceled1 = true;\n teeState.reason1 = reason;\n if (teeState.canceled2 === true) {\n var compositeReason = createArrayFromList([teeState.reason1, teeState.reason2]);\n var cancelResult = ReadableStreamCancel(stream, compositeReason);\n teeState._resolve(cancelResult);\n }\n return teeState.promise;\n }\n return f;\n}\n\nfunction create_ReadableStreamTeeBranch2CancelFunction() {\n function f(reason) {\n var stream = f._stream,\n teeState = f._teeState;\n\n\n teeState.canceled2 = true;\n teeState.reason2 = reason;\n if (teeState.canceled1 === true) {\n var compositeReason = createArrayFromList([teeState.reason1, teeState.reason2]);\n var cancelResult = ReadableStreamCancel(stream, compositeReason);\n teeState._resolve(cancelResult);\n }\n return teeState.promise;\n }\n return f;\n}\n\n// ReadableStream API exposed for controllers.\n\nfunction ReadableStreamAddReadIntoRequest(stream) {\n assert(IsReadableStreamBYOBReader(stream._reader) === true);\n assert(stream._state === 'readable' || stream._state === 'closed');\n\n var promise = new Promise(function (resolve, reject) {\n var readIntoRequest = {\n _resolve: resolve,\n _reject: reject\n };\n\n stream._reader._readIntoRequests.push(readIntoRequest);\n });\n\n return promise;\n}\n\nfunction ReadableStreamAddReadRequest(stream) {\n assert(IsReadableStreamDefaultReader(stream._reader) === true);\n assert(stream._state === 'readable');\n\n var promise = new Promise(function (resolve, reject) {\n var readRequest = {\n _resolve: resolve,\n _reject: reject\n };\n\n stream._reader._readRequests.push(readRequest);\n });\n\n return promise;\n}\n\nfunction ReadableStreamCancel(stream, reason) {\n stream._disturbed = true;\n\n if (stream._state === 'closed') {\n return Promise.resolve(undefined);\n }\n if (stream._state === 'errored') {\n return Promise.reject(stream._storedError);\n }\n\n ReadableStreamClose(stream);\n\n var sourceCancelPromise = stream._readableStreamController.__cancelSteps(reason);\n return sourceCancelPromise.then(function () {\n return undefined;\n });\n}\n\nfunction ReadableStreamClose(stream) {\n assert(stream._state === 'readable');\n\n stream._state = 'closed';\n\n var reader = stream._reader;\n\n if (reader === undefined) {\n return undefined;\n }\n\n if (IsReadableStreamDefaultReader(reader) === true) {\n for (var i = 0; i < reader._readRequests.length; i++) {\n var _resolve = reader._readRequests[i]._resolve;\n\n _resolve(CreateIterResultObject(undefined, true));\n }\n reader._readRequests = [];\n }\n\n defaultReaderClosedPromiseResolve(reader);\n\n return undefined;\n}\n\nfunction ReadableStreamError(stream, e) {\n assert(IsReadableStream(stream) === true, 'stream must be ReadableStream');\n assert(stream._state === 'readable', 'state must be readable');\n\n stream._state = 'errored';\n stream._storedError = e;\n\n var reader = stream._reader;\n\n if (reader === undefined) {\n return undefined;\n }\n\n if (IsReadableStreamDefaultReader(reader) === true) {\n for (var i = 0; i < reader._readRequests.length; i++) {\n var readRequest = reader._readRequests[i];\n readRequest._reject(e);\n }\n\n reader._readRequests = [];\n } else {\n assert(IsReadableStreamBYOBReader(reader), 'reader must be ReadableStreamBYOBReader');\n\n for (var _i = 0; _i < reader._readIntoRequests.length; _i++) {\n var readIntoRequest = reader._readIntoRequests[_i];\n readIntoRequest._reject(e);\n }\n\n reader._readIntoRequests = [];\n }\n\n defaultReaderClosedPromiseReject(reader, e);\n reader._closedPromise.catch(function () {});\n}\n\nfunction ReadableStreamFulfillReadIntoRequest(stream, chunk, done) {\n var reader = stream._reader;\n\n assert(reader._readIntoRequests.length > 0);\n\n var readIntoRequest = reader._readIntoRequests.shift();\n readIntoRequest._resolve(CreateIterResultObject(chunk, done));\n}\n\nfunction ReadableStreamFulfillReadRequest(stream, chunk, done) {\n var reader = stream._reader;\n\n assert(reader._readRequests.length > 0);\n\n var readRequest = reader._readRequests.shift();\n readRequest._resolve(CreateIterResultObject(chunk, done));\n}\n\nfunction ReadableStreamGetNumReadIntoRequests(stream) {\n return stream._reader._readIntoRequests.length;\n}\n\nfunction ReadableStreamGetNumReadRequests(stream) {\n return stream._reader._readRequests.length;\n}\n\nfunction ReadableStreamHasBYOBReader(stream) {\n var reader = stream._reader;\n\n if (reader === undefined) {\n return false;\n }\n\n if (IsReadableStreamBYOBReader(reader) === false) {\n return false;\n }\n\n return true;\n}\n\nfunction ReadableStreamHasDefaultReader(stream) {\n var reader = stream._reader;\n\n if (reader === undefined) {\n return false;\n }\n\n if (IsReadableStreamDefaultReader(reader) === false) {\n return false;\n }\n\n return true;\n}\n\n// Readers\n\nvar ReadableStreamDefaultReader = function () {\n function ReadableStreamDefaultReader(stream) {\n _classCallCheck(this, ReadableStreamDefaultReader);\n\n if (IsReadableStream(stream) === false) {\n throw new TypeError('ReadableStreamDefaultReader can only be constructed with a ReadableStream instance');\n }\n if (IsReadableStreamLocked(stream) === true) {\n throw new TypeError('This stream has already been locked for exclusive reading by another reader');\n }\n\n ReadableStreamReaderGenericInitialize(this, stream);\n\n this._readRequests = [];\n }\n\n _createClass(ReadableStreamDefaultReader, [{\n key: 'cancel',\n value: function cancel(reason) {\n if (IsReadableStreamDefaultReader(this) === false) {\n return Promise.reject(defaultReaderBrandCheckException('cancel'));\n }\n\n if (this._ownerReadableStream === undefined) {\n return Promise.reject(readerLockException('cancel'));\n }\n\n return ReadableStreamReaderGenericCancel(this, reason);\n }\n }, {\n key: 'read',\n value: function read() {\n if (IsReadableStreamDefaultReader(this) === false) {\n return Promise.reject(defaultReaderBrandCheckException('read'));\n }\n\n if (this._ownerReadableStream === undefined) {\n return Promise.reject(readerLockException('read from'));\n }\n\n return ReadableStreamDefaultReaderRead(this);\n }\n }, {\n key: 'releaseLock',\n value: function releaseLock() {\n if (IsReadableStreamDefaultReader(this) === false) {\n throw defaultReaderBrandCheckException('releaseLock');\n }\n\n if (this._ownerReadableStream === undefined) {\n return;\n }\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\n ReadableStreamReaderGenericRelease(this);\n }\n }, {\n key: 'closed',\n get: function get() {\n if (IsReadableStreamDefaultReader(this) === false) {\n return Promise.reject(defaultReaderBrandCheckException('closed'));\n }\n\n return this._closedPromise;\n }\n }]);\n\n return ReadableStreamDefaultReader;\n}();\n\nvar ReadableStreamBYOBReader = function () {\n function ReadableStreamBYOBReader(stream) {\n _classCallCheck(this, ReadableStreamBYOBReader);\n\n if (!IsReadableStream(stream)) {\n throw new TypeError('ReadableStreamBYOBReader can only be constructed with a ReadableStream instance given a ' + 'byte source');\n }\n if (IsReadableByteStreamController(stream._readableStreamController) === false) {\n throw new TypeError('Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte ' + 'source');\n }\n if (IsReadableStreamLocked(stream)) {\n throw new TypeError('This stream has already been locked for exclusive reading by another reader');\n }\n\n ReadableStreamReaderGenericInitialize(this, stream);\n\n this._readIntoRequests = [];\n }\n\n _createClass(ReadableStreamBYOBReader, [{\n key: 'cancel',\n value: function cancel(reason) {\n if (!IsReadableStreamBYOBReader(this)) {\n return Promise.reject(byobReaderBrandCheckException('cancel'));\n }\n\n if (this._ownerReadableStream === undefined) {\n return Promise.reject(readerLockException('cancel'));\n }\n\n return ReadableStreamReaderGenericCancel(this, reason);\n }\n }, {\n key: 'read',\n value: function read(view) {\n if (!IsReadableStreamBYOBReader(this)) {\n return Promise.reject(byobReaderBrandCheckException('read'));\n }\n\n if (this._ownerReadableStream === undefined) {\n return Promise.reject(readerLockException('read from'));\n }\n\n if (!ArrayBuffer.isView(view)) {\n return Promise.reject(new TypeError('view must be an array buffer view'));\n }\n\n if (view.byteLength === 0) {\n return Promise.reject(new TypeError('view must have non-zero byteLength'));\n }\n\n return ReadableStreamBYOBReaderRead(this, view);\n }\n }, {\n key: 'releaseLock',\n value: function releaseLock() {\n if (!IsReadableStreamBYOBReader(this)) {\n throw byobReaderBrandCheckException('releaseLock');\n }\n\n if (this._ownerReadableStream === undefined) {\n return;\n }\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\n ReadableStreamReaderGenericRelease(this);\n }\n }, {\n key: 'closed',\n get: function get() {\n if (!IsReadableStreamBYOBReader(this)) {\n return Promise.reject(byobReaderBrandCheckException('closed'));\n }\n\n return this._closedPromise;\n }\n }]);\n\n return ReadableStreamBYOBReader;\n}();\n\n// Abstract operations for the readers.\n\nfunction IsReadableStreamBYOBReader(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n\n if (!Object.prototype.hasOwnProperty.call(x, '_readIntoRequests')) {\n return false;\n }\n\n return true;\n}\n\nfunction IsReadableStreamDefaultReader(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n\n if (!Object.prototype.hasOwnProperty.call(x, '_readRequests')) {\n return false;\n }\n\n return true;\n}\n\nfunction ReadableStreamReaderGenericInitialize(reader, stream) {\n reader._ownerReadableStream = stream;\n stream._reader = reader;\n\n if (stream._state === 'readable') {\n defaultReaderClosedPromiseInitialize(reader);\n } else if (stream._state === 'closed') {\n defaultReaderClosedPromiseInitializeAsResolved(reader);\n } else {\n assert(stream._state === 'errored', 'state must be errored');\n\n defaultReaderClosedPromiseInitializeAsRejected(reader, stream._storedError);\n reader._closedPromise.catch(function () {});\n }\n}\n\n// A client of ReadableStreamDefaultReader and ReadableStreamBYOBReader may use these functions directly to bypass state\n// check.\n\nfunction ReadableStreamReaderGenericCancel(reader, reason) {\n var stream = reader._ownerReadableStream;\n assert(stream !== undefined);\n return ReadableStreamCancel(stream, reason);\n}\n\nfunction ReadableStreamReaderGenericRelease(reader) {\n assert(reader._ownerReadableStream !== undefined);\n assert(reader._ownerReadableStream._reader === reader);\n\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._closedPromise.catch(function () {});\n\n reader._ownerReadableStream._reader = undefined;\n reader._ownerReadableStream = undefined;\n}\n\nfunction ReadableStreamBYOBReaderRead(reader, view) {\n var stream = reader._ownerReadableStream;\n\n assert(stream !== undefined);\n\n stream._disturbed = true;\n\n if (stream._state === 'errored') {\n return Promise.reject(stream._storedError);\n }\n\n // Controllers must implement this.\n return ReadableByteStreamControllerPullInto(stream._readableStreamController, view);\n}\n\nfunction ReadableStreamDefaultReaderRead(reader) {\n var stream = reader._ownerReadableStream;\n\n assert(stream !== undefined);\n\n stream._disturbed = true;\n\n if (stream._state === 'closed') {\n return Promise.resolve(CreateIterResultObject(undefined, true));\n }\n\n if (stream._state === 'errored') {\n return Promise.reject(stream._storedError);\n }\n\n assert(stream._state === 'readable');\n\n return stream._readableStreamController.__pullSteps();\n}\n\n// Controllers\n\nvar ReadableStreamDefaultController = function () {\n function ReadableStreamDefaultController(stream, underlyingSource, size, highWaterMark) {\n _classCallCheck(this, ReadableStreamDefaultController);\n\n if (IsReadableStream(stream) === false) {\n throw new TypeError('ReadableStreamDefaultController can only be constructed with a ReadableStream instance');\n }\n\n if (stream._readableStreamController !== undefined) {\n throw new TypeError('ReadableStreamDefaultController instances can only be created by the ReadableStream constructor');\n }\n\n this._controlledReadableStream = stream;\n\n this._underlyingSource = underlyingSource;\n\n // Need to set the slots so that the assert doesn't fire. In the spec the slots already exist implicitly.\n this._queue = undefined;\n this._queueTotalSize = undefined;\n ResetQueue(this);\n\n this._started = false;\n this._closeRequested = false;\n this._pullAgain = false;\n this._pulling = false;\n\n var normalizedStrategy = ValidateAndNormalizeQueuingStrategy(size, highWaterMark);\n this._strategySize = normalizedStrategy.size;\n this._strategyHWM = normalizedStrategy.highWaterMark;\n\n var controller = this;\n\n var startResult = InvokeOrNoop(underlyingSource, 'start', [this]);\n Promise.resolve(startResult).then(function () {\n controller._started = true;\n\n assert(controller._pulling === false);\n assert(controller._pullAgain === false);\n\n ReadableStreamDefaultControllerCallPullIfNeeded(controller);\n }, function (r) {\n ReadableStreamDefaultControllerErrorIfNeeded(controller, r);\n }).catch(rethrowAssertionErrorRejection);\n }\n\n _createClass(ReadableStreamDefaultController, [{\n key: 'close',\n value: function close() {\n if (IsReadableStreamDefaultController(this) === false) {\n throw defaultControllerBrandCheckException('close');\n }\n\n if (this._closeRequested === true) {\n throw new TypeError('The stream has already been closed; do not close it again!');\n }\n\n var state = this._controlledReadableStream._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\n ReadableStreamDefaultControllerClose(this);\n }\n }, {\n key: 'enqueue',\n value: function enqueue(chunk) {\n if (IsReadableStreamDefaultController(this) === false) {\n throw defaultControllerBrandCheckException('enqueue');\n }\n\n if (this._closeRequested === true) {\n throw new TypeError('stream is closed or draining');\n }\n\n var state = this._controlledReadableStream._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\n return ReadableStreamDefaultControllerEnqueue(this, chunk);\n }\n }, {\n key: 'error',\n value: function error(e) {\n if (IsReadableStreamDefaultController(this) === false) {\n throw defaultControllerBrandCheckException('error');\n }\n\n var stream = this._controlledReadableStream;\n if (stream._state !== 'readable') {\n throw new TypeError('The stream is ' + stream._state + ' and so cannot be errored');\n }\n\n ReadableStreamDefaultControllerError(this, e);\n }\n }, {\n key: '__cancelSteps',\n value: function __cancelSteps(reason) {\n ResetQueue(this);\n return PromiseInvokeOrNoop(this._underlyingSource, 'cancel', [reason]);\n }\n }, {\n key: '__pullSteps',\n value: function __pullSteps() {\n var stream = this._controlledReadableStream;\n\n if (this._queue.length > 0) {\n var chunk = DequeueValue(this);\n\n if (this._closeRequested === true && this._queue.length === 0) {\n ReadableStreamClose(stream);\n } else {\n ReadableStreamDefaultControllerCallPullIfNeeded(this);\n }\n\n return Promise.resolve(CreateIterResultObject(chunk, false));\n }\n\n var pendingPromise = ReadableStreamAddReadRequest(stream);\n ReadableStreamDefaultControllerCallPullIfNeeded(this);\n return pendingPromise;\n }\n }, {\n key: 'desiredSize',\n get: function get() {\n if (IsReadableStreamDefaultController(this) === false) {\n throw defaultControllerBrandCheckException('desiredSize');\n }\n\n return ReadableStreamDefaultControllerGetDesiredSize(this);\n }\n }]);\n\n return ReadableStreamDefaultController;\n}();\n\n// Abstract operations for the ReadableStreamDefaultController.\n\nfunction IsReadableStreamDefaultController(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n\n if (!Object.prototype.hasOwnProperty.call(x, '_underlyingSource')) {\n return false;\n }\n\n return true;\n}\n\nfunction ReadableStreamDefaultControllerCallPullIfNeeded(controller) {\n var shouldPull = ReadableStreamDefaultControllerShouldCallPull(controller);\n if (shouldPull === false) {\n return undefined;\n }\n\n if (controller._pulling === true) {\n controller._pullAgain = true;\n return undefined;\n }\n\n assert(controller._pullAgain === false);\n\n controller._pulling = true;\n\n var pullPromise = PromiseInvokeOrNoop(controller._underlyingSource, 'pull', [controller]);\n pullPromise.then(function () {\n controller._pulling = false;\n\n if (controller._pullAgain === true) {\n controller._pullAgain = false;\n return ReadableStreamDefaultControllerCallPullIfNeeded(controller);\n }\n return undefined;\n }, function (e) {\n ReadableStreamDefaultControllerErrorIfNeeded(controller, e);\n }).catch(rethrowAssertionErrorRejection);\n\n return undefined;\n}\n\nfunction ReadableStreamDefaultControllerShouldCallPull(controller) {\n var stream = controller._controlledReadableStream;\n\n if (stream._state === 'closed' || stream._state === 'errored') {\n return false;\n }\n\n if (controller._closeRequested === true) {\n return false;\n }\n\n if (controller._started === false) {\n return false;\n }\n\n if (IsReadableStreamLocked(stream) === true && ReadableStreamGetNumReadRequests(stream) > 0) {\n return true;\n }\n\n var desiredSize = ReadableStreamDefaultControllerGetDesiredSize(controller);\n if (desiredSize > 0) {\n return true;\n }\n\n return false;\n}\n\n// A client of ReadableStreamDefaultController may use these functions directly to bypass state check.\n\nfunction ReadableStreamDefaultControllerClose(controller) {\n var stream = controller._controlledReadableStream;\n\n assert(controller._closeRequested === false);\n assert(stream._state === 'readable');\n\n controller._closeRequested = true;\n\n if (controller._queue.length === 0) {\n ReadableStreamClose(stream);\n }\n}\n\nfunction ReadableStreamDefaultControllerEnqueue(controller, chunk) {\n var stream = controller._controlledReadableStream;\n\n assert(controller._closeRequested === false);\n assert(stream._state === 'readable');\n\n if (IsReadableStreamLocked(stream) === true && ReadableStreamGetNumReadRequests(stream) > 0) {\n ReadableStreamFulfillReadRequest(stream, chunk, false);\n } else {\n var chunkSize = 1;\n\n if (controller._strategySize !== undefined) {\n var strategySize = controller._strategySize;\n try {\n chunkSize = strategySize(chunk);\n } catch (chunkSizeE) {\n ReadableStreamDefaultControllerErrorIfNeeded(controller, chunkSizeE);\n throw chunkSizeE;\n }\n }\n\n try {\n EnqueueValueWithSize(controller, chunk, chunkSize);\n } catch (enqueueE) {\n ReadableStreamDefaultControllerErrorIfNeeded(controller, enqueueE);\n throw enqueueE;\n }\n }\n\n ReadableStreamDefaultControllerCallPullIfNeeded(controller);\n\n return undefined;\n}\n\nfunction ReadableStreamDefaultControllerError(controller, e) {\n var stream = controller._controlledReadableStream;\n\n assert(stream._state === 'readable');\n\n ResetQueue(controller);\n\n ReadableStreamError(stream, e);\n}\n\nfunction ReadableStreamDefaultControllerErrorIfNeeded(controller, e) {\n if (controller._controlledReadableStream._state === 'readable') {\n ReadableStreamDefaultControllerError(controller, e);\n }\n}\n\nfunction ReadableStreamDefaultControllerGetDesiredSize(controller) {\n var stream = controller._controlledReadableStream;\n var state = stream._state;\n\n if (state === 'errored') {\n return null;\n }\n if (state === 'closed') {\n return 0;\n }\n\n return controller._strategyHWM - controller._queueTotalSize;\n}\n\nvar ReadableStreamBYOBRequest = function () {\n function ReadableStreamBYOBRequest(controller, view) {\n _classCallCheck(this, ReadableStreamBYOBRequest);\n\n this._associatedReadableByteStreamController = controller;\n this._view = view;\n }\n\n _createClass(ReadableStreamBYOBRequest, [{\n key: 'respond',\n value: function respond(bytesWritten) {\n if (IsReadableStreamBYOBRequest(this) === false) {\n throw byobRequestBrandCheckException('respond');\n }\n\n if (this._associatedReadableByteStreamController === undefined) {\n throw new TypeError('This BYOB request has been invalidated');\n }\n\n ReadableByteStreamControllerRespond(this._associatedReadableByteStreamController, bytesWritten);\n }\n }, {\n key: 'respondWithNewView',\n value: function respondWithNewView(view) {\n if (IsReadableStreamBYOBRequest(this) === false) {\n throw byobRequestBrandCheckException('respond');\n }\n\n if (this._associatedReadableByteStreamController === undefined) {\n throw new TypeError('This BYOB request has been invalidated');\n }\n\n if (!ArrayBuffer.isView(view)) {\n throw new TypeError('You can only respond with array buffer views');\n }\n\n ReadableByteStreamControllerRespondWithNewView(this._associatedReadableByteStreamController, view);\n }\n }, {\n key: 'view',\n get: function get() {\n return this._view;\n }\n }]);\n\n return ReadableStreamBYOBRequest;\n}();\n\nvar ReadableByteStreamController = function () {\n function ReadableByteStreamController(stream, underlyingByteSource, highWaterMark) {\n _classCallCheck(this, ReadableByteStreamController);\n\n if (IsReadableStream(stream) === false) {\n throw new TypeError('ReadableByteStreamController can only be constructed with a ReadableStream instance given ' + 'a byte source');\n }\n\n if (stream._readableStreamController !== undefined) {\n throw new TypeError('ReadableByteStreamController instances can only be created by the ReadableStream constructor given a byte ' + 'source');\n }\n\n this._controlledReadableStream = stream;\n\n this._underlyingByteSource = underlyingByteSource;\n\n this._pullAgain = false;\n this._pulling = false;\n\n ReadableByteStreamControllerClearPendingPullIntos(this);\n\n // Need to set the slots so that the assert doesn't fire. In the spec the slots already exist implicitly.\n this._queue = this._queueTotalSize = undefined;\n ResetQueue(this);\n\n this._closeRequested = false;\n this._started = false;\n\n this._strategyHWM = ValidateAndNormalizeHighWaterMark(highWaterMark);\n\n var autoAllocateChunkSize = underlyingByteSource.autoAllocateChunkSize;\n if (autoAllocateChunkSize !== undefined) {\n if (Number.isInteger(autoAllocateChunkSize) === false || autoAllocateChunkSize <= 0) {\n throw new RangeError('autoAllocateChunkSize must be a positive integer');\n }\n }\n this._autoAllocateChunkSize = autoAllocateChunkSize;\n\n this._pendingPullIntos = [];\n\n var controller = this;\n\n var startResult = InvokeOrNoop(underlyingByteSource, 'start', [this]);\n Promise.resolve(startResult).then(function () {\n controller._started = true;\n\n assert(controller._pulling === false);\n assert(controller._pullAgain === false);\n\n ReadableByteStreamControllerCallPullIfNeeded(controller);\n }, function (r) {\n if (stream._state === 'readable') {\n ReadableByteStreamControllerError(controller, r);\n }\n }).catch(rethrowAssertionErrorRejection);\n }\n\n _createClass(ReadableByteStreamController, [{\n key: 'close',\n value: function close() {\n if (IsReadableByteStreamController(this) === false) {\n throw byteStreamControllerBrandCheckException('close');\n }\n\n if (this._closeRequested === true) {\n throw new TypeError('The stream has already been closed; do not close it again!');\n }\n\n var state = this._controlledReadableStream._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\n ReadableByteStreamControllerClose(this);\n }\n }, {\n key: 'enqueue',\n value: function enqueue(chunk) {\n if (IsReadableByteStreamController(this) === false) {\n throw byteStreamControllerBrandCheckException('enqueue');\n }\n\n if (this._closeRequested === true) {\n throw new TypeError('stream is closed or draining');\n }\n\n var state = this._controlledReadableStream._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\n if (!ArrayBuffer.isView(chunk)) {\n throw new TypeError('You can only enqueue array buffer views when using a ReadableByteStreamController');\n }\n\n ReadableByteStreamControllerEnqueue(this, chunk);\n }\n }, {\n key: 'error',\n value: function error(e) {\n if (IsReadableByteStreamController(this) === false) {\n throw byteStreamControllerBrandCheckException('error');\n }\n\n var stream = this._controlledReadableStream;\n if (stream._state !== 'readable') {\n throw new TypeError('The stream is ' + stream._state + ' and so cannot be errored');\n }\n\n ReadableByteStreamControllerError(this, e);\n }\n }, {\n key: '__cancelSteps',\n value: function __cancelSteps(reason) {\n if (this._pendingPullIntos.length > 0) {\n var firstDescriptor = this._pendingPullIntos[0];\n firstDescriptor.bytesFilled = 0;\n }\n\n ResetQueue(this);\n\n return PromiseInvokeOrNoop(this._underlyingByteSource, 'cancel', [reason]);\n }\n }, {\n key: '__pullSteps',\n value: function __pullSteps() {\n var stream = this._controlledReadableStream;\n assert(ReadableStreamHasDefaultReader(stream) === true);\n\n if (this._queueTotalSize > 0) {\n assert(ReadableStreamGetNumReadRequests(stream) === 0);\n\n var entry = this._queue.shift();\n this._queueTotalSize -= entry.byteLength;\n\n ReadableByteStreamControllerHandleQueueDrain(this);\n\n var view = void 0;\n try {\n view = new Uint8Array(entry.buffer, entry.byteOffset, entry.byteLength);\n } catch (viewE) {\n return Promise.reject(viewE);\n }\n\n return Promise.resolve(CreateIterResultObject(view, false));\n }\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 return Promise.reject(bufferE);\n }\n\n var pullIntoDescriptor = {\n buffer: buffer,\n byteOffset: 0,\n byteLength: autoAllocateChunkSize,\n bytesFilled: 0,\n elementSize: 1,\n ctor: Uint8Array,\n readerType: 'default'\n };\n\n this._pendingPullIntos.push(pullIntoDescriptor);\n }\n\n var promise = ReadableStreamAddReadRequest(stream);\n\n ReadableByteStreamControllerCallPullIfNeeded(this);\n\n return promise;\n }\n }, {\n key: 'byobRequest',\n get: function get() {\n if (IsReadableByteStreamController(this) === false) {\n throw byteStreamControllerBrandCheckException('byobRequest');\n }\n\n if (this._byobRequest === undefined && this._pendingPullIntos.length > 0) {\n var firstDescriptor = this._pendingPullIntos[0];\n var view = new Uint8Array(firstDescriptor.buffer, firstDescriptor.byteOffset + firstDescriptor.bytesFilled, firstDescriptor.byteLength - firstDescriptor.bytesFilled);\n\n this._byobRequest = new ReadableStreamBYOBRequest(this, view);\n }\n\n return this._byobRequest;\n }\n }, {\n key: 'desiredSize',\n get: function get() {\n if (IsReadableByteStreamController(this) === false) {\n throw byteStreamControllerBrandCheckException('desiredSize');\n }\n\n return ReadableByteStreamControllerGetDesiredSize(this);\n }\n }]);\n\n return ReadableByteStreamController;\n}();\n\n// Abstract operations for the ReadableByteStreamController.\n\nfunction IsReadableByteStreamController(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n\n if (!Object.prototype.hasOwnProperty.call(x, '_underlyingByteSource')) {\n return false;\n }\n\n return true;\n}\n\nfunction IsReadableStreamBYOBRequest(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n\n if (!Object.prototype.hasOwnProperty.call(x, '_associatedReadableByteStreamController')) {\n return false;\n }\n\n return true;\n}\n\nfunction ReadableByteStreamControllerCallPullIfNeeded(controller) {\n var shouldPull = ReadableByteStreamControllerShouldCallPull(controller);\n if (shouldPull === false) {\n return undefined;\n }\n\n if (controller._pulling === true) {\n controller._pullAgain = true;\n return undefined;\n }\n\n assert(controller._pullAgain === false);\n\n controller._pulling = true;\n\n // TODO: Test controller argument\n var pullPromise = PromiseInvokeOrNoop(controller._underlyingByteSource, 'pull', [controller]);\n pullPromise.then(function () {\n controller._pulling = false;\n\n if (controller._pullAgain === true) {\n controller._pullAgain = false;\n ReadableByteStreamControllerCallPullIfNeeded(controller);\n }\n }, function (e) {\n if (controller._controlledReadableStream._state === 'readable') {\n ReadableByteStreamControllerError(controller, e);\n }\n }).catch(rethrowAssertionErrorRejection);\n\n return undefined;\n}\n\nfunction ReadableByteStreamControllerClearPendingPullIntos(controller) {\n ReadableByteStreamControllerInvalidateBYOBRequest(controller);\n controller._pendingPullIntos = [];\n}\n\nfunction ReadableByteStreamControllerCommitPullIntoDescriptor(stream, pullIntoDescriptor) {\n assert(stream._state !== 'errored', 'state must not be errored');\n\n var done = false;\n if (stream._state === 'closed') {\n assert(pullIntoDescriptor.bytesFilled === 0);\n done = true;\n }\n\n var filledView = ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor);\n if (pullIntoDescriptor.readerType === 'default') {\n ReadableStreamFulfillReadRequest(stream, filledView, done);\n } else {\n assert(pullIntoDescriptor.readerType === 'byob');\n ReadableStreamFulfillReadIntoRequest(stream, filledView, done);\n }\n}\n\nfunction ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor) {\n var bytesFilled = pullIntoDescriptor.bytesFilled;\n var elementSize = pullIntoDescriptor.elementSize;\n\n assert(bytesFilled <= pullIntoDescriptor.byteLength);\n assert(bytesFilled % elementSize === 0);\n\n return new pullIntoDescriptor.ctor(pullIntoDescriptor.buffer, pullIntoDescriptor.byteOffset, bytesFilled / elementSize);\n}\n\nfunction ReadableByteStreamControllerEnqueueChunkToQueue(controller, buffer, byteOffset, byteLength) {\n controller._queue.push({ buffer: buffer, byteOffset: byteOffset, byteLength: byteLength });\n controller._queueTotalSize += byteLength;\n}\n\nfunction ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller, pullIntoDescriptor) {\n var elementSize = pullIntoDescriptor.elementSize;\n\n var currentAlignedBytes = pullIntoDescriptor.bytesFilled - pullIntoDescriptor.bytesFilled % elementSize;\n\n var maxBytesToCopy = Math.min(controller._queueTotalSize, pullIntoDescriptor.byteLength - pullIntoDescriptor.bytesFilled);\n var maxBytesFilled = pullIntoDescriptor.bytesFilled + maxBytesToCopy;\n var maxAlignedBytes = maxBytesFilled - maxBytesFilled % elementSize;\n\n var totalBytesToCopyRemaining = maxBytesToCopy;\n var ready = false;\n if (maxAlignedBytes > currentAlignedBytes) {\n totalBytesToCopyRemaining = maxAlignedBytes - pullIntoDescriptor.bytesFilled;\n ready = true;\n }\n\n var queue = controller._queue;\n\n while (totalBytesToCopyRemaining > 0) {\n var headOfQueue = queue[0];\n\n var bytesToCopy = Math.min(totalBytesToCopyRemaining, headOfQueue.byteLength);\n\n var destStart = pullIntoDescriptor.byteOffset + pullIntoDescriptor.bytesFilled;\n ArrayBufferCopy(pullIntoDescriptor.buffer, destStart, headOfQueue.buffer, headOfQueue.byteOffset, bytesToCopy);\n\n if (headOfQueue.byteLength === bytesToCopy) {\n queue.shift();\n } else {\n headOfQueue.byteOffset += bytesToCopy;\n headOfQueue.byteLength -= bytesToCopy;\n }\n controller._queueTotalSize -= bytesToCopy;\n\n ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller, bytesToCopy, pullIntoDescriptor);\n\n totalBytesToCopyRemaining -= bytesToCopy;\n }\n\n if (ready === false) {\n assert(controller._queueTotalSize === 0, 'queue must be empty');\n assert(pullIntoDescriptor.bytesFilled > 0);\n assert(pullIntoDescriptor.bytesFilled < pullIntoDescriptor.elementSize);\n }\n\n return ready;\n}\n\nfunction ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller, size, pullIntoDescriptor) {\n assert(controller._pendingPullIntos.length === 0 || controller._pendingPullIntos[0] === pullIntoDescriptor);\n\n ReadableByteStreamControllerInvalidateBYOBRequest(controller);\n pullIntoDescriptor.bytesFilled += size;\n}\n\nfunction ReadableByteStreamControllerHandleQueueDrain(controller) {\n assert(controller._controlledReadableStream._state === 'readable');\n\n if (controller._queueTotalSize === 0 && controller._closeRequested === true) {\n ReadableStreamClose(controller._controlledReadableStream);\n } else {\n ReadableByteStreamControllerCallPullIfNeeded(controller);\n }\n}\n\nfunction ReadableByteStreamControllerInvalidateBYOBRequest(controller) {\n if (controller._byobRequest === undefined) {\n return;\n }\n\n controller._byobRequest._associatedReadableByteStreamController = undefined;\n controller._byobRequest._view = undefined;\n controller._byobRequest = undefined;\n}\n\nfunction ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller) {\n assert(controller._closeRequested === false);\n\n while (controller._pendingPullIntos.length > 0) {\n if (controller._queueTotalSize === 0) {\n return;\n }\n\n var pullIntoDescriptor = controller._pendingPullIntos[0];\n\n if (ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller, pullIntoDescriptor) === true) {\n ReadableByteStreamControllerShiftPendingPullInto(controller);\n\n ReadableByteStreamControllerCommitPullIntoDescriptor(controller._controlledReadableStream, pullIntoDescriptor);\n }\n }\n}\n\nfunction ReadableByteStreamControllerPullInto(controller, view) {\n var stream = controller._controlledReadableStream;\n\n var elementSize = 1;\n if (view.constructor !== DataView) {\n elementSize = view.constructor.BYTES_PER_ELEMENT;\n }\n\n var ctor = view.constructor;\n\n var pullIntoDescriptor = {\n buffer: view.buffer,\n byteOffset: view.byteOffset,\n byteLength: view.byteLength,\n bytesFilled: 0,\n elementSize: elementSize,\n ctor: ctor,\n readerType: 'byob'\n };\n\n if (controller._pendingPullIntos.length > 0) {\n pullIntoDescriptor.buffer = TransferArrayBuffer(pullIntoDescriptor.buffer);\n controller._pendingPullIntos.push(pullIntoDescriptor);\n\n // No ReadableByteStreamControllerCallPullIfNeeded() call since:\n // - No change happens on desiredSize\n // - The source has already been notified of that there's at least 1 pending read(view)\n\n return ReadableStreamAddReadIntoRequest(stream);\n }\n\n if (stream._state === 'closed') {\n var emptyView = new view.constructor(pullIntoDescriptor.buffer, pullIntoDescriptor.byteOffset, 0);\n return Promise.resolve(CreateIterResultObject(emptyView, true));\n }\n\n if (controller._queueTotalSize > 0) {\n if (ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller, pullIntoDescriptor) === true) {\n var filledView = ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor);\n\n ReadableByteStreamControllerHandleQueueDrain(controller);\n\n return Promise.resolve(CreateIterResultObject(filledView, false));\n }\n\n if (controller._closeRequested === true) {\n var e = new TypeError('Insufficient bytes to fill elements in the given buffer');\n ReadableByteStreamControllerError(controller, e);\n\n return Promise.reject(e);\n }\n }\n\n pullIntoDescriptor.buffer = TransferArrayBuffer(pullIntoDescriptor.buffer);\n controller._pendingPullIntos.push(pullIntoDescriptor);\n\n var promise = ReadableStreamAddReadIntoRequest(stream);\n\n ReadableByteStreamControllerCallPullIfNeeded(controller);\n\n return promise;\n}\n\nfunction ReadableByteStreamControllerRespondInClosedState(controller, firstDescriptor) {\n firstDescriptor.buffer = TransferArrayBuffer(firstDescriptor.buffer);\n\n assert(firstDescriptor.bytesFilled === 0, 'bytesFilled must be 0');\n\n var stream = controller._controlledReadableStream;\n if (ReadableStreamHasBYOBReader(stream) === true) {\n while (ReadableStreamGetNumReadIntoRequests(stream) > 0) {\n var pullIntoDescriptor = ReadableByteStreamControllerShiftPendingPullInto(controller);\n ReadableByteStreamControllerCommitPullIntoDescriptor(stream, pullIntoDescriptor);\n }\n }\n}\n\nfunction ReadableByteStreamControllerRespondInReadableState(controller, bytesWritten, pullIntoDescriptor) {\n if (pullIntoDescriptor.bytesFilled + bytesWritten > pullIntoDescriptor.byteLength) {\n throw new RangeError('bytesWritten out of range');\n }\n\n ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller, bytesWritten, pullIntoDescriptor);\n\n if (pullIntoDescriptor.bytesFilled < pullIntoDescriptor.elementSize) {\n // TODO: Figure out whether we should detach the buffer or not here.\n return;\n }\n\n ReadableByteStreamControllerShiftPendingPullInto(controller);\n\n var remainderSize = pullIntoDescriptor.bytesFilled % pullIntoDescriptor.elementSize;\n if (remainderSize > 0) {\n var end = pullIntoDescriptor.byteOffset + pullIntoDescriptor.bytesFilled;\n var remainder = pullIntoDescriptor.buffer.slice(end - remainderSize, end);\n ReadableByteStreamControllerEnqueueChunkToQueue(controller, remainder, 0, remainder.byteLength);\n }\n\n pullIntoDescriptor.buffer = TransferArrayBuffer(pullIntoDescriptor.buffer);\n pullIntoDescriptor.bytesFilled -= remainderSize;\n ReadableByteStreamControllerCommitPullIntoDescriptor(controller._controlledReadableStream, pullIntoDescriptor);\n\n ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller);\n}\n\nfunction ReadableByteStreamControllerRespondInternal(controller, bytesWritten) {\n var firstDescriptor = controller._pendingPullIntos[0];\n\n var stream = controller._controlledReadableStream;\n\n if (stream._state === 'closed') {\n if (bytesWritten !== 0) {\n throw new TypeError('bytesWritten must be 0 when calling respond() on a closed stream');\n }\n\n ReadableByteStreamControllerRespondInClosedState(controller, firstDescriptor);\n } else {\n assert(stream._state === 'readable');\n\n ReadableByteStreamControllerRespondInReadableState(controller, bytesWritten, firstDescriptor);\n }\n}\n\nfunction ReadableByteStreamControllerShiftPendingPullInto(controller) {\n var descriptor = controller._pendingPullIntos.shift();\n ReadableByteStreamControllerInvalidateBYOBRequest(controller);\n return descriptor;\n}\n\nfunction ReadableByteStreamControllerShouldCallPull(controller) {\n var stream = controller._controlledReadableStream;\n\n if (stream._state !== 'readable') {\n return false;\n }\n\n if (controller._closeRequested === true) {\n return false;\n }\n\n if (controller._started === false) {\n return false;\n }\n\n if (ReadableStreamHasDefaultReader(stream) === true && ReadableStreamGetNumReadRequests(stream) > 0) {\n return true;\n }\n\n if (ReadableStreamHasBYOBReader(stream) === true && ReadableStreamGetNumReadIntoRequests(stream) > 0) {\n return true;\n }\n\n if (ReadableByteStreamControllerGetDesiredSize(controller) > 0) {\n return true;\n }\n\n return false;\n}\n\n// A client of ReadableByteStreamController may use these functions directly to bypass state check.\n\nfunction ReadableByteStreamControllerClose(controller) {\n var stream = controller._controlledReadableStream;\n\n assert(controller._closeRequested === false);\n assert(stream._state === 'readable');\n\n if (controller._queueTotalSize > 0) {\n controller._closeRequested = true;\n\n return;\n }\n\n if (controller._pendingPullIntos.length > 0) {\n var firstPendingPullInto = controller._pendingPullIntos[0];\n if (firstPendingPullInto.bytesFilled > 0) {\n var e = new TypeError('Insufficient bytes to fill elements in the given buffer');\n ReadableByteStreamControllerError(controller, e);\n\n throw e;\n }\n }\n\n ReadableStreamClose(stream);\n}\n\nfunction ReadableByteStreamControllerEnqueue(controller, chunk) {\n var stream = controller._controlledReadableStream;\n\n assert(controller._closeRequested === false);\n assert(stream._state === 'readable');\n\n var buffer = chunk.buffer;\n var byteOffset = chunk.byteOffset;\n var byteLength = chunk.byteLength;\n var transferredBuffer = TransferArrayBuffer(buffer);\n\n if (ReadableStreamHasDefaultReader(stream) === true) {\n if (ReadableStreamGetNumReadRequests(stream) === 0) {\n ReadableByteStreamControllerEnqueueChunkToQueue(controller, transferredBuffer, byteOffset, byteLength);\n } else {\n assert(controller._queue.length === 0);\n\n var transferredView = new Uint8Array(transferredBuffer, byteOffset, byteLength);\n ReadableStreamFulfillReadRequest(stream, transferredView, false);\n }\n } else if (ReadableStreamHasBYOBReader(stream) === true) {\n // TODO: Ideally in this branch detaching should happen only if the buffer is not consumed fully.\n ReadableByteStreamControllerEnqueueChunkToQueue(controller, transferredBuffer, byteOffset, byteLength);\n ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller);\n } else {\n assert(IsReadableStreamLocked(stream) === false, 'stream must not be locked');\n ReadableByteStreamControllerEnqueueChunkToQueue(controller, transferredBuffer, byteOffset, byteLength);\n }\n}\n\nfunction ReadableByteStreamControllerError(controller, e) {\n var stream = controller._controlledReadableStream;\n\n assert(stream._state === 'readable');\n\n ReadableByteStreamControllerClearPendingPullIntos(controller);\n\n ResetQueue(controller);\n ReadableStreamError(stream, e);\n}\n\nfunction ReadableByteStreamControllerGetDesiredSize(controller) {\n var stream = controller._controlledReadableStream;\n var state = stream._state;\n\n if (state === 'errored') {\n return null;\n }\n if (state === 'closed') {\n return 0;\n }\n\n return controller._strategyHWM - controller._queueTotalSize;\n}\n\nfunction ReadableByteStreamControllerRespond(controller, bytesWritten) {\n bytesWritten = Number(bytesWritten);\n if (IsFiniteNonNegativeNumber(bytesWritten) === false) {\n throw new RangeError('bytesWritten must be a finite');\n }\n\n assert(controller._pendingPullIntos.length > 0);\n\n ReadableByteStreamControllerRespondInternal(controller, bytesWritten);\n}\n\nfunction ReadableByteStreamControllerRespondWithNewView(controller, view) {\n assert(controller._pendingPullIntos.length > 0);\n\n var firstDescriptor = controller._pendingPullIntos[0];\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.byteLength !== view.byteLength) {\n throw new RangeError('The buffer of view has different capacity than byobRequest');\n }\n\n firstDescriptor.buffer = view.buffer;\n\n ReadableByteStreamControllerRespondInternal(controller, view.byteLength);\n}\n\n// Helper functions for the ReadableStream.\n\nfunction streamBrandCheckException(name) {\n return new TypeError('ReadableStream.prototype.' + name + ' can only be used on a ReadableStream');\n}\n\n// Helper functions for the readers.\n\nfunction readerLockException(name) {\n return new TypeError('Cannot ' + name + ' a stream using a released reader');\n}\n\n// Helper functions for the ReadableStreamDefaultReader.\n\nfunction defaultReaderBrandCheckException(name) {\n return new TypeError('ReadableStreamDefaultReader.prototype.' + name + ' can only be used on a ReadableStreamDefaultReader');\n}\n\nfunction defaultReaderClosedPromiseInitialize(reader) {\n reader._closedPromise = new Promise(function (resolve, reject) {\n reader._closedPromise_resolve = resolve;\n reader._closedPromise_reject = reject;\n });\n}\n\nfunction defaultReaderClosedPromiseInitializeAsRejected(reader, reason) {\n reader._closedPromise = Promise.reject(reason);\n reader._closedPromise_resolve = undefined;\n reader._closedPromise_reject = undefined;\n}\n\nfunction defaultReaderClosedPromiseInitializeAsResolved(reader) {\n reader._closedPromise = Promise.resolve(undefined);\n reader._closedPromise_resolve = undefined;\n reader._closedPromise_reject = undefined;\n}\n\nfunction defaultReaderClosedPromiseReject(reader, reason) {\n assert(reader._closedPromise_resolve !== undefined);\n assert(reader._closedPromise_reject !== undefined);\n\n reader._closedPromise_reject(reason);\n reader._closedPromise_resolve = undefined;\n reader._closedPromise_reject = undefined;\n}\n\nfunction defaultReaderClosedPromiseResetToRejected(reader, reason) {\n assert(reader._closedPromise_resolve === undefined);\n assert(reader._closedPromise_reject === undefined);\n\n reader._closedPromise = Promise.reject(reason);\n}\n\nfunction defaultReaderClosedPromiseResolve(reader) {\n assert(reader._closedPromise_resolve !== undefined);\n assert(reader._closedPromise_reject !== undefined);\n\n reader._closedPromise_resolve(undefined);\n reader._closedPromise_resolve = undefined;\n reader._closedPromise_reject = undefined;\n}\n\n// Helper functions for the ReadableStreamDefaultReader.\n\nfunction byobReaderBrandCheckException(name) {\n return new TypeError('ReadableStreamBYOBReader.prototype.' + name + ' can only be used on a ReadableStreamBYOBReader');\n}\n\n// Helper functions for the ReadableStreamDefaultController.\n\nfunction defaultControllerBrandCheckException(name) {\n return new TypeError('ReadableStreamDefaultController.prototype.' + name + ' can only be used on a ReadableStreamDefaultController');\n}\n\n// Helper functions for the ReadableStreamBYOBRequest.\n\nfunction byobRequestBrandCheckException(name) {\n return new TypeError('ReadableStreamBYOBRequest.prototype.' + name + ' can only be used on a ReadableStreamBYOBRequest');\n}\n\n// Helper functions for the ReadableByteStreamController.\n\nfunction byteStreamControllerBrandCheckException(name) {\n return new TypeError('ReadableByteStreamController.prototype.' + name + ' can only be used on a ReadableByteStreamController');\n}\n\n// Helper function for ReadableStream pipeThrough\n\nfunction ifIsObjectAndHasAPromiseIsHandledInternalSlotSetPromiseIsHandledToTrue(promise) {\n try {\n // This relies on the brand-check that is enforced by Promise.prototype.then(). As with the rest of the reference\n // implementation, it doesn't attempt to do the right thing if someone has modified the global environment.\n Promise.prototype.then.call(promise, undefined, function () {});\n } catch (e) {\n // The brand check failed, therefore the internal slot is not present and there's nothing further to do.\n }\n}\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __w_pdfjs_require__) {\n\n\"use strict\";\n\n\nvar transformStream = __w_pdfjs_require__(6);\nvar readableStream = __w_pdfjs_require__(4);\nvar writableStream = __w_pdfjs_require__(2);\n\nexports.TransformStream = transformStream.TransformStream;\nexports.ReadableStream = readableStream.ReadableStream;\nexports.IsReadableStreamDisturbed = readableStream.IsReadableStreamDisturbed;\nexports.ReadableStreamDefaultControllerClose = readableStream.ReadableStreamDefaultControllerClose;\nexports.ReadableStreamDefaultControllerEnqueue = readableStream.ReadableStreamDefaultControllerEnqueue;\nexports.ReadableStreamDefaultControllerError = readableStream.ReadableStreamDefaultControllerError;\nexports.ReadableStreamDefaultControllerGetDesiredSize = readableStream.ReadableStreamDefaultControllerGetDesiredSize;\nexports.AcquireWritableStreamDefaultWriter = writableStream.AcquireWritableStreamDefaultWriter;\nexports.IsWritableStream = writableStream.IsWritableStream;\nexports.IsWritableStreamLocked = writableStream.IsWritableStreamLocked;\nexports.WritableStream = writableStream.WritableStream;\nexports.WritableStreamAbort = writableStream.WritableStreamAbort;\nexports.WritableStreamDefaultControllerError = writableStream.WritableStreamDefaultControllerError;\nexports.WritableStreamDefaultWriterCloseWithErrorPropagation = writableStream.WritableStreamDefaultWriterCloseWithErrorPropagation;\nexports.WritableStreamDefaultWriterRelease = writableStream.WritableStreamDefaultWriterRelease;\nexports.WritableStreamDefaultWriterWrite = writableStream.WritableStreamDefaultWriterWrite;\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __w_pdfjs_require__) {\n\n\"use strict\";\n\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar _require = __w_pdfjs_require__(1),\n assert = _require.assert;\n\nvar _require2 = __w_pdfjs_require__(0),\n InvokeOrNoop = _require2.InvokeOrNoop,\n PromiseInvokeOrPerformFallback = _require2.PromiseInvokeOrPerformFallback,\n PromiseInvokeOrNoop = _require2.PromiseInvokeOrNoop,\n typeIsObject = _require2.typeIsObject;\n\nvar _require3 = __w_pdfjs_require__(4),\n ReadableStream = _require3.ReadableStream,\n ReadableStreamDefaultControllerClose = _require3.ReadableStreamDefaultControllerClose,\n ReadableStreamDefaultControllerEnqueue = _require3.ReadableStreamDefaultControllerEnqueue,\n ReadableStreamDefaultControllerError = _require3.ReadableStreamDefaultControllerError,\n ReadableStreamDefaultControllerGetDesiredSize = _require3.ReadableStreamDefaultControllerGetDesiredSize;\n\nvar _require4 = __w_pdfjs_require__(2),\n WritableStream = _require4.WritableStream,\n WritableStreamDefaultControllerError = _require4.WritableStreamDefaultControllerError;\n\n// Methods on the transform stream controller object\n\nfunction TransformStreamCloseReadable(transformStream) {\n // console.log('TransformStreamCloseReadable()');\n\n if (transformStream._errored === true) {\n throw new TypeError('TransformStream is already errored');\n }\n\n if (transformStream._readableClosed === true) {\n throw new TypeError('Readable side is already closed');\n }\n\n TransformStreamCloseReadableInternal(transformStream);\n}\n\nfunction TransformStreamEnqueueToReadable(transformStream, chunk) {\n // console.log('TransformStreamEnqueueToReadable()');\n\n if (transformStream._errored === true) {\n throw new TypeError('TransformStream is already errored');\n }\n\n if (transformStream._readableClosed === true) {\n throw new TypeError('Readable side is already closed');\n }\n\n // We throttle transformer.transform invocation based on the backpressure of the ReadableStream, but we still\n // accept TransformStreamEnqueueToReadable() calls.\n\n var controller = transformStream._readableController;\n\n try {\n ReadableStreamDefaultControllerEnqueue(controller, chunk);\n } catch (e) {\n // This happens when readableStrategy.size() throws.\n // The ReadableStream has already errored itself.\n transformStream._readableClosed = true;\n TransformStreamErrorIfNeeded(transformStream, e);\n\n throw transformStream._storedError;\n }\n\n var desiredSize = ReadableStreamDefaultControllerGetDesiredSize(controller);\n var maybeBackpressure = desiredSize <= 0;\n\n if (maybeBackpressure === true && transformStream._backpressure === false) {\n // This allows pull() again. When desiredSize is 0, it's possible that a pull() will happen immediately (but\n // asynchronously) after this because of pending read()s and set _backpressure back to false.\n //\n // If pull() could be called from inside enqueue(), then this logic would be wrong. This cannot happen\n // because there is always a promise pending from start() or pull() when _backpressure is false.\n TransformStreamSetBackpressure(transformStream, true);\n }\n}\n\nfunction TransformStreamError(transformStream, e) {\n if (transformStream._errored === true) {\n throw new TypeError('TransformStream is already errored');\n }\n\n TransformStreamErrorInternal(transformStream, e);\n}\n\n// Abstract operations.\n\nfunction TransformStreamCloseReadableInternal(transformStream) {\n assert(transformStream._errored === false);\n assert(transformStream._readableClosed === false);\n\n try {\n ReadableStreamDefaultControllerClose(transformStream._readableController);\n } catch (e) {\n assert(false);\n }\n\n transformStream._readableClosed = true;\n}\n\nfunction TransformStreamErrorIfNeeded(transformStream, e) {\n if (transformStream._errored === false) {\n TransformStreamErrorInternal(transformStream, e);\n }\n}\n\nfunction TransformStreamErrorInternal(transformStream, e) {\n // console.log('TransformStreamErrorInternal()');\n\n assert(transformStream._errored === false);\n\n transformStream._errored = true;\n transformStream._storedError = e;\n\n if (transformStream._writableDone === false) {\n WritableStreamDefaultControllerError(transformStream._writableController, e);\n }\n if (transformStream._readableClosed === false) {\n ReadableStreamDefaultControllerError(transformStream._readableController, e);\n }\n}\n\n// Used for preventing the next write() call on TransformStreamSink until there\n// is no longer backpressure.\nfunction TransformStreamReadableReadyPromise(transformStream) {\n assert(transformStream._backpressureChangePromise !== undefined, '_backpressureChangePromise should have been initialized');\n\n if (transformStream._backpressure === false) {\n return Promise.resolve();\n }\n\n assert(transformStream._backpressure === true, '_backpressure should have been initialized');\n\n return transformStream._backpressureChangePromise;\n}\n\nfunction TransformStreamSetBackpressure(transformStream, backpressure) {\n // console.log(`TransformStreamSetBackpressure(${backpressure})`);\n\n // Passes also when called during construction.\n assert(transformStream._backpressure !== backpressure, 'TransformStreamSetBackpressure() should be called only when backpressure is changed');\n\n if (transformStream._backpressureChangePromise !== undefined) {\n // The fulfillment value is just for a sanity check.\n transformStream._backpressureChangePromise_resolve(backpressure);\n }\n\n transformStream._backpressureChangePromise = new Promise(function (resolve) {\n transformStream._backpressureChangePromise_resolve = resolve;\n });\n\n transformStream._backpressureChangePromise.then(function (resolution) {\n assert(resolution !== backpressure, '_backpressureChangePromise should be fulfilled only when backpressure is changed');\n });\n\n transformStream._backpressure = backpressure;\n}\n\nfunction TransformStreamDefaultTransform(chunk, transformStreamController) {\n var transformStream = transformStreamController._controlledTransformStream;\n TransformStreamEnqueueToReadable(transformStream, chunk);\n return Promise.resolve();\n}\n\nfunction TransformStreamTransform(transformStream, chunk) {\n // console.log('TransformStreamTransform()');\n\n assert(transformStream._errored === false);\n assert(transformStream._transforming === false);\n assert(transformStream._backpressure === false);\n\n transformStream._transforming = true;\n\n var transformer = transformStream._transformer;\n var controller = transformStream._transformStreamController;\n\n var transformPromise = PromiseInvokeOrPerformFallback(transformer, 'transform', [chunk, controller], TransformStreamDefaultTransform, [chunk, controller]);\n\n return transformPromise.then(function () {\n transformStream._transforming = false;\n\n return TransformStreamReadableReadyPromise(transformStream);\n }, function (e) {\n TransformStreamErrorIfNeeded(transformStream, e);\n return Promise.reject(e);\n });\n}\n\nfunction IsTransformStreamDefaultController(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n\n if (!Object.prototype.hasOwnProperty.call(x, '_controlledTransformStream')) {\n return false;\n }\n\n return true;\n}\n\nfunction IsTransformStream(x) {\n if (!typeIsObject(x)) {\n return false;\n }\n\n if (!Object.prototype.hasOwnProperty.call(x, '_transformStreamController')) {\n return false;\n }\n\n return true;\n}\n\nvar TransformStreamSink = function () {\n function TransformStreamSink(transformStream, startPromise) {\n _classCallCheck(this, TransformStreamSink);\n\n this._transformStream = transformStream;\n this._startPromise = startPromise;\n }\n\n _createClass(TransformStreamSink, [{\n key: 'start',\n value: function start(c) {\n var transformStream = this._transformStream;\n\n transformStream._writableController = c;\n\n return this._startPromise.then(function () {\n return TransformStreamReadableReadyPromise(transformStream);\n });\n }\n }, {\n key: 'write',\n value: function write(chunk) {\n // console.log('TransformStreamSink.write()');\n\n var transformStream = this._transformStream;\n\n return TransformStreamTransform(transformStream, chunk);\n }\n }, {\n key: 'abort',\n value: function abort() {\n var transformStream = this._transformStream;\n transformStream._writableDone = true;\n TransformStreamErrorInternal(transformStream, new TypeError('Writable side aborted'));\n }\n }, {\n key: 'close',\n value: function close() {\n // console.log('TransformStreamSink.close()');\n\n var transformStream = this._transformStream;\n\n assert(transformStream._transforming === false);\n\n transformStream._writableDone = true;\n\n var flushPromise = PromiseInvokeOrNoop(transformStream._transformer, 'flush', [transformStream._transformStreamController]);\n // Return a promise that is fulfilled with undefined on success.\n return flushPromise.then(function () {\n if (transformStream._errored === true) {\n return Promise.reject(transformStream._storedError);\n }\n if (transformStream._readableClosed === false) {\n TransformStreamCloseReadableInternal(transformStream);\n }\n return Promise.resolve();\n }).catch(function (r) {\n TransformStreamErrorIfNeeded(transformStream, r);\n return Promise.reject(transformStream._storedError);\n });\n }\n }]);\n\n return TransformStreamSink;\n}();\n\nvar TransformStreamSource = function () {\n function TransformStreamSource(transformStream, startPromise) {\n _classCallCheck(this, TransformStreamSource);\n\n this._transformStream = transformStream;\n this._startPromise = startPromise;\n }\n\n _createClass(TransformStreamSource, [{\n key: 'start',\n value: function start(c) {\n var transformStream = this._transformStream;\n\n transformStream._readableController = c;\n\n return this._startPromise.then(function () {\n // Prevent the first pull() call until there is backpressure.\n\n assert(transformStream._backpressureChangePromise !== undefined, '_backpressureChangePromise should have been initialized');\n\n if (transformStream._backpressure === true) {\n return Promise.resolve();\n }\n\n assert(transformStream._backpressure === false, '_backpressure should have been initialized');\n\n return transformStream._backpressureChangePromise;\n });\n }\n }, {\n key: 'pull',\n value: function pull() {\n // console.log('TransformStreamSource.pull()');\n\n var transformStream = this._transformStream;\n\n // Invariant. Enforced by the promises returned by start() and pull().\n assert(transformStream._backpressure === true, 'pull() should be never called while _backpressure is false');\n\n assert(transformStream._backpressureChangePromise !== undefined, '_backpressureChangePromise should have been initialized');\n\n TransformStreamSetBackpressure(transformStream, false);\n\n // Prevent the next pull() call until there is backpressure.\n return transformStream._backpressureChangePromise;\n }\n }, {\n key: 'cancel',\n value: function cancel() {\n var transformStream = this._transformStream;\n transformStream._readableClosed = true;\n TransformStreamErrorInternal(transformStream, new TypeError('Readable side canceled'));\n }\n }]);\n\n return TransformStreamSource;\n}();\n\nvar TransformStreamDefaultController = function () {\n function TransformStreamDefaultController(transformStream) {\n _classCallCheck(this, TransformStreamDefaultController);\n\n if (IsTransformStream(transformStream) === false) {\n throw new TypeError('TransformStreamDefaultController can only be ' + 'constructed with a TransformStream instance');\n }\n\n if (transformStream._transformStreamController !== undefined) {\n throw new TypeError('TransformStreamDefaultController instances can ' + 'only be created by the TransformStream constructor');\n }\n\n this._controlledTransformStream = transformStream;\n }\n\n _createClass(TransformStreamDefaultController, [{\n key: 'enqueue',\n value: function enqueue(chunk) {\n if (IsTransformStreamDefaultController(this) === false) {\n throw defaultControllerBrandCheckException('enqueue');\n }\n\n TransformStreamEnqueueToReadable(this._controlledTransformStream, chunk);\n }\n }, {\n key: 'close',\n value: function close() {\n if (IsTransformStreamDefaultController(this) === false) {\n throw defaultControllerBrandCheckException('close');\n }\n\n TransformStreamCloseReadable(this._controlledTransformStream);\n }\n }, {\n key: 'error',\n value: function error(reason) {\n if (IsTransformStreamDefaultController(this) === false) {\n throw defaultControllerBrandCheckException('error');\n }\n\n TransformStreamError(this._controlledTransformStream, reason);\n }\n }, {\n key: 'desiredSize',\n get: function get() {\n if (IsTransformStreamDefaultController(this) === false) {\n throw defaultControllerBrandCheckException('desiredSize');\n }\n\n var transformStream = this._controlledTransformStream;\n var readableController = transformStream._readableController;\n\n return ReadableStreamDefaultControllerGetDesiredSize(readableController);\n }\n }]);\n\n return TransformStreamDefaultController;\n}();\n\nvar TransformStream = function () {\n function TransformStream() {\n var transformer = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n _classCallCheck(this, TransformStream);\n\n this._transformer = transformer;\n var readableStrategy = transformer.readableStrategy,\n writableStrategy = transformer.writableStrategy;\n\n\n this._transforming = false;\n this._errored = false;\n this._storedError = undefined;\n\n this._writableController = undefined;\n this._readableController = undefined;\n this._transformStreamController = undefined;\n\n this._writableDone = false;\n this._readableClosed = false;\n\n this._backpressure = undefined;\n this._backpressureChangePromise = undefined;\n this._backpressureChangePromise_resolve = undefined;\n\n this._transformStreamController = new TransformStreamDefaultController(this);\n\n var startPromise_resolve = void 0;\n var startPromise = new Promise(function (resolve) {\n startPromise_resolve = resolve;\n });\n\n var source = new TransformStreamSource(this, startPromise);\n\n this._readable = new ReadableStream(source, readableStrategy);\n\n var sink = new TransformStreamSink(this, startPromise);\n\n this._writable = new WritableStream(sink, writableStrategy);\n\n assert(this._writableController !== undefined);\n assert(this._readableController !== undefined);\n\n var desiredSize = ReadableStreamDefaultControllerGetDesiredSize(this._readableController);\n // Set _backpressure based on desiredSize. As there is no read() at this point, we can just interpret\n // desiredSize being non-positive as backpressure.\n TransformStreamSetBackpressure(this, desiredSize <= 0);\n\n var transformStream = this;\n var startResult = InvokeOrNoop(transformer, 'start', [transformStream._transformStreamController]);\n startPromise_resolve(startResult);\n startPromise.catch(function (e) {\n // The underlyingSink and underlyingSource will error the readable and writable ends on their own.\n if (transformStream._errored === false) {\n transformStream._errored = true;\n transformStream._storedError = e;\n }\n });\n }\n\n _createClass(TransformStream, [{\n key: 'readable',\n get: function get() {\n if (IsTransformStream(this) === false) {\n throw streamBrandCheckException('readable');\n }\n\n return this._readable;\n }\n }, {\n key: 'writable',\n get: function get() {\n if (IsTransformStream(this) === false) {\n throw streamBrandCheckException('writable');\n }\n\n return this._writable;\n }\n }]);\n\n return TransformStream;\n}();\n\nmodule.exports = { TransformStream: TransformStream };\n\n// Helper functions for the TransformStreamDefaultController.\n\nfunction defaultControllerBrandCheckException(name) {\n return new TypeError('TransformStreamDefaultController.prototype.' + name + ' can only be used on a TransformStreamDefaultController');\n}\n\n// Helper functions for the TransformStream.\n\nfunction streamBrandCheckException(name) {\n return new TypeError('TransformStream.prototype.' + name + ' can only be used on a TransformStream');\n}\n\n/***/ }),\n/* 7 */\n/***/ (function(module, exports, __w_pdfjs_require__) {\n\nmodule.exports = __w_pdfjs_require__(5);\n\n\n/***/ })\n/******/ ])));","/* Copyright 2012 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/* globals requirejs, __non_webpack_require__ */\n\nimport {\n assert, createPromiseCapability, getVerbosityLevel, info, InvalidPDFException,\n isArrayBuffer, isNum, isSameOrigin, MissingPDFException, NativeImageDecoding,\n PasswordException, setVerbosityLevel, shadow, stringToBytes,\n UnexpectedResponseException, UnknownErrorException, unreachable, Util, warn\n} from '../shared/util';\nimport {\n DOMCanvasFactory, DOMCMapReaderFactory, DummyStatTimer, PageViewport,\n RenderingCancelledException, StatTimer\n} from './dom_utils';\nimport { FontFaceObject, FontLoader } from './font_loader';\nimport { apiCompatibilityParams } from './api_compatibility';\nimport { CanvasGraphics } from './canvas';\nimport globalScope from '../shared/global_scope';\nimport { GlobalWorkerOptions } from './worker_options';\nimport { MessageHandler } from '../shared/message_handler';\nimport { Metadata } from './metadata';\nimport { PDFDataTransportStream } from './transport_stream';\nimport { WebGLContext } from './webgl';\n\nvar DEFAULT_RANGE_CHUNK_SIZE = 65536; // 2^16 = 65536\n\nlet isWorkerDisabled = false;\nlet workerSrc;\n\nconst pdfjsFilePath =\n typeof PDFJSDev !== 'undefined' &&\n PDFJSDev.test('PRODUCTION && !(MOZCENTRAL || FIREFOX)') &&\n typeof document !== 'undefined' && document.currentScript ?\n document.currentScript.src : null;\n\nvar fakeWorkerFilesLoader = null;\nvar useRequireEnsure = false;\nif (typeof PDFJSDev !== 'undefined' && PDFJSDev.test('GENERIC')) {\n // For GENERIC build we need to add support for different fake file loaders\n // for different frameworks.\n if (typeof window === 'undefined') {\n // node.js - disable worker and set require.ensure.\n isWorkerDisabled = true;\n if (typeof __non_webpack_require__.ensure === 'undefined') {\n __non_webpack_require__.ensure = __non_webpack_require__('node-ensure');\n }\n useRequireEnsure = true;\n } else if (typeof __non_webpack_require__ !== 'undefined' &&\n typeof __non_webpack_require__.ensure === 'function') {\n useRequireEnsure = true;\n }\n if (typeof requirejs !== 'undefined' && requirejs.toUrl) {\n workerSrc = requirejs.toUrl('pdfjs-dist/build/pdf.worker.js');\n }\n var dynamicLoaderSupported =\n typeof requirejs !== 'undefined' && requirejs.load;\n fakeWorkerFilesLoader = useRequireEnsure ? (function (callback) {\n __non_webpack_require__.ensure([], function () {\n var worker;\n if (typeof PDFJSDev !== 'undefined' && PDFJSDev.test('LIB')) {\n worker = __non_webpack_require__('../pdf.worker.js');\n } else {\n worker = __non_webpack_require__('./pdf.worker.js');\n }\n callback(worker.WorkerMessageHandler);\n });\n }) : dynamicLoaderSupported ? (function (callback) {\n requirejs(['pdfjs-dist/build/pdf.worker'], function (worker) {\n callback(worker.WorkerMessageHandler);\n });\n }) : null;\n}\n\n/**\n * @typedef {function} IPDFStreamFactory\n * @param {DocumentInitParameters} params The document initialization\n * parameters. The \"url\" key is always present.\n * @return {IPDFStream}\n */\n\n/** @type IPDFStreamFactory */\nvar createPDFNetworkStream;\n\n/**\n * Sets the function that instantiates a IPDFStream as an alternative PDF data\n * transport.\n * @param {IPDFStreamFactory} pdfNetworkStreamFactory - the factory function\n * that takes document initialization parameters (including a \"url\") and returns\n * an instance of IPDFStream.\n */\nfunction setPDFNetworkStreamFactory(pdfNetworkStreamFactory) {\n createPDFNetworkStream = pdfNetworkStreamFactory;\n}\n\n/**\n * Document initialization / loading parameters object.\n *\n * @typedef {Object} DocumentInitParameters\n * @property {string} url - The URL of the PDF.\n * @property {TypedArray|Array|string} data - Binary PDF data. Use typed arrays\n * (Uint8Array) to improve the memory usage. If PDF data is BASE64-encoded,\n * use atob() to convert it to a binary string first.\n * @property {Object} httpHeaders - Basic authentication headers.\n * @property {boolean} withCredentials - Indicates whether or not cross-site\n * Access-Control requests should be made using credentials such as cookies\n * or authorization headers. The default is false.\n * @property {string} password - For decrypting password-protected PDFs.\n * @property {TypedArray} initialData - A typed array with the first portion or\n * all of the pdf data. Used by the extension since some data is already\n * loaded before the switch to range requests.\n * @property {number} length - The PDF file length. It's used for progress\n * reports and range requests operations.\n * @property {PDFDataRangeTransport} range\n * @property {number} rangeChunkSize - Optional parameter to specify\n * maximum number of bytes fetched per range request. The default value is\n * 2^16 = 65536.\n * @property {PDFWorker} worker - (optional) The worker that will be used for\n * the loading and parsing of the PDF data.\n * @property {boolean} postMessageTransfers - (optional) Enables transfer usage\n * in postMessage for ArrayBuffers. The default value is `true`.\n * @property {number} verbosity - (optional) Controls the logging level; the\n * constants from {VerbosityLevel} should be used.\n * @property {string} docBaseUrl - (optional) The base URL of the document,\n * used when attempting to recover valid absolute URLs for annotations, and\n * outline items, that (incorrectly) only specify relative URLs.\n * @property {string} nativeImageDecoderSupport - (optional) Strategy for\n * decoding certain (simple) JPEG images in the browser. This is useful for\n * environments without DOM image and canvas support, such as e.g. Node.js.\n * Valid values are 'decode', 'display' or 'none'; where 'decode' is intended\n * for browsers with full image/canvas support, 'display' for environments\n * with limited image support through stubs (useful for SVG conversion),\n * and 'none' where JPEG images will be decoded entirely by PDF.js.\n * The default value is 'decode'.\n * @property {string} cMapUrl - (optional) The URL where the predefined\n * Adobe CMaps are located. Include trailing slash.\n * @property {boolean} cMapPacked - (optional) Specifies if the Adobe CMaps are\n * binary packed.\n * @property {Object} CMapReaderFactory - (optional) The factory that will be\n * used when reading built-in CMap files. Providing a custom factory is useful\n * for environments without `XMLHttpRequest` support, such as e.g. Node.js.\n * The default value is {DOMCMapReaderFactory}.\n * @property {boolean} stopAtErrors - (optional) Reject certain promises, e.g.\n * `getOperatorList`, `getTextContent`, and `RenderTask`, when the associated\n * PDF data cannot be successfully parsed, instead of attempting to recover\n * whatever possible of the data. The default value is `false`.\n * @property {number} maxImageSize - (optional) The maximum allowed image size\n * in total pixels, i.e. width * height. Images above this value will not be\n * rendered. Use -1 for no limit, which is also the default value.\n * @property {boolean} isEvalSupported - (optional) Determines if we can eval\n * strings as JS. Primarily used to improve performance of font rendering,\n * and when parsing PDF functions. The default value is `true`.\n * @property {boolean} disableFontFace - (optional) By default fonts are\n * converted to OpenType fonts and loaded via font face rules. If disabled,\n * fonts will be rendered using a built-in font renderer that constructs the\n * glyphs with primitive path commands. The default value is `false`.\n * @property {boolean} disableRange - (optional) Disable range request loading\n * of PDF files. When enabled, and if the server supports partial content\n * requests, then the PDF will be fetched in chunks.\n * The default value is `false`.\n * @property {boolean} disableStream - (optional) Disable streaming of PDF file\n * data. By default PDF.js attempts to load PDFs in chunks.\n * The default value is `false`.\n * @property {boolean} disableAutoFetch - (optional) Disable pre-fetching of PDF\n * file data. When range requests are enabled PDF.js will automatically keep\n * fetching more data even if it isn't needed to display the current page.\n * The default value is `false`.\n * NOTE: It is also necessary to disable streaming, see above,\n * in order for disabling of pre-fetching to work correctly.\n * @property {boolean} disableCreateObjectURL - (optional) Disable the use of\n * `URL.createObjectURL`, for compatibility with older browsers.\n * The default value is `false`.\n * @property {boolean} pdfBug - (optional) Enables special hooks for debugging\n * PDF.js (see `web/debugger.js`). The default value is `false`.\n */\n\n/**\n * @typedef {Object} PDFDocumentStats\n * @property {Array} streamTypes - Used stream types in the document (an item\n * is set to true if specific stream ID was used in the document).\n * @property {Array} fontTypes - Used font type in the document (an item is set\n * to true if specific font ID was used in the document).\n */\n\n/**\n * This is the main entry point for loading a PDF and interacting with it.\n * NOTE: If a URL is used to fetch the PDF data a standard XMLHttpRequest(XHR)\n * is used, which means it must follow the same origin rules that any XHR does\n * e.g. No cross domain requests without CORS.\n *\n * @param {string|TypedArray|DocumentInitParameters|PDFDataRangeTransport} src\n * Can be a url to where a PDF is located, a typed array (Uint8Array)\n * already populated with data or parameter object.\n *\n * @return {PDFDocumentLoadingTask}\n */\nfunction getDocument(src) {\n var task = new PDFDocumentLoadingTask();\n\n var source;\n if (typeof src === 'string') {\n source = { url: src, };\n } else if (isArrayBuffer(src)) {\n source = { data: src, };\n } else if (src instanceof PDFDataRangeTransport) {\n source = { range: src, };\n } else {\n if (typeof src !== 'object') {\n throw new Error('Invalid parameter in getDocument, ' +\n 'need either Uint8Array, string or a parameter object');\n }\n if (!src.url && !src.data && !src.range) {\n throw new Error(\n 'Invalid parameter object: need either .data, .range or .url');\n }\n\n source = src;\n }\n\n let params = Object.create(null);\n var rangeTransport = null;\n let worker = null;\n let CMapReaderFactory = DOMCMapReaderFactory;\n\n for (var key in source) {\n if (key === 'url' && typeof window !== 'undefined') {\n // The full path is required in the 'url' field.\n params[key] = new URL(source[key], window.location).href;\n continue;\n } else if (key === 'range') {\n rangeTransport = source[key];\n continue;\n } else if (key === 'worker') {\n worker = source[key];\n continue;\n } else if (key === 'data' && !(source[key] instanceof Uint8Array)) {\n // Converting string or array-like data to Uint8Array.\n var pdfBytes = source[key];\n if (typeof pdfBytes === 'string') {\n params[key] = stringToBytes(pdfBytes);\n } else if (typeof pdfBytes === 'object' && pdfBytes !== null &&\n !isNaN(pdfBytes.length)) {\n params[key] = new Uint8Array(pdfBytes);\n } else if (isArrayBuffer(pdfBytes)) {\n params[key] = new Uint8Array(pdfBytes);\n } else {\n throw new Error('Invalid PDF binary data: either typed array, ' +\n 'string or array-like object is expected in the ' +\n 'data property.');\n }\n continue;\n } else if (key === 'CMapReaderFactory') {\n CMapReaderFactory = source[key];\n continue;\n }\n params[key] = source[key];\n }\n\n params.rangeChunkSize = params.rangeChunkSize || DEFAULT_RANGE_CHUNK_SIZE;\n params.ignoreErrors = params.stopAtErrors !== true;\n params.pdfBug = params.pdfBug === true;\n\n const NativeImageDecoderValues = Object.values(NativeImageDecoding);\n if (params.nativeImageDecoderSupport === undefined ||\n !NativeImageDecoderValues.includes(params.nativeImageDecoderSupport)) {\n params.nativeImageDecoderSupport =\n (apiCompatibilityParams.nativeImageDecoderSupport ||\n NativeImageDecoding.DECODE);\n }\n if (!Number.isInteger(params.maxImageSize)) {\n params.maxImageSize = -1;\n }\n if (typeof params.isEvalSupported !== 'boolean') {\n params.isEvalSupported = true;\n }\n if (typeof params.disableFontFace !== 'boolean') {\n params.disableFontFace = apiCompatibilityParams.disableFontFace || false;\n }\n\n if (typeof params.disableRange !== 'boolean') {\n params.disableRange = apiCompatibilityParams.disableRange || false;\n }\n if (typeof params.disableStream !== 'boolean') {\n params.disableStream = apiCompatibilityParams.disableStream || false;\n }\n if (typeof params.disableAutoFetch !== 'boolean') {\n params.disableAutoFetch = false;\n }\n if (typeof params.disableCreateObjectURL !== 'boolean') {\n params.disableCreateObjectURL =\n apiCompatibilityParams.disableCreateObjectURL || false;\n }\n\n // Set the main-thread verbosity level.\n setVerbosityLevel(params.verbosity);\n\n if (!worker) {\n const workerParams = {\n postMessageTransfers: params.postMessageTransfers,\n verbosity: params.verbosity,\n };\n // Worker was not provided -- creating and owning our own. If message port\n // is specified in global worker options, using it.\n let workerPort = GlobalWorkerOptions.workerPort;\n if (workerPort) {\n workerParams.port = workerPort;\n worker = PDFWorker.fromPort(workerParams);\n } else {\n worker = new PDFWorker(workerParams);\n }\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 return _fetchDocument(worker, params, rangeTransport, docId).then(\n function (workerId) {\n if (task.destroyed) {\n throw new Error('Loading aborted');\n }\n\n let networkStream;\n if (rangeTransport) {\n networkStream = new PDFDataTransportStream({\n length: params.length,\n initialData: params.initialData,\n disableRange: params.disableRange,\n disableStream: params.disableStream,\n }, rangeTransport);\n } else if (!params.data) {\n networkStream = createPDFNetworkStream({\n url: params.url,\n length: params.length,\n httpHeaders: params.httpHeaders,\n withCredentials: params.withCredentials,\n rangeChunkSize: params.rangeChunkSize,\n disableRange: params.disableRange,\n disableStream: params.disableStream,\n });\n }\n\n var messageHandler = new MessageHandler(docId, workerId, worker.port);\n messageHandler.postMessageTransfers = worker.postMessageTransfers;\n var transport = new WorkerTransport(messageHandler, task, networkStream,\n params, CMapReaderFactory);\n task._transport = transport;\n messageHandler.send('Ready', null);\n });\n }).catch(task._capability.reject);\n\n return task;\n}\n\n/**\n * Starts fetching of specified PDF document/data.\n * @param {PDFWorker} worker\n * @param {Object} source\n * @param {PDFDataRangeTransport} pdfDataRangeTransport\n * @param {string} docId Unique document id, used as MessageHandler id.\n * @returns {Promise} The promise, which is resolved when worker id of\n * MessageHandler is known.\n * @private\n */\nfunction _fetchDocument(worker, source, pdfDataRangeTransport, docId) {\n if (worker.destroyed) {\n return Promise.reject(new Error('Worker was destroyed'));\n }\n\n if (pdfDataRangeTransport) {\n source.length = pdfDataRangeTransport.length;\n source.initialData = pdfDataRangeTransport.initialData;\n }\n return worker.messageHandler.sendWithPromise('GetDocRequest', {\n docId,\n apiVersion: (typeof PDFJSDev !== 'undefined' ?\n PDFJSDev.eval('BUNDLE_VERSION') : null),\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 disableCreateObjectURL: source.disableCreateObjectURL,\n postMessageTransfers: worker.postMessageTransfers,\n docBaseUrl: source.docBaseUrl,\n nativeImageDecoderSupport: source.nativeImageDecoderSupport,\n ignoreErrors: source.ignoreErrors,\n isEvalSupported: source.isEvalSupported,\n }).then(function (workerId) {\n if (worker.destroyed) {\n throw new Error('Worker was destroyed');\n }\n return workerId;\n });\n}\n\n/**\n * PDF document loading operation.\n * @class\n * @alias PDFDocumentLoadingTask\n */\nvar PDFDocumentLoadingTask = (function PDFDocumentLoadingTaskClosure() {\n var nextDocumentId = 0;\n\n /** @constructs PDFDocumentLoadingTask */\n function PDFDocumentLoadingTask() {\n this._capability = createPromiseCapability();\n this._transport = null;\n this._worker = null;\n\n /**\n * Unique document loading task id -- used in MessageHandlers.\n * @type {string}\n */\n this.docId = 'd' + (nextDocumentId++);\n\n /**\n * Shows if loading task is destroyed.\n * @type {boolean}\n */\n this.destroyed = false;\n\n /**\n * Callback to request a password if wrong or no password was provided.\n * The callback receives two parameters: function that needs to be called\n * with new password and reason (see {PasswordResponses}).\n */\n this.onPassword = null;\n\n /**\n * Callback to be able to monitor the loading progress of the PDF file\n * (necessary to implement e.g. a loading bar). The callback receives\n * an {Object} with the properties: {number} loaded and {number} total.\n */\n this.onProgress = null;\n\n /**\n * Callback to when unsupported feature is used. The callback receives\n * an {UNSUPPORTED_FEATURES} argument.\n */\n this.onUnsupportedFeature = null;\n }\n\n PDFDocumentLoadingTask.prototype =\n /** @lends PDFDocumentLoadingTask.prototype */ {\n /**\n * @return {Promise}\n */\n get promise() {\n return this._capability.promise;\n },\n\n /**\n * Aborts all network requests and destroys worker.\n * @return {Promise} A promise that is resolved after destruction activity\n * is completed.\n */\n destroy() {\n this.destroyed = true;\n\n var transportDestroyed = !this._transport ? Promise.resolve() :\n this._transport.destroy();\n return transportDestroyed.then(() => {\n this._transport = null;\n if (this._worker) {\n this._worker.destroy();\n this._worker = null;\n }\n });\n },\n\n /**\n * Registers callbacks to indicate the document loading completion.\n *\n * @param {function} onFulfilled The callback for the loading completion.\n * @param {function} onRejected The callback for the loading failure.\n * @return {Promise} A promise that is resolved after the onFulfilled or\n * onRejected callback.\n */\n then: function PDFDocumentLoadingTask_then(onFulfilled, onRejected) {\n return this.promise.then.apply(this.promise, arguments);\n },\n };\n\n return PDFDocumentLoadingTask;\n})();\n\n/**\n * Abstract class to support range requests file loading.\n * @class\n * @alias PDFDataRangeTransport\n * @param {number} length\n * @param {Uint8Array} initialData\n */\nvar PDFDataRangeTransport = (function pdfDataRangeTransportClosure() {\n function PDFDataRangeTransport(length, initialData) {\n this.length = length;\n this.initialData = initialData;\n\n this._rangeListeners = [];\n this._progressListeners = [];\n this._progressiveReadListeners = [];\n this._readyCapability = createPromiseCapability();\n }\n PDFDataRangeTransport.prototype =\n /** @lends PDFDataRangeTransport.prototype */ {\n addRangeListener:\n function PDFDataRangeTransport_addRangeListener(listener) {\n this._rangeListeners.push(listener);\n },\n\n addProgressListener:\n function PDFDataRangeTransport_addProgressListener(listener) {\n this._progressListeners.push(listener);\n },\n\n addProgressiveReadListener:\n function PDFDataRangeTransport_addProgressiveReadListener(listener) {\n this._progressiveReadListeners.push(listener);\n },\n\n onDataRange: function PDFDataRangeTransport_onDataRange(begin, chunk) {\n var listeners = this._rangeListeners;\n for (var i = 0, n = listeners.length; i < n; ++i) {\n listeners[i](begin, chunk);\n }\n },\n\n onDataProgress: function PDFDataRangeTransport_onDataProgress(loaded) {\n this._readyCapability.promise.then(() => {\n var listeners = this._progressListeners;\n for (var i = 0, n = listeners.length; i < n; ++i) {\n listeners[i](loaded);\n }\n });\n },\n\n onDataProgressiveRead:\n function PDFDataRangeTransport_onDataProgress(chunk) {\n this._readyCapability.promise.then(() => {\n var listeners = this._progressiveReadListeners;\n for (var i = 0, n = listeners.length; i < n; ++i) {\n listeners[i](chunk);\n }\n });\n },\n\n transportReady: function PDFDataRangeTransport_transportReady() {\n this._readyCapability.resolve();\n },\n\n requestDataRange:\n function PDFDataRangeTransport_requestDataRange(begin, end) {\n unreachable('Abstract method PDFDataRangeTransport.requestDataRange');\n },\n\n abort: function PDFDataRangeTransport_abort() {\n },\n };\n return PDFDataRangeTransport;\n})();\n\n/**\n * Proxy to a PDFDocument in the worker thread. Also, contains commonly used\n * properties that can be read synchronously.\n * @class\n * @alias PDFDocumentProxy\n */\nvar PDFDocumentProxy = (function PDFDocumentProxyClosure() {\n function PDFDocumentProxy(pdfInfo, transport, loadingTask) {\n this.pdfInfo = pdfInfo;\n this.transport = transport;\n this.loadingTask = loadingTask;\n }\n PDFDocumentProxy.prototype = /** @lends PDFDocumentProxy.prototype */ {\n /**\n * @return {number} Total number of pages the PDF contains.\n */\n get numPages() {\n return this.pdfInfo.numPages;\n },\n /**\n * @return {string} A unique ID to identify a PDF. Not guaranteed to be\n * unique.\n */\n get fingerprint() {\n return this.pdfInfo.fingerprint;\n },\n /**\n * @param {number} pageNumber The page number to get. The first page is 1.\n * @return {Promise} A promise that is resolved with a {@link PDFPageProxy}\n * object.\n */\n getPage(pageNumber) {\n return this.transport.getPage(pageNumber);\n },\n /**\n * @param {{num: number, gen: number}} ref The page reference. Must have\n * the 'num' and 'gen' properties.\n * @return {Promise} A promise that is resolved with the page index that is\n * associated with the reference.\n */\n getPageIndex: function PDFDocumentProxy_getPageIndex(ref) {\n return this.transport.getPageIndex(ref);\n },\n /**\n * @return {Promise} A promise that is resolved with a lookup table for\n * mapping named destinations to reference numbers.\n *\n * This can be slow for large documents: use getDestination instead\n */\n getDestinations: function PDFDocumentProxy_getDestinations() {\n return this.transport.getDestinations();\n },\n /**\n * @param {string} id The named destination to get.\n * @return {Promise} A promise that is resolved with all information\n * of the given named destination.\n */\n getDestination: function PDFDocumentProxy_getDestination(id) {\n return this.transport.getDestination(id);\n },\n /**\n * @return {Promise} A promise that is resolved with:\n * an Array containing the pageLabels that correspond to the pageIndexes,\n * or `null` when no pageLabels are present in the PDF file.\n */\n getPageLabels: function PDFDocumentProxy_getPageLabels() {\n return this.transport.getPageLabels();\n },\n /**\n * @return {Promise} A promise that is resolved with a {string} containing\n * the PageMode name.\n */\n getPageMode() {\n return this.transport.getPageMode();\n },\n /**\n * @return {Promise} A promise that is resolved with a lookup table for\n * mapping named attachments to their content.\n */\n getAttachments: function PDFDocumentProxy_getAttachments() {\n return this.transport.getAttachments();\n },\n /**\n * @return {Promise} A promise that is resolved with an {Array} of all the\n * JavaScript strings in the name tree, or `null` if no JavaScript exists.\n */\n getJavaScript() {\n return this.transport.getJavaScript();\n },\n /**\n * @return {Promise} A promise that is resolved with an {Array} that is a\n * tree outline (if it has one) of the PDF. The tree is in the format of:\n * [\n * {\n * title: string,\n * bold: boolean,\n * italic: boolean,\n * color: rgb Uint8Array,\n * dest: dest obj,\n * url: string,\n * items: array of more items like this\n * },\n * ...\n * ].\n */\n getOutline: function PDFDocumentProxy_getOutline() {\n return this.transport.getOutline();\n },\n /**\n * @return {Promise} A promise that is resolved with an {Object} that has\n * info and metadata properties. Info is an {Object} filled with anything\n * available in the information dictionary and similarly metadata is a\n * {Metadata} object with information from the metadata section of the PDF.\n */\n getMetadata: function PDFDocumentProxy_getMetadata() {\n return this.transport.getMetadata();\n },\n /**\n * @return {Promise} A promise that is resolved with a TypedArray that has\n * the raw data from the PDF.\n */\n getData: function PDFDocumentProxy_getData() {\n return this.transport.getData();\n },\n /**\n * @return {Promise} A promise that is resolved when the document's data\n * is loaded. It is resolved with an {Object} that contains the length\n * property that indicates size of the PDF data in bytes.\n */\n getDownloadInfo: function PDFDocumentProxy_getDownloadInfo() {\n return this.transport.downloadInfoCapability.promise;\n },\n /**\n * @return {Promise} A promise this is resolved with current stats about\n * document structures (see {@link PDFDocumentStats}).\n */\n getStats: function PDFDocumentProxy_getStats() {\n return this.transport.getStats();\n },\n /**\n * Cleans up resources allocated by the document, e.g. created @font-face.\n */\n cleanup: function PDFDocumentProxy_cleanup() {\n this.transport.startCleanup();\n },\n /**\n * Destroys current document instance and terminates worker.\n */\n destroy: function PDFDocumentProxy_destroy() {\n return this.loadingTask.destroy();\n },\n\n get loadingParams() {\n return this.transport.loadingParams;\n },\n };\n return PDFDocumentProxy;\n})();\n\n/**\n * Page getTextContent parameters.\n *\n * @typedef {Object} getTextContentParameters\n * @property {boolean} normalizeWhitespace - replaces all occurrences of\n * whitespace with standard spaces (0x20). The default value is `false`.\n * @property {boolean} disableCombineTextItems - do not attempt to combine\n * same line {@link TextItem}'s. The default value is `false`.\n */\n\n/**\n * Page text content.\n *\n * @typedef {Object} TextContent\n * @property {array} items - array of {@link TextItem}\n * @property {Object} styles - {@link TextStyles} objects, indexed by font name.\n */\n\n/**\n * Page text content part.\n *\n * @typedef {Object} TextItem\n * @property {string} str - text content.\n * @property {string} dir - text direction: 'ttb', 'ltr' or 'rtl'.\n * @property {array} transform - transformation matrix.\n * @property {number} width - width in device space.\n * @property {number} height - height in device space.\n * @property {string} fontName - font name used by pdf.js for converted font.\n */\n\n/**\n * Text style.\n *\n * @typedef {Object} TextStyle\n * @property {number} ascent - font ascent.\n * @property {number} descent - font descent.\n * @property {boolean} vertical - text is in vertical mode.\n * @property {string} fontFamily - possible font family\n */\n\n/**\n * Page annotation parameters.\n *\n * @typedef {Object} GetAnnotationsParameters\n * @property {string} intent - Determines the annotations that will be fetched,\n * can be either 'display' (viewable annotations) or 'print'\n * (printable annotations).\n * If the parameter is omitted, all annotations are fetched.\n */\n\n/**\n * Page render parameters.\n *\n * @typedef {Object} RenderParameters\n * @property {Object} canvasContext - A 2D context of a DOM Canvas object.\n * @property {PageViewport} viewport - Rendering viewport obtained by\n * calling of PDFPage.getViewport method.\n * @property {string} intent - Rendering intent, can be 'display' or 'print'\n * (default value is 'display').\n * @property {boolean} enableWebGL - (optional) Enables WebGL accelerated\n * rendering for some operations. The default value is `false`.\n * @property {boolean} renderInteractiveForms - (optional) Whether or not\n * interactive form elements are rendered in the display\n * layer. If so, we do not render them on canvas as well.\n * @property {Array} transform - (optional) Additional transform, applied\n * just before viewport transform.\n * @property {Object} imageLayer - (optional) An object that has beginLayout,\n * endLayout and appendImage functions.\n * @property {Object} canvasFactory - (optional) The factory that will be used\n * when creating canvases. The default value is\n * {DOMCanvasFactory}.\n * @property {Object} background - (optional) Background to use for the canvas.\n * Can use any valid canvas.fillStyle: A DOMString parsed as\n * CSS value, a CanvasGradient object (a linear or\n * radial gradient) or a CanvasPattern object (a repetitive\n * image). The default value is 'rgb(255,255,255)'.\n */\n\n/**\n * PDF page operator list.\n *\n * @typedef {Object} PDFOperatorList\n * @property {Array} fnArray - Array containing the operator functions.\n * @property {Array} argsArray - Array containing the arguments of the\n * functions.\n */\n\n/**\n * Proxy to a PDFPage in the worker thread.\n * @class\n * @alias PDFPageProxy\n */\nvar PDFPageProxy = (function PDFPageProxyClosure() {\n function PDFPageProxy(pageIndex, pageInfo, transport, pdfBug = false) {\n this.pageIndex = pageIndex;\n this.pageInfo = pageInfo;\n this.transport = transport;\n this._stats = (pdfBug ? new StatTimer() : DummyStatTimer);\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 = Object.create(null);\n this.destroyed = false;\n }\n PDFPageProxy.prototype = /** @lends PDFPageProxy.prototype */ {\n /**\n * @return {number} Page number of the page. First page is 1.\n */\n get pageNumber() {\n return this.pageIndex + 1;\n },\n /**\n * @return {number} The number of degrees the page is rotated clockwise.\n */\n get rotate() {\n return this.pageInfo.rotate;\n },\n /**\n * @return {Object} The reference that points to this page. It has 'num' and\n * 'gen' properties.\n */\n get ref() {\n return this.pageInfo.ref;\n },\n /**\n * @return {number} The default size of units in 1/72nds of an inch.\n */\n get userUnit() {\n return this.pageInfo.userUnit;\n },\n /**\n * @return {Array} An array of the visible portion of the PDF page in the\n * user space units - [x1, y1, x2, y2].\n */\n get view() {\n return this.pageInfo.view;\n },\n\n /**\n * @param {number} scale The desired scale of the viewport.\n * @param {number} rotate Degrees to rotate the viewport. If omitted this\n * defaults to the page rotation.\n * @param {boolean} dontFlip (optional) If true, axis Y will not be flipped.\n * @return {PageViewport} Contains 'width' and 'height' properties\n * along with transforms required for rendering.\n */\n getViewport(scale, rotate = this.rotate, dontFlip = false) {\n return new PageViewport({\n viewBox: this.view,\n scale,\n rotation: rotate,\n dontFlip,\n });\n },\n /**\n * @param {GetAnnotationsParameters} params - Annotation parameters.\n * @return {Promise} A promise that is resolved with an {Array} of the\n * annotation objects.\n */\n getAnnotations: function PDFPageProxy_getAnnotations(params) {\n var intent = (params && params.intent) || null;\n\n if (!this.annotationsPromise || this.annotationsIntent !== intent) {\n this.annotationsPromise = this.transport.getAnnotations(this.pageIndex,\n intent);\n this.annotationsIntent = intent;\n }\n return this.annotationsPromise;\n },\n /**\n * Begins the process of rendering a page to the desired context.\n * @param {RenderParameters} params Page render parameters.\n * @return {RenderTask} An object that contains the promise, which\n * is resolved when the page finishes rendering.\n */\n render: function PDFPageProxy_render(params) {\n let stats = this._stats;\n stats.time('Overall');\n\n // If there was a pending destroy cancel it so no cleanup happens during\n // this call to render.\n this.pendingCleanup = false;\n\n var renderingIntent = (params.intent === 'print' ? 'print' : 'display');\n var canvasFactory = params.canvasFactory || new DOMCanvasFactory();\n let webGLContext = new WebGLContext({\n enable: params.enableWebGL,\n });\n\n if (!this.intentStates[renderingIntent]) {\n this.intentStates[renderingIntent] = Object.create(null);\n }\n var intentState = this.intentStates[renderingIntent];\n\n // If there's no displayReadyCapability yet, then the operatorList\n // was never requested before. Make the request and create the promise.\n if (!intentState.displayReadyCapability) {\n intentState.receivingOperatorList = true;\n intentState.displayReadyCapability = createPromiseCapability();\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n };\n\n stats.time('Page Request');\n this.transport.messageHandler.send('RenderPageRequest', {\n pageIndex: this.pageNumber - 1,\n intent: renderingIntent,\n renderInteractiveForms: (params.renderInteractiveForms === true),\n });\n }\n\n var complete = (error) => {\n var i = intentState.renderTasks.indexOf(internalRenderTask);\n if (i >= 0) {\n intentState.renderTasks.splice(i, 1);\n }\n\n if (this.cleanupAfterRender) {\n this.pendingCleanup = true;\n }\n this._tryCleanup();\n\n if (error) {\n internalRenderTask.capability.reject(error);\n } else {\n internalRenderTask.capability.resolve();\n }\n stats.timeEnd('Rendering');\n stats.timeEnd('Overall');\n };\n\n var internalRenderTask = new InternalRenderTask(complete, params,\n this.objs,\n this.commonObjs,\n intentState.operatorList,\n this.pageNumber,\n canvasFactory,\n webGLContext,\n this._pdfBug);\n internalRenderTask.useRequestAnimationFrame = renderingIntent !== 'print';\n if (!intentState.renderTasks) {\n intentState.renderTasks = [];\n }\n intentState.renderTasks.push(internalRenderTask);\n var renderTask = internalRenderTask.task;\n\n intentState.displayReadyCapability.promise.then((transparency) => {\n if (this.pendingCleanup) {\n complete();\n return;\n }\n stats.time('Rendering');\n internalRenderTask.initializeGraphics(transparency);\n internalRenderTask.operatorListChanged();\n }).catch(complete);\n\n return renderTask;\n },\n\n /**\n * @return {Promise} A promise resolved with an {@link PDFOperatorList}\n * object that represents page's operator list.\n */\n getOperatorList: function PDFPageProxy_getOperatorList() {\n function operatorListChanged() {\n if (intentState.operatorList.lastChunk) {\n intentState.opListReadCapability.resolve(intentState.operatorList);\n\n var i = intentState.renderTasks.indexOf(opListTask);\n if (i >= 0) {\n intentState.renderTasks.splice(i, 1);\n }\n }\n }\n\n var renderingIntent = 'oplist';\n if (!this.intentStates[renderingIntent]) {\n this.intentStates[renderingIntent] = Object.create(null);\n }\n var intentState = this.intentStates[renderingIntent];\n var opListTask;\n\n if (!intentState.opListReadCapability) {\n opListTask = {};\n opListTask.operatorListChanged = operatorListChanged;\n intentState.receivingOperatorList = true;\n intentState.opListReadCapability = createPromiseCapability();\n intentState.renderTasks = [];\n intentState.renderTasks.push(opListTask);\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n };\n\n this.transport.messageHandler.send('RenderPageRequest', {\n pageIndex: this.pageIndex,\n intent: renderingIntent,\n });\n }\n return intentState.opListReadCapability.promise;\n },\n\n /**\n * @param {getTextContentParameters} params - getTextContent parameters.\n * @return {ReadableStream} ReadableStream to read textContent chunks.\n */\n streamTextContent(params = {}) {\n const TEXT_CONTENT_CHUNK_SIZE = 100;\n return this.transport.messageHandler.sendWithStream('GetTextContent', {\n pageIndex: this.pageNumber - 1,\n normalizeWhitespace: (params.normalizeWhitespace === true),\n combineTextItems: (params.disableCombineTextItems !== true),\n }, {\n highWaterMark: TEXT_CONTENT_CHUNK_SIZE,\n size(textContent) {\n return textContent.items.length;\n },\n });\n },\n\n /**\n * @param {getTextContentParameters} params - getTextContent parameters.\n * @return {Promise} That is resolved a {@link TextContent}\n * object that represent the page text content.\n */\n getTextContent: function PDFPageProxy_getTextContent(params) {\n params = params || {};\n let readableStream = this.streamTextContent(params);\n\n return new Promise(function(resolve, reject) {\n function pump() {\n reader.read().then(function({ value, done, }) {\n if (done) {\n resolve(textContent);\n return;\n }\n Util.extendObj(textContent.styles, value.styles);\n Util.appendToArray(textContent.items, value.items);\n pump();\n }, reject);\n }\n\n let reader = readableStream.getReader();\n let textContent = {\n items: [],\n styles: Object.create(null),\n };\n\n pump();\n });\n },\n\n /**\n * Destroys page object.\n */\n _destroy: function PDFPageProxy_destroy() {\n this.destroyed = true;\n this.transport.pageCache[this.pageIndex] = null;\n\n var waitOn = [];\n Object.keys(this.intentStates).forEach(function(intent) {\n if (intent === 'oplist') {\n // Avoid errors below, since the renderTasks are just stubs.\n return;\n }\n var intentState = this.intentStates[intent];\n intentState.renderTasks.forEach(function(renderTask) {\n var renderCompleted = renderTask.capability.promise.\n catch(function () {}); // ignoring failures\n waitOn.push(renderCompleted);\n renderTask.cancel();\n });\n }, this);\n this.objs.clear();\n this.annotationsPromise = null;\n this.pendingCleanup = false;\n return Promise.all(waitOn);\n },\n\n /**\n * Cleans up resources allocated by the page.\n * @param {boolean} resetStats - (optional) Reset page stats, if enabled.\n * The default value is `false`.\n */\n cleanup(resetStats = false) {\n this.pendingCleanup = true;\n this._tryCleanup(resetStats);\n },\n /**\n * For internal use only. Attempts to clean up if rendering is in a state\n * where that's possible.\n * @ignore\n */\n _tryCleanup(resetStats = false) {\n if (!this.pendingCleanup ||\n Object.keys(this.intentStates).some(function(intent) {\n var intentState = this.intentStates[intent];\n return (intentState.renderTasks.length !== 0 ||\n intentState.receivingOperatorList);\n }, this)) {\n return;\n }\n\n Object.keys(this.intentStates).forEach(function(intent) {\n delete this.intentStates[intent];\n }, this);\n this.objs.clear();\n this.annotationsPromise = null;\n if (resetStats && this._stats instanceof StatTimer) {\n this._stats = new StatTimer();\n }\n this.pendingCleanup = false;\n },\n /**\n * For internal use only.\n * @ignore\n */\n _startRenderPage: function PDFPageProxy_startRenderPage(transparency,\n intent) {\n var intentState = this.intentStates[intent];\n // TODO Refactor RenderPageRequest to separate rendering\n // and operator list logic\n if (intentState.displayReadyCapability) {\n intentState.displayReadyCapability.resolve(transparency);\n }\n },\n /**\n * For internal use only.\n * @ignore\n */\n _renderPageChunk: function PDFPageProxy_renderPageChunk(operatorListChunk,\n intent) {\n var intentState = this.intentStates[intent];\n var i, ii;\n // Add the new chunk to the current operator list.\n for (i = 0, ii = operatorListChunk.length; i < ii; i++) {\n intentState.operatorList.fnArray.push(operatorListChunk.fnArray[i]);\n intentState.operatorList.argsArray.push(\n operatorListChunk.argsArray[i]);\n }\n intentState.operatorList.lastChunk = operatorListChunk.lastChunk;\n\n // Notify all the rendering tasks there are more operators to be consumed.\n for (i = 0; i < intentState.renderTasks.length; i++) {\n intentState.renderTasks[i].operatorListChanged();\n }\n\n if (operatorListChunk.lastChunk) {\n intentState.receivingOperatorList = false;\n this._tryCleanup();\n }\n },\n\n /**\n * @return {Object} Returns page stats, if enabled.\n */\n get stats() {\n return (this._stats instanceof StatTimer ? this._stats : null);\n },\n };\n return PDFPageProxy;\n})();\n\nclass LoopbackPort {\n constructor(defer = true) {\n this._listeners = [];\n this._defer = defer;\n this._deferred = Promise.resolve(undefined);\n }\n\n postMessage(obj, transfers) {\n function cloneValue(value) {\n // Trying to perform a structured clone close to the spec, including\n // transfers.\n if (typeof value !== 'object' || value === null) {\n return value;\n }\n if (cloned.has(value)) { // already cloned the object\n return cloned.get(value);\n }\n var result;\n var buffer;\n if ((buffer = value.buffer) && isArrayBuffer(buffer)) {\n // We found object with ArrayBuffer (typed array).\n var transferable = transfers && transfers.includes(buffer);\n if (value === buffer) {\n // Special case when we are faking typed arrays in compatibility.js.\n result = value;\n } else if (transferable) {\n result = new value.constructor(buffer, value.byteOffset,\n value.byteLength);\n } else {\n result = new value.constructor(value);\n }\n cloned.set(value, result);\n return result;\n }\n result = Array.isArray(value) ? [] : {};\n cloned.set(value, result); // adding to cache now for cyclic references\n // Cloning all value and object properties, however ignoring properties\n // defined via getter.\n for (var i in value) {\n var desc, p = value;\n while (!(desc = Object.getOwnPropertyDescriptor(p, i))) {\n p = Object.getPrototypeOf(p);\n }\n if (typeof desc.value === 'undefined' ||\n typeof desc.value === 'function') {\n continue;\n }\n result[i] = cloneValue(desc.value);\n }\n return result;\n }\n\n if (!this._defer) {\n this._listeners.forEach(function (listener) {\n listener.call(this, { data: obj, });\n }, this);\n return;\n }\n\n var cloned = new WeakMap();\n var e = { data: cloneValue(obj), };\n this._deferred.then(() => {\n this._listeners.forEach(function (listener) {\n listener.call(this, e);\n }, this);\n });\n }\n\n addEventListener(name, listener) {\n this._listeners.push(listener);\n }\n\n removeEventListener(name, listener) {\n var i = this._listeners.indexOf(listener);\n this._listeners.splice(i, 1);\n }\n\n terminate() {\n this._listeners = [];\n }\n}\n\n/**\n * @typedef {Object} PDFWorkerParameters\n * @property {string} name - (optional) The name of the worker.\n * @property {Object} port - (optional) The `workerPort`.\n * @property {boolean} postMessageTransfers - (optional) Enables transfer usage\n * in postMessage for ArrayBuffers. The default value is `true`.\n * @property {number} verbosity - (optional) Controls the logging level; the\n * constants from {VerbosityLevel} should be used.\n */\n\n/**\n * PDF.js web worker abstraction, it controls instantiation of PDF documents and\n * WorkerTransport for them. If creation of a web worker is not possible,\n * a \"fake\" worker will be used instead.\n * @class\n */\nvar PDFWorker = (function PDFWorkerClosure() {\n let nextFakeWorkerId = 0;\n\n function getWorkerSrc() {\n if (GlobalWorkerOptions.workerSrc) {\n return GlobalWorkerOptions.workerSrc;\n }\n if (typeof workerSrc !== 'undefined') {\n return workerSrc;\n }\n if (typeof PDFJSDev !== 'undefined' &&\n PDFJSDev.test('PRODUCTION && !(MOZCENTRAL || FIREFOX)') &&\n pdfjsFilePath) {\n return pdfjsFilePath.replace(/(\\.(?:min\\.)?js)(\\?.*)?$/i, '.worker$1$2');\n }\n throw new Error('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n\n function getMainThreadWorkerMessageHandler() {\n if (typeof window === 'undefined') {\n return null;\n }\n return (window.pdfjsWorker && window.pdfjsWorker.WorkerMessageHandler);\n }\n\n let fakeWorkerFilesLoadedCapability;\n\n // Loads worker code into main thread.\n function setupFakeWorkerGlobal() {\n if (fakeWorkerFilesLoadedCapability) {\n return fakeWorkerFilesLoadedCapability.promise;\n }\n fakeWorkerFilesLoadedCapability = createPromiseCapability();\n\n let mainWorkerMessageHandler = getMainThreadWorkerMessageHandler();\n if (mainWorkerMessageHandler) {\n // The worker was already loaded using a `