[epiphany/mcatanzaro/pdfjs-2.13] Update to pdf.js 2.13.216




commit 579e4e47afd0e45927981cc9fb048db09274dede
Author: Michael Catanzaro <mcatanzaro redhat com>
Date:   Mon Feb 28 08:29:06 2022 -0600

    Update to pdf.js 2.13.216

 third-party/pdfjs/build/pdf.js                     |  6079 +++++----
 third-party/pdfjs/build/pdf.sandbox.js             |    12 +-
 third-party/pdfjs/build/pdf.worker.js              | 12353 ++++++++++---------
 third-party/pdfjs/epiphany-pdfjs-changes.patch     |    22 +-
 third-party/pdfjs/web/locale/dsb/viewer.properties |     2 +-
 .../pdfjs/web/locale/en-US/viewer.properties       |     7 +-
 .../pdfjs/web/locale/ga-IE/viewer.properties       |    25 +
 third-party/pdfjs/web/locale/hr/viewer.properties  |     4 +-
 third-party/pdfjs/web/locale/hsb/viewer.properties |     2 +-
 third-party/pdfjs/web/locale/hye/viewer.properties |    10 +-
 third-party/pdfjs/web/locale/is/viewer.properties  |    31 +-
 third-party/pdfjs/web/locale/it/viewer.properties  |     1 +
 third-party/pdfjs/web/locale/ko/viewer.properties  |     2 +-
 third-party/pdfjs/web/locale/sat/viewer.properties |     4 +-
 third-party/pdfjs/web/locale/szl/viewer.properties |     4 +-
 third-party/pdfjs/web/locale/tg/viewer.properties  |     9 +-
 third-party/pdfjs/web/viewer.css                   |    28 +-
 third-party/pdfjs/web/viewer.html                  |    16 +-
 third-party/pdfjs/web/viewer.js                    |  4960 ++++----
 19 files changed, 11912 insertions(+), 11659 deletions(-)
---
diff --git a/third-party/pdfjs/build/pdf.js b/third-party/pdfjs/build/pdf.js
index 43168287f..3e1de0b5d 100644
--- a/third-party/pdfjs/build/pdf.js
+++ b/third-party/pdfjs/build/pdf.js
@@ -2,7 +2,7 @@
  * @licstart The following is the entire license notice for the
  * Javascript code in this page
  *
- * Copyright 2021 Mozilla Foundation
+ * Copyright 2022 Mozilla Foundation
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -39,527 +39,6 @@ return /******/ (() => { // webpackBootstrap
 
 
 
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.StatTimer = exports.RenderingCancelledException = exports.PixelsPerInch = exports.PageViewport = 
exports.PDFDateString = exports.LinkTarget = exports.DOMStandardFontDataFactory = exports.DOMSVGFactory = 
exports.DOMCanvasFactory = exports.DOMCMapReaderFactory = void 0;
-exports.addLinkAttributes = addLinkAttributes;
-exports.deprecated = deprecated;
-exports.getFilenameFromUrl = getFilenameFromUrl;
-exports.getPdfFilenameFromUrl = getPdfFilenameFromUrl;
-exports.getXfaPageViewport = getXfaPageViewport;
-exports.isDataScheme = isDataScheme;
-exports.isPdfFile = isPdfFile;
-exports.isValidFetchUrl = isValidFetchUrl;
-exports.loadScript = loadScript;
-
-var _util = __w_pdfjs_require__(2);
-
-var _base_factory = __w_pdfjs_require__(5);
-
-const DEFAULT_LINK_REL = "noopener noreferrer nofollow";
-const SVG_NS = "http://www.w3.org/2000/svg";;
-const PixelsPerInch = {
-  CSS: 96.0,
-  PDF: 72.0,
-
-  get PDF_TO_CSS_UNITS() {
-    return (0, _util.shadow)(this, "PDF_TO_CSS_UNITS", this.CSS / this.PDF);
-  }
-
-};
-exports.PixelsPerInch = PixelsPerInch;
-
-class DOMCanvasFactory extends _base_factory.BaseCanvasFactory {
-  constructor({
-    ownerDocument = globalThis.document
-  } = {}) {
-    super();
-    this._document = ownerDocument;
-  }
-
-  _createCanvas(width, height) {
-    const canvas = this._document.createElement("canvas");
-
-    canvas.width = width;
-    canvas.height = height;
-    return canvas;
-  }
-
-}
-
-exports.DOMCanvasFactory = DOMCanvasFactory;
-
-async function fetchData(url, asTypedArray = false) {
-  if (isValidFetchUrl(url, document.baseURI)) {
-    const response = await fetch(url);
-
-    if (!response.ok) {
-      throw new Error(response.statusText);
-    }
-
-    return asTypedArray ? new Uint8Array(await response.arrayBuffer()) : (0, _util.stringToBytes)(await 
response.text());
-  }
-
-  return new Promise((resolve, reject) => {
-    const request = new XMLHttpRequest();
-    request.open("GET", url, true);
-
-    if (asTypedArray) {
-      request.responseType = "arraybuffer";
-    }
-
-    request.onreadystatechange = () => {
-      if (request.readyState !== XMLHttpRequest.DONE) {
-        return;
-      }
-
-      if (request.status === 200 || request.status === 0) {
-        let data;
-
-        if (asTypedArray && request.response) {
-          data = new Uint8Array(request.response);
-        } else if (!asTypedArray && request.responseText) {
-          data = (0, _util.stringToBytes)(request.responseText);
-        }
-
-        if (data) {
-          resolve(data);
-          return;
-        }
-      }
-
-      reject(new Error(request.statusText));
-    };
-
-    request.send(null);
-  });
-}
-
-class DOMCMapReaderFactory extends _base_factory.BaseCMapReaderFactory {
-  _fetchData(url, compressionType) {
-    return fetchData(url, this.isCompressed).then(data => {
-      return {
-        cMapData: data,
-        compressionType
-      };
-    });
-  }
-
-}
-
-exports.DOMCMapReaderFactory = DOMCMapReaderFactory;
-
-class DOMStandardFontDataFactory extends _base_factory.BaseStandardFontDataFactory {
-  _fetchData(url) {
-    return fetchData(url, true);
-  }
-
-}
-
-exports.DOMStandardFontDataFactory = DOMStandardFontDataFactory;
-
-class DOMSVGFactory extends _base_factory.BaseSVGFactory {
-  _createSVG(type) {
-    return document.createElementNS(SVG_NS, type);
-  }
-
-}
-
-exports.DOMSVGFactory = DOMSVGFactory;
-
-class PageViewport {
-  constructor({
-    viewBox,
-    scale,
-    rotation,
-    offsetX = 0,
-    offsetY = 0,
-    dontFlip = false
-  }) {
-    this.viewBox = viewBox;
-    this.scale = scale;
-    this.rotation = rotation;
-    this.offsetX = offsetX;
-    this.offsetY = offsetY;
-    const centerX = (viewBox[2] + viewBox[0]) / 2;
-    const centerY = (viewBox[3] + viewBox[1]) / 2;
-    let rotateA, rotateB, rotateC, rotateD;
-    rotation %= 360;
-
-    if (rotation < 0) {
-      rotation += 360;
-    }
-
-    switch (rotation) {
-      case 180:
-        rotateA = -1;
-        rotateB = 0;
-        rotateC = 0;
-        rotateD = 1;
-        break;
-
-      case 90:
-        rotateA = 0;
-        rotateB = 1;
-        rotateC = 1;
-        rotateD = 0;
-        break;
-
-      case 270:
-        rotateA = 0;
-        rotateB = -1;
-        rotateC = -1;
-        rotateD = 0;
-        break;
-
-      case 0:
-        rotateA = 1;
-        rotateB = 0;
-        rotateC = 0;
-        rotateD = -1;
-        break;
-
-      default:
-        throw new Error("PageViewport: Invalid rotation, must be a multiple of 90 degrees.");
-    }
-
-    if (dontFlip) {
-      rotateC = -rotateC;
-      rotateD = -rotateD;
-    }
-
-    let offsetCanvasX, offsetCanvasY;
-    let width, height;
-
-    if (rotateA === 0) {
-      offsetCanvasX = Math.abs(centerY - viewBox[1]) * scale + offsetX;
-      offsetCanvasY = Math.abs(centerX - viewBox[0]) * scale + offsetY;
-      width = Math.abs(viewBox[3] - viewBox[1]) * scale;
-      height = Math.abs(viewBox[2] - viewBox[0]) * scale;
-    } else {
-      offsetCanvasX = Math.abs(centerX - viewBox[0]) * scale + offsetX;
-      offsetCanvasY = Math.abs(centerY - viewBox[1]) * scale + offsetY;
-      width = Math.abs(viewBox[2] - viewBox[0]) * scale;
-      height = Math.abs(viewBox[3] - viewBox[1]) * scale;
-    }
-
-    this.transform = [rotateA * scale, rotateB * scale, rotateC * scale, rotateD * scale, offsetCanvasX - 
rotateA * scale * centerX - rotateC * scale * centerY, offsetCanvasY - rotateB * scale * centerX - rotateD * 
scale * centerY];
-    this.width = width;
-    this.height = height;
-  }
-
-  clone({
-    scale = this.scale,
-    rotation = this.rotation,
-    offsetX = this.offsetX,
-    offsetY = this.offsetY,
-    dontFlip = false
-  } = {}) {
-    return new PageViewport({
-      viewBox: this.viewBox.slice(),
-      scale,
-      rotation,
-      offsetX,
-      offsetY,
-      dontFlip
-    });
-  }
-
-  convertToViewportPoint(x, y) {
-    return _util.Util.applyTransform([x, y], this.transform);
-  }
-
-  convertToViewportRectangle(rect) {
-    const topLeft = _util.Util.applyTransform([rect[0], rect[1]], this.transform);
-
-    const bottomRight = _util.Util.applyTransform([rect[2], rect[3]], this.transform);
-
-    return [topLeft[0], topLeft[1], bottomRight[0], bottomRight[1]];
-  }
-
-  convertToPdfPoint(x, y) {
-    return _util.Util.applyInverseTransform([x, y], this.transform);
-  }
-
-}
-
-exports.PageViewport = PageViewport;
-
-class RenderingCancelledException extends _util.BaseException {
-  constructor(msg, type) {
-    super(msg, "RenderingCancelledException");
-    this.type = type;
-  }
-
-}
-
-exports.RenderingCancelledException = RenderingCancelledException;
-const LinkTarget = {
-  NONE: 0,
-  SELF: 1,
-  BLANK: 2,
-  PARENT: 3,
-  TOP: 4
-};
-exports.LinkTarget = LinkTarget;
-
-function addLinkAttributes(link, {
-  url,
-  target,
-  rel,
-  enabled = true
-} = {}) {
-  (0, _util.assert)(url && typeof url === "string", 'addLinkAttributes: A valid "url" parameter must 
provided.');
-  const urlNullRemoved = (0, _util.removeNullCharacters)(url);
-
-  if (enabled) {
-    link.href = link.title = urlNullRemoved;
-  } else {
-    link.href = "";
-    link.title = `Disabled: ${urlNullRemoved}`;
-
-    link.onclick = () => {
-      return false;
-    };
-  }
-
-  let targetStr = "";
-
-  switch (target) {
-    case LinkTarget.NONE:
-      break;
-
-    case LinkTarget.SELF:
-      targetStr = "_self";
-      break;
-
-    case LinkTarget.BLANK:
-      targetStr = "_blank";
-      break;
-
-    case LinkTarget.PARENT:
-      targetStr = "_parent";
-      break;
-
-    case LinkTarget.TOP:
-      targetStr = "_top";
-      break;
-  }
-
-  link.target = targetStr;
-  link.rel = typeof rel === "string" ? rel : DEFAULT_LINK_REL;
-}
-
-function isDataScheme(url) {
-  const ii = url.length;
-  let i = 0;
-
-  while (i < ii && url[i].trim() === "") {
-    i++;
-  }
-
-  return url.substring(i, i + 5).toLowerCase() === "data:";
-}
-
-function isPdfFile(filename) {
-  return typeof filename === "string" && /\.pdf$/i.test(filename);
-}
-
-function getFilenameFromUrl(url) {
-  const anchor = url.indexOf("#");
-  const query = url.indexOf("?");
-  const end = Math.min(anchor > 0 ? anchor : url.length, query > 0 ? query : url.length);
-  return url.substring(url.lastIndexOf("/", end) + 1, end);
-}
-
-function getPdfFilenameFromUrl(url, defaultFilename = "document.pdf") {
-  if (typeof url !== "string") {
-    return defaultFilename;
-  }
-
-  if (isDataScheme(url)) {
-    (0, _util.warn)('getPdfFilenameFromUrl: ignore "data:"-URL for performance reasons.');
-    return defaultFilename;
-  }
-
-  const reURI = /^(?:(?:[^:]+:)?\/\/[^/]+)?([^?#]*)(\?[^#]*)?(#.*)?$/;
-  const reFilename = /[^/?#=]+\.pdf\b(?!.*\.pdf\b)/i;
-  const splitURI = reURI.exec(url);
-  let suggestedFilename = reFilename.exec(splitURI[1]) || reFilename.exec(splitURI[2]) || 
reFilename.exec(splitURI[3]);
-
-  if (suggestedFilename) {
-    suggestedFilename = suggestedFilename[0];
-
-    if (suggestedFilename.includes("%")) {
-      try {
-        suggestedFilename = reFilename.exec(decodeURIComponent(suggestedFilename))[0];
-      } catch (ex) {}
-    }
-  }
-
-  return suggestedFilename || defaultFilename;
-}
-
-class StatTimer {
-  constructor() {
-    this.started = Object.create(null);
-    this.times = [];
-  }
-
-  time(name) {
-    if (name in this.started) {
-      (0, _util.warn)(`Timer is already running for ${name}`);
-    }
-
-    this.started[name] = Date.now();
-  }
-
-  timeEnd(name) {
-    if (!(name in this.started)) {
-      (0, _util.warn)(`Timer has not been started for ${name}`);
-    }
-
-    this.times.push({
-      name,
-      start: this.started[name],
-      end: Date.now()
-    });
-    delete this.started[name];
-  }
-
-  toString() {
-    const outBuf = [];
-    let longest = 0;
-
-    for (const time of this.times) {
-      const name = time.name;
-
-      if (name.length > longest) {
-        longest = name.length;
-      }
-    }
-
-    for (const time of this.times) {
-      const duration = time.end - time.start;
-      outBuf.push(`${time.name.padEnd(longest)} ${duration}ms\n`);
-    }
-
-    return outBuf.join("");
-  }
-
-}
-
-exports.StatTimer = StatTimer;
-
-function isValidFetchUrl(url, baseUrl) {
-  try {
-    const {
-      protocol
-    } = baseUrl ? new URL(url, baseUrl) : new URL(url);
-    return protocol === "http:" || protocol === "https:";
-  } catch (ex) {
-    return false;
-  }
-}
-
-function loadScript(src, removeScriptElement = false) {
-  return new Promise((resolve, reject) => {
-    const script = document.createElement("script");
-    script.src = src;
-
-    script.onload = function (evt) {
-      if (removeScriptElement) {
-        script.remove();
-      }
-
-      resolve(evt);
-    };
-
-    script.onerror = function () {
-      reject(new Error(`Cannot load script at: ${script.src}`));
-    };
-
-    (document.head || document.documentElement).appendChild(script);
-  });
-}
-
-function deprecated(details) {
-  console.log("Deprecated API usage: " + details);
-}
-
-let pdfDateStringRegex;
-
-class PDFDateString {
-  static toDateObject(input) {
-    if (!input || !(0, _util.isString)(input)) {
-      return null;
-    }
-
-    if (!pdfDateStringRegex) {
-      pdfDateStringRegex = new RegExp("^D:" + "(\\d{4})" + "(\\d{2})?" + "(\\d{2})?" + "(\\d{2})?" + 
"(\\d{2})?" + "(\\d{2})?" + "([Z|+|-])?" + "(\\d{2})?" + "'?" + "(\\d{2})?" + "'?");
-    }
-
-    const matches = pdfDateStringRegex.exec(input);
-
-    if (!matches) {
-      return null;
-    }
-
-    const year = parseInt(matches[1], 10);
-    let month = parseInt(matches[2], 10);
-    month = month >= 1 && month <= 12 ? month - 1 : 0;
-    let day = parseInt(matches[3], 10);
-    day = day >= 1 && day <= 31 ? day : 1;
-    let hour = parseInt(matches[4], 10);
-    hour = hour >= 0 && hour <= 23 ? hour : 0;
-    let minute = parseInt(matches[5], 10);
-    minute = minute >= 0 && minute <= 59 ? minute : 0;
-    let second = parseInt(matches[6], 10);
-    second = second >= 0 && second <= 59 ? second : 0;
-    const universalTimeRelation = matches[7] || "Z";
-    let offsetHour = parseInt(matches[8], 10);
-    offsetHour = offsetHour >= 0 && offsetHour <= 23 ? offsetHour : 0;
-    let offsetMinute = parseInt(matches[9], 10) || 0;
-    offsetMinute = offsetMinute >= 0 && offsetMinute <= 59 ? offsetMinute : 0;
-
-    if (universalTimeRelation === "-") {
-      hour += offsetHour;
-      minute += offsetMinute;
-    } else if (universalTimeRelation === "+") {
-      hour -= offsetHour;
-      minute -= offsetMinute;
-    }
-
-    return new Date(Date.UTC(year, month, day, hour, minute, second));
-  }
-
-}
-
-exports.PDFDateString = PDFDateString;
-
-function getXfaPageViewport(xfaPage, {
-  scale = 1,
-  rotation = 0
-}) {
-  const {
-    width,
-    height
-  } = xfaPage.attributes.style;
-  const viewBox = [0, 0, parseInt(width), parseInt(height)];
-  return new PageViewport({
-    viewBox,
-    scale,
-    rotation
-  });
-}
-
-/***/ }),
-/* 2 */
-/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
-
-
-
 Object.defineProperty(exports, "__esModule", ({
   value: true
 }));
@@ -568,7 +47,6 @@ exports.arrayByteLength = arrayByteLength;
 exports.arraysToBytes = arraysToBytes;
 exports.assert = assert;
 exports.bytesToString = bytesToString;
-exports.createObjectURL = createObjectURL;
 exports.createPromiseCapability = createPromiseCapability;
 exports.createValidAbsoluteUrl = createValidAbsoluteUrl;
 exports.escapeString = escapeString;
@@ -578,13 +56,9 @@ exports.info = info;
 exports.isArrayBuffer = isArrayBuffer;
 exports.isArrayEqual = isArrayEqual;
 exports.isAscii = isAscii;
-exports.isBool = isBool;
-exports.isNum = isNum;
 exports.isSameOrigin = isSameOrigin;
-exports.isString = isString;
 exports.objectFromMap = objectFromMap;
 exports.objectSize = objectSize;
-exports.removeNullCharacters = removeNullCharacters;
 exports.setVerbosityLevel = setVerbosityLevel;
 exports.shadow = shadow;
 exports.string32 = string32;
@@ -596,7 +70,7 @@ exports.unreachable = unreachable;
 exports.utf8StringToString = utf8StringToString;
 exports.warn = warn;
 
-__w_pdfjs_require__(3);
+__w_pdfjs_require__(2);
 
 const IDENTITY_MATRIX = [1, 0, 0, 1, 0, 0];
 exports.IDENTITY_MATRIX = IDENTITY_MATRIX;
@@ -940,3284 +414,3639 @@ const PasswordResponses = {
 exports.PasswordResponses = PasswordResponses;
 let verbosity = VerbosityLevel.WARNINGS;
 
-function setVerbosityLevel(level) {
-  if (Number.isInteger(level)) {
-    verbosity = level;
+function setVerbosityLevel(level) {
+  if (Number.isInteger(level)) {
+    verbosity = level;
+  }
+}
+
+function getVerbosityLevel() {
+  return verbosity;
+}
+
+function info(msg) {
+  if (verbosity >= VerbosityLevel.INFOS) {
+    console.log(`Info: ${msg}`);
+  }
+}
+
+function warn(msg) {
+  if (verbosity >= VerbosityLevel.WARNINGS) {
+    console.log(`Warning: ${msg}`);
+  }
+}
+
+function unreachable(msg) {
+  throw new Error(msg);
+}
+
+function assert(cond, msg) {
+  if (!cond) {
+    unreachable(msg);
   }
 }
 
-function getVerbosityLevel() {
-  return verbosity;
+function isSameOrigin(baseUrl, otherUrl) {
+  let base;
+
+  try {
+    base = new URL(baseUrl);
+
+    if (!base.origin || base.origin === "null") {
+      return false;
+    }
+  } catch (e) {
+    return false;
+  }
+
+  const other = new URL(otherUrl, base);
+  return base.origin === other.origin;
+}
+
+function _isValidProtocol(url) {
+  if (!url) {
+    return false;
+  }
+
+  switch (url.protocol) {
+    case "http:":
+    case "https:":
+    case "ftp:":
+    case "mailto:":
+    case "tel:":
+      return true;
+
+    default:
+      return false;
+  }
+}
+
+function createValidAbsoluteUrl(url, baseUrl = null, options = null) {
+  if (!url) {
+    return null;
+  }
+
+  try {
+    if (options && typeof url === "string") {
+      if (options.addDefaultProtocol && url.startsWith("www.")) {
+        const dots = url.match(/\./g);
+
+        if (dots && dots.length >= 2) {
+          url = `http://${url}`;
+        }
+      }
+
+      if (options.tryConvertEncoding) {
+        try {
+          url = stringToUTF8String(url);
+        } catch (ex) {}
+      }
+    }
+
+    const absoluteUrl = baseUrl ? new URL(url, baseUrl) : new URL(url);
+
+    if (_isValidProtocol(absoluteUrl)) {
+      return absoluteUrl;
+    }
+  } catch (ex) {}
+
+  return null;
+}
+
+function shadow(obj, prop, value) {
+  Object.defineProperty(obj, prop, {
+    value,
+    enumerable: true,
+    configurable: true,
+    writable: false
+  });
+  return value;
+}
+
+const BaseException = function BaseExceptionClosure() {
+  function BaseException(message, name) {
+    if (this.constructor === BaseException) {
+      unreachable("Cannot initialize BaseException.");
+    }
+
+    this.message = message;
+    this.name = name;
+  }
+
+  BaseException.prototype = new Error();
+  BaseException.constructor = BaseException;
+  return BaseException;
+}();
+
+exports.BaseException = BaseException;
+
+class PasswordException extends BaseException {
+  constructor(msg, code) {
+    super(msg, "PasswordException");
+    this.code = code;
+  }
+
+}
+
+exports.PasswordException = PasswordException;
+
+class UnknownErrorException extends BaseException {
+  constructor(msg, details) {
+    super(msg, "UnknownErrorException");
+    this.details = details;
+  }
+
+}
+
+exports.UnknownErrorException = UnknownErrorException;
+
+class InvalidPDFException extends BaseException {
+  constructor(msg) {
+    super(msg, "InvalidPDFException");
+  }
+
+}
+
+exports.InvalidPDFException = InvalidPDFException;
+
+class MissingPDFException extends BaseException {
+  constructor(msg) {
+    super(msg, "MissingPDFException");
+  }
+
+}
+
+exports.MissingPDFException = MissingPDFException;
+
+class UnexpectedResponseException extends BaseException {
+  constructor(msg, status) {
+    super(msg, "UnexpectedResponseException");
+    this.status = status;
+  }
+
+}
+
+exports.UnexpectedResponseException = UnexpectedResponseException;
+
+class FormatError extends BaseException {
+  constructor(msg) {
+    super(msg, "FormatError");
+  }
+
+}
+
+exports.FormatError = FormatError;
+
+class AbortException extends BaseException {
+  constructor(msg) {
+    super(msg, "AbortException");
+  }
+
+}
+
+exports.AbortException = AbortException;
+
+function bytesToString(bytes) {
+  if (typeof bytes !== "object" || bytes === null || bytes.length === undefined) {
+    unreachable("Invalid argument for bytesToString");
+  }
+
+  const length = bytes.length;
+  const MAX_ARGUMENT_COUNT = 8192;
+
+  if (length < MAX_ARGUMENT_COUNT) {
+    return String.fromCharCode.apply(null, bytes);
+  }
+
+  const strBuf = [];
+
+  for (let i = 0; i < length; i += MAX_ARGUMENT_COUNT) {
+    const chunkEnd = Math.min(i + MAX_ARGUMENT_COUNT, length);
+    const chunk = bytes.subarray(i, chunkEnd);
+    strBuf.push(String.fromCharCode.apply(null, chunk));
+  }
+
+  return strBuf.join("");
+}
+
+function stringToBytes(str) {
+  if (typeof str !== "string") {
+    unreachable("Invalid argument for stringToBytes");
+  }
+
+  const length = str.length;
+  const bytes = new Uint8Array(length);
+
+  for (let i = 0; i < length; ++i) {
+    bytes[i] = str.charCodeAt(i) & 0xff;
+  }
+
+  return bytes;
+}
+
+function arrayByteLength(arr) {
+  if (arr.length !== undefined) {
+    return arr.length;
+  }
+
+  if (arr.byteLength !== undefined) {
+    return arr.byteLength;
+  }
+
+  unreachable("Invalid argument for arrayByteLength");
+}
+
+function arraysToBytes(arr) {
+  const length = arr.length;
+
+  if (length === 1 && arr[0] instanceof Uint8Array) {
+    return arr[0];
+  }
+
+  let resultLength = 0;
+
+  for (let i = 0; i < length; i++) {
+    resultLength += arrayByteLength(arr[i]);
+  }
+
+  let pos = 0;
+  const data = new Uint8Array(resultLength);
+
+  for (let i = 0; i < length; i++) {
+    let item = arr[i];
+
+    if (!(item instanceof Uint8Array)) {
+      if (typeof item === "string") {
+        item = stringToBytes(item);
+      } else {
+        item = new Uint8Array(item);
+      }
+    }
+
+    const itemLength = item.byteLength;
+    data.set(item, pos);
+    pos += itemLength;
+  }
+
+  return data;
+}
+
+function string32(value) {
+  return String.fromCharCode(value >> 24 & 0xff, value >> 16 & 0xff, value >> 8 & 0xff, value & 0xff);
+}
+
+function objectSize(obj) {
+  return Object.keys(obj).length;
 }
 
-function info(msg) {
-  if (verbosity >= VerbosityLevel.INFOS) {
-    console.log(`Info: ${msg}`);
-  }
-}
+function objectFromMap(map) {
+  const obj = Object.create(null);
 
-function warn(msg) {
-  if (verbosity >= VerbosityLevel.WARNINGS) {
-    console.log(`Warning: ${msg}`);
+  for (const [key, value] of map) {
+    obj[key] = value;
   }
+
+  return obj;
 }
 
-function unreachable(msg) {
-  throw new Error(msg);
+function isLittleEndian() {
+  const buffer8 = new Uint8Array(4);
+  buffer8[0] = 1;
+  const view32 = new Uint32Array(buffer8.buffer, 0, 1);
+  return view32[0] === 1;
 }
 
-function assert(cond, msg) {
-  if (!cond) {
-    unreachable(msg);
+const IsLittleEndianCached = {
+  get value() {
+    return shadow(this, "value", isLittleEndian());
   }
-}
 
-function isSameOrigin(baseUrl, otherUrl) {
-  let base;
+};
+exports.IsLittleEndianCached = IsLittleEndianCached;
 
+function isEvalSupported() {
   try {
-    base = new URL(baseUrl);
-
-    if (!base.origin || base.origin === "null") {
-      return false;
-    }
+    new Function("");
+    return true;
   } catch (e) {
     return false;
   }
-
-  const other = new URL(otherUrl, base);
-  return base.origin === other.origin;
 }
 
-function _isValidProtocol(url) {
-  if (!url) {
-    return false;
+const IsEvalSupportedCached = {
+  get value() {
+    return shadow(this, "value", isEvalSupported());
   }
 
-  switch (url.protocol) {
-    case "http:":
-    case "https:":
-    case "ftp:":
-    case "mailto:":
-    case "tel:":
-      return true;
+};
+exports.IsEvalSupportedCached = IsEvalSupportedCached;
+const hexNumbers = [...Array(256).keys()].map(n => n.toString(16).padStart(2, "0"));
 
-    default:
-      return false;
+class Util {
+  static makeHexColor(r, g, b) {
+    return `#${hexNumbers[r]}${hexNumbers[g]}${hexNumbers[b]}`;
   }
-}
 
-function createValidAbsoluteUrl(url, baseUrl = null, options = null) {
-  if (!url) {
-    return null;
+  static transform(m1, m2) {
+    return [m1[0] * m2[0] + m1[2] * m2[1], m1[1] * m2[0] + m1[3] * m2[1], m1[0] * m2[2] + m1[2] * m2[3], 
m1[1] * m2[2] + m1[3] * m2[3], m1[0] * m2[4] + m1[2] * m2[5] + m1[4], m1[1] * m2[4] + m1[3] * m2[5] + m1[5]];
   }
 
-  try {
-    if (options && typeof url === "string") {
-      if (options.addDefaultProtocol && url.startsWith("www.")) {
-        const dots = url.match(/\./g);
+  static applyTransform(p, m) {
+    const xt = p[0] * m[0] + p[1] * m[2] + m[4];
+    const yt = p[0] * m[1] + p[1] * m[3] + m[5];
+    return [xt, yt];
+  }
 
-        if (dots && dots.length >= 2) {
-          url = `http://${url}`;
-        }
-      }
+  static applyInverseTransform(p, m) {
+    const d = m[0] * m[3] - m[1] * m[2];
+    const xt = (p[0] * m[3] - p[1] * m[2] + m[2] * m[5] - m[4] * m[3]) / d;
+    const yt = (-p[0] * m[1] + p[1] * m[0] + m[4] * m[1] - m[5] * m[0]) / d;
+    return [xt, yt];
+  }
 
-      if (options.tryConvertEncoding) {
-        try {
-          url = stringToUTF8String(url);
-        } catch (ex) {}
-      }
-    }
+  static getAxialAlignedBoundingBox(r, m) {
+    const p1 = Util.applyTransform(r, m);
+    const p2 = Util.applyTransform(r.slice(2, 4), m);
+    const p3 = Util.applyTransform([r[0], r[3]], m);
+    const p4 = Util.applyTransform([r[2], r[1]], m);
+    return [Math.min(p1[0], p2[0], p3[0], p4[0]), Math.min(p1[1], p2[1], p3[1], p4[1]), Math.max(p1[0], 
p2[0], p3[0], p4[0]), Math.max(p1[1], p2[1], p3[1], p4[1])];
+  }
 
-    const absoluteUrl = baseUrl ? new URL(url, baseUrl) : new URL(url);
+  static inverseTransform(m) {
+    const d = m[0] * m[3] - m[1] * m[2];
+    return [m[3] / d, -m[1] / d, -m[2] / d, m[0] / d, (m[2] * m[5] - m[4] * m[3]) / d, (m[4] * m[1] - m[5] * 
m[0]) / d];
+  }
 
-    if (_isValidProtocol(absoluteUrl)) {
-      return absoluteUrl;
-    }
-  } catch (ex) {}
+  static apply3dTransform(m, v) {
+    return [m[0] * v[0] + m[1] * v[1] + m[2] * v[2], m[3] * v[0] + m[4] * v[1] + m[5] * v[2], m[6] * v[0] + 
m[7] * v[1] + m[8] * v[2]];
+  }
 
-  return null;
-}
+  static singularValueDecompose2dScale(m) {
+    const transpose = [m[0], m[2], m[1], m[3]];
+    const a = m[0] * transpose[0] + m[1] * transpose[2];
+    const b = m[0] * transpose[1] + m[1] * transpose[3];
+    const c = m[2] * transpose[0] + m[3] * transpose[2];
+    const d = m[2] * transpose[1] + m[3] * transpose[3];
+    const first = (a + d) / 2;
+    const second = Math.sqrt((a + d) ** 2 - 4 * (a * d - c * b)) / 2;
+    const sx = first + second || 1;
+    const sy = first - second || 1;
+    return [Math.sqrt(sx), Math.sqrt(sy)];
+  }
 
-function shadow(obj, prop, value) {
-  Object.defineProperty(obj, prop, {
-    value,
-    enumerable: true,
-    configurable: true,
-    writable: false
-  });
-  return value;
-}
+  static normalizeRect(rect) {
+    const r = rect.slice(0);
 
-const BaseException = function BaseExceptionClosure() {
-  function BaseException(message, name) {
-    if (this.constructor === BaseException) {
-      unreachable("Cannot initialize BaseException.");
+    if (rect[0] > rect[2]) {
+      r[0] = rect[2];
+      r[2] = rect[0];
     }
 
-    this.message = message;
-    this.name = name;
-  }
+    if (rect[1] > rect[3]) {
+      r[1] = rect[3];
+      r[3] = rect[1];
+    }
 
-  BaseException.prototype = new Error();
-  BaseException.constructor = BaseException;
-  return BaseException;
-}();
+    return r;
+  }
 
-exports.BaseException = BaseException;
+  static intersect(rect1, rect2) {
+    function compare(a, b) {
+      return a - b;
+    }
 
-class PasswordException extends BaseException {
-  constructor(msg, code) {
-    super(msg, "PasswordException");
-    this.code = code;
-  }
+    const orderedX = [rect1[0], rect1[2], rect2[0], rect2[2]].sort(compare);
+    const orderedY = [rect1[1], rect1[3], rect2[1], rect2[3]].sort(compare);
+    const result = [];
+    rect1 = Util.normalizeRect(rect1);
+    rect2 = Util.normalizeRect(rect2);
 
-}
+    if (orderedX[0] === rect1[0] && orderedX[1] === rect2[0] || orderedX[0] === rect2[0] && orderedX[1] === 
rect1[0]) {
+      result[0] = orderedX[1];
+      result[2] = orderedX[2];
+    } else {
+      return null;
+    }
 
-exports.PasswordException = PasswordException;
+    if (orderedY[0] === rect1[1] && orderedY[1] === rect2[1] || orderedY[0] === rect2[1] && orderedY[1] === 
rect1[1]) {
+      result[1] = orderedY[1];
+      result[3] = orderedY[2];
+    } else {
+      return null;
+    }
 
-class UnknownErrorException extends BaseException {
-  constructor(msg, details) {
-    super(msg, "UnknownErrorException");
-    this.details = details;
+    return result;
   }
 
-}
+  static bezierBoundingBox(x0, y0, x1, y1, x2, y2, x3, y3) {
+    const tvalues = [],
+          bounds = [[], []];
+    let a, b, c, t, t1, t2, b2ac, sqrtb2ac;
 
-exports.UnknownErrorException = UnknownErrorException;
+    for (let i = 0; i < 2; ++i) {
+      if (i === 0) {
+        b = 6 * x0 - 12 * x1 + 6 * x2;
+        a = -3 * x0 + 9 * x1 - 9 * x2 + 3 * x3;
+        c = 3 * x1 - 3 * x0;
+      } else {
+        b = 6 * y0 - 12 * y1 + 6 * y2;
+        a = -3 * y0 + 9 * y1 - 9 * y2 + 3 * y3;
+        c = 3 * y1 - 3 * y0;
+      }
 
-class InvalidPDFException extends BaseException {
-  constructor(msg) {
-    super(msg, "InvalidPDFException");
-  }
+      if (Math.abs(a) < 1e-12) {
+        if (Math.abs(b) < 1e-12) {
+          continue;
+        }
 
-}
+        t = -c / b;
 
-exports.InvalidPDFException = InvalidPDFException;
+        if (0 < t && t < 1) {
+          tvalues.push(t);
+        }
 
-class MissingPDFException extends BaseException {
-  constructor(msg) {
-    super(msg, "MissingPDFException");
-  }
+        continue;
+      }
 
-}
+      b2ac = b * b - 4 * c * a;
+      sqrtb2ac = Math.sqrt(b2ac);
 
-exports.MissingPDFException = MissingPDFException;
+      if (b2ac < 0) {
+        continue;
+      }
 
-class UnexpectedResponseException extends BaseException {
-  constructor(msg, status) {
-    super(msg, "UnexpectedResponseException");
-    this.status = status;
-  }
+      t1 = (-b + sqrtb2ac) / (2 * a);
 
-}
+      if (0 < t1 && t1 < 1) {
+        tvalues.push(t1);
+      }
 
-exports.UnexpectedResponseException = UnexpectedResponseException;
+      t2 = (-b - sqrtb2ac) / (2 * a);
 
-class FormatError extends BaseException {
-  constructor(msg) {
-    super(msg, "FormatError");
-  }
+      if (0 < t2 && t2 < 1) {
+        tvalues.push(t2);
+      }
+    }
 
-}
+    let j = tvalues.length,
+        mt;
+    const jlen = j;
 
-exports.FormatError = FormatError;
+    while (j--) {
+      t = tvalues[j];
+      mt = 1 - t;
+      bounds[0][j] = mt * mt * mt * x0 + 3 * mt * mt * t * x1 + 3 * mt * t * t * x2 + t * t * t * x3;
+      bounds[1][j] = mt * mt * mt * y0 + 3 * mt * mt * t * y1 + 3 * mt * t * t * y2 + t * t * t * y3;
+    }
 
-class AbortException extends BaseException {
-  constructor(msg) {
-    super(msg, "AbortException");
+    bounds[0][jlen] = x0;
+    bounds[1][jlen] = y0;
+    bounds[0][jlen + 1] = x3;
+    bounds[1][jlen + 1] = y3;
+    bounds[0].length = bounds[1].length = jlen + 2;
+    return [Math.min(...bounds[0]), Math.min(...bounds[1]), Math.max(...bounds[0]), Math.max(...bounds[1])];
   }
 
 }
 
-exports.AbortException = AbortException;
-const NullCharactersRegExp = /\x00+/g;
-const InvisibleCharactersRegExp = /[\x01-\x1F]/g;
-
-function removeNullCharacters(str, replaceInvisible = false) {
-  if (typeof str !== "string") {
-    warn("The argument for removeNullCharacters must be a string.");
-    return str;
-  }
-
-  if (replaceInvisible) {
-    str = str.replace(InvisibleCharactersRegExp, " ");
-  }
+exports.Util = Util;
+const PDFStringTranslateTable = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0x2d8, 0x2c7, 0x2c6, 0x2d9, 0x2dd, 0x2db, 0x2da, 0x2dc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014, 0x2013, 0x192, 0x2044, 0x2039, 0x203a, 0x2212, 
0x2030, 0x201e, 0x201c, 0x201d, 0x2018, 0x2019, 0x201a, 0x2122, 0xfb01, 0xfb02, 0x141, 0x152, 0x160, 0x178, 
0x17d, 0x131, 0x142, 0x153, 0x161, 0x17e, 0, 0x20ac];
 
-  return str.replace(NullCharactersRegExp, "");
-}
+function stringToPDFString(str) {
+  if (str[0] >= "\xEF") {
+    let encoding;
 
-function bytesToString(bytes) {
-  assert(bytes !== null && typeof bytes === "object" && bytes.length !== undefined, "Invalid argument for 
bytesToString");
-  const length = bytes.length;
-  const MAX_ARGUMENT_COUNT = 8192;
+    if (str[0] === "\xFE" && str[1] === "\xFF") {
+      encoding = "utf-16be";
+    } else if (str[0] === "\xFF" && str[1] === "\xFE") {
+      encoding = "utf-16le";
+    } else if (str[0] === "\xEF" && str[1] === "\xBB" && str[2] === "\xBF") {
+      encoding = "utf-8";
+    }
 
-  if (length < MAX_ARGUMENT_COUNT) {
-    return String.fromCharCode.apply(null, bytes);
+    if (encoding) {
+      try {
+        const decoder = new TextDecoder(encoding, {
+          fatal: true
+        });
+        const buffer = stringToBytes(str);
+        return decoder.decode(buffer);
+      } catch (ex) {
+        warn(`stringToPDFString: "${ex}".`);
+      }
+    }
   }
 
   const strBuf = [];
 
-  for (let i = 0; i < length; i += MAX_ARGUMENT_COUNT) {
-    const chunkEnd = Math.min(i + MAX_ARGUMENT_COUNT, length);
-    const chunk = bytes.subarray(i, chunkEnd);
-    strBuf.push(String.fromCharCode.apply(null, chunk));
+  for (let i = 0, ii = str.length; i < ii; i++) {
+    const code = PDFStringTranslateTable[str.charCodeAt(i)];
+    strBuf.push(code ? String.fromCharCode(code) : str.charAt(i));
   }
 
   return strBuf.join("");
 }
 
-function stringToBytes(str) {
-  assert(typeof str === "string", "Invalid argument for stringToBytes");
-  const length = str.length;
-  const bytes = new Uint8Array(length);
+function escapeString(str) {
+  return str.replace(/([()\\\n\r])/g, match => {
+    if (match === "\n") {
+      return "\\n";
+    } else if (match === "\r") {
+      return "\\r";
+    }
 
-  for (let i = 0; i < length; ++i) {
-    bytes[i] = str.charCodeAt(i) & 0xff;
-  }
+    return `\\${match}`;
+  });
+}
 
-  return bytes;
+function isAscii(str) {
+  return /^[\x00-\x7F]*$/.test(str);
 }
 
-function arrayByteLength(arr) {
-  if (arr.length !== undefined) {
-    return arr.length;
+function stringToUTF16BEString(str) {
+  const buf = ["\xFE\xFF"];
+
+  for (let i = 0, ii = str.length; i < ii; i++) {
+    const char = str.charCodeAt(i);
+    buf.push(String.fromCharCode(char >> 8 & 0xff), String.fromCharCode(char & 0xff));
   }
 
-  assert(arr.byteLength !== undefined, "arrayByteLength - invalid argument.");
-  return arr.byteLength;
+  return buf.join("");
 }
 
-function arraysToBytes(arr) {
-  const length = arr.length;
+function stringToUTF8String(str) {
+  return decodeURIComponent(escape(str));
+}
 
-  if (length === 1 && arr[0] instanceof Uint8Array) {
-    return arr[0];
-  }
+function utf8StringToString(str) {
+  return unescape(encodeURIComponent(str));
+}
 
-  let resultLength = 0;
+function isArrayBuffer(v) {
+  return typeof v === "object" && v !== null && v.byteLength !== undefined;
+}
 
-  for (let i = 0; i < length; i++) {
-    resultLength += arrayByteLength(arr[i]);
+function isArrayEqual(arr1, arr2) {
+  if (arr1.length !== arr2.length) {
+    return false;
   }
 
-  let pos = 0;
-  const data = new Uint8Array(resultLength);
-
-  for (let i = 0; i < length; i++) {
-    let item = arr[i];
-
-    if (!(item instanceof Uint8Array)) {
-      if (typeof item === "string") {
-        item = stringToBytes(item);
-      } else {
-        item = new Uint8Array(item);
-      }
+  for (let i = 0, ii = arr1.length; i < ii; i++) {
+    if (arr1[i] !== arr2[i]) {
+      return false;
     }
-
-    const itemLength = item.byteLength;
-    data.set(item, pos);
-    pos += itemLength;
   }
 
-  return data;
+  return true;
 }
 
-function string32(value) {
-  return String.fromCharCode(value >> 24 & 0xff, value >> 16 & 0xff, value >> 8 & 0xff, value & 0xff);
+function getModificationDate(date = new Date()) {
+  const buffer = [date.getUTCFullYear().toString(), (date.getUTCMonth() + 1).toString().padStart(2, "0"), 
date.getUTCDate().toString().padStart(2, "0"), date.getUTCHours().toString().padStart(2, "0"), 
date.getUTCMinutes().toString().padStart(2, "0"), date.getUTCSeconds().toString().padStart(2, "0")];
+  return buffer.join("");
 }
 
-function objectSize(obj) {
-  return Object.keys(obj).length;
+function createPromiseCapability() {
+  const capability = Object.create(null);
+  let isSettled = false;
+  Object.defineProperty(capability, "settled", {
+    get() {
+      return isSettled;
+    }
+
+  });
+  capability.promise = new Promise(function (resolve, reject) {
+    capability.resolve = function (data) {
+      isSettled = true;
+      resolve(data);
+    };
+
+    capability.reject = function (reason) {
+      isSettled = true;
+      reject(reason);
+    };
+  });
+  return capability;
 }
 
-function objectFromMap(map) {
-  const obj = Object.create(null);
+/***/ }),
+/* 2 */
+/***/ ((__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) => {
 
-  for (const [key, value] of map) {
-    obj[key] = value;
-  }
 
-  return obj;
-}
 
-function isLittleEndian() {
-  const buffer8 = new Uint8Array(4);
-  buffer8[0] = 1;
-  const view32 = new Uint32Array(buffer8.buffer, 0, 1);
-  return view32[0] === 1;
-}
+var _is_node = __w_pdfjs_require__(3);
 
-const IsLittleEndianCached = {
-  get value() {
-    return shadow(this, "value", isLittleEndian());
-  }
+;
 
-};
-exports.IsLittleEndianCached = IsLittleEndianCached;
+/***/ }),
+/* 3 */
+/***/ ((__unused_webpack_module, exports) => {
 
-function isEvalSupported() {
-  try {
-    new Function("");
-    return true;
-  } catch (e) {
-    return false;
-  }
-}
 
-const IsEvalSupportedCached = {
-  get value() {
-    return shadow(this, "value", isEvalSupported());
-  }
 
-};
-exports.IsEvalSupportedCached = IsEvalSupportedCached;
-const hexNumbers = [...Array(256).keys()].map(n => n.toString(16).padStart(2, "0"));
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.isNodeJS = void 0;
+const isNodeJS = typeof process === "object" && process + "" === "[object process]" && !process.versions.nw 
&& !(process.versions.electron && process.type && process.type !== "browser");
+exports.isNodeJS = isNodeJS;
 
-class Util {
-  static makeHexColor(r, g, b) {
-    return `#${hexNumbers[r]}${hexNumbers[g]}${hexNumbers[b]}`;
-  }
+/***/ }),
+/* 4 */
+/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
-  static transform(m1, m2) {
-    return [m1[0] * m2[0] + m1[2] * m2[1], m1[1] * m2[0] + m1[3] * m2[1], m1[0] * m2[2] + m1[2] * m2[3], 
m1[1] * m2[2] + m1[3] * m2[3], m1[0] * m2[4] + m1[2] * m2[5] + m1[4], m1[1] * m2[4] + m1[3] * m2[5] + m1[5]];
-  }
 
-  static applyTransform(p, m) {
-    const xt = p[0] * m[0] + p[1] * m[2] + m[4];
-    const yt = p[0] * m[1] + p[1] * m[3] + m[5];
-    return [xt, yt];
-  }
 
-  static applyInverseTransform(p, m) {
-    const d = m[0] * m[3] - m[1] * m[2];
-    const xt = (p[0] * m[3] - p[1] * m[2] + m[2] * m[5] - m[4] * m[3]) / d;
-    const yt = (-p[0] * m[1] + p[1] * m[0] + m[4] * m[1] - m[5] * m[0]) / d;
-    return [xt, yt];
-  }
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.build = exports.RenderTask = exports.PDFWorker = exports.PDFPageProxy = exports.PDFDocumentProxy = 
exports.PDFDocumentLoadingTask = exports.PDFDataRangeTransport = exports.LoopbackPort = 
exports.DefaultStandardFontDataFactory = exports.DefaultCanvasFactory = exports.DefaultCMapReaderFactory = 
void 0;
+exports.getDocument = getDocument;
+exports.setPDFNetworkStreamFactory = setPDFNetworkStreamFactory;
+exports.version = void 0;
 
-  static getAxialAlignedBoundingBox(r, m) {
-    const p1 = Util.applyTransform(r, m);
-    const p2 = Util.applyTransform(r.slice(2, 4), m);
-    const p3 = Util.applyTransform([r[0], r[3]], m);
-    const p4 = Util.applyTransform([r[2], r[1]], m);
-    return [Math.min(p1[0], p2[0], p3[0], p4[0]), Math.min(p1[1], p2[1], p3[1], p4[1]), Math.max(p1[0], 
p2[0], p3[0], p4[0]), Math.max(p1[1], p2[1], p3[1], p4[1])];
-  }
+var _util = __w_pdfjs_require__(1);
 
-  static inverseTransform(m) {
-    const d = m[0] * m[3] - m[1] * m[2];
-    return [m[3] / d, -m[1] / d, -m[2] / d, m[0] / d, (m[2] * m[5] - m[4] * m[3]) / d, (m[4] * m[1] - m[5] * 
m[0]) / d];
-  }
+var _display_utils = __w_pdfjs_require__(5);
 
-  static apply3dTransform(m, v) {
-    return [m[0] * v[0] + m[1] * v[1] + m[2] * v[2], m[3] * v[0] + m[4] * v[1] + m[5] * v[2], m[6] * v[0] + 
m[7] * v[1] + m[8] * v[2]];
-  }
+var _font_loader = __w_pdfjs_require__(7);
 
-  static singularValueDecompose2dScale(m) {
-    const transpose = [m[0], m[2], m[1], m[3]];
-    const a = m[0] * transpose[0] + m[1] * transpose[2];
-    const b = m[0] * transpose[1] + m[1] * transpose[3];
-    const c = m[2] * transpose[0] + m[3] * transpose[2];
-    const d = m[2] * transpose[1] + m[3] * transpose[3];
-    const first = (a + d) / 2;
-    const second = Math.sqrt((a + d) ** 2 - 4 * (a * d - c * b)) / 2;
-    const sx = first + second || 1;
-    const sy = first - second || 1;
-    return [Math.sqrt(sx), Math.sqrt(sy)];
-  }
+var _node_utils = __w_pdfjs_require__(8);
+
+var _annotation_storage = __w_pdfjs_require__(9);
+
+var _canvas = __w_pdfjs_require__(10);
+
+var _worker_options = __w_pdfjs_require__(12);
 
-  static normalizeRect(rect) {
-    const r = rect.slice(0);
+var _is_node = __w_pdfjs_require__(3);
 
-    if (rect[0] > rect[2]) {
-      r[0] = rect[2];
-      r[2] = rect[0];
-    }
+var _message_handler = __w_pdfjs_require__(13);
 
-    if (rect[1] > rect[3]) {
-      r[1] = rect[3];
-      r[3] = rect[1];
-    }
+var _metadata = __w_pdfjs_require__(14);
 
-    return r;
-  }
+var _optional_content_config = __w_pdfjs_require__(15);
 
-  static intersect(rect1, rect2) {
-    function compare(a, b) {
-      return a - b;
-    }
+var _transport_stream = __w_pdfjs_require__(16);
 
-    const orderedX = [rect1[0], rect1[2], rect2[0], rect2[2]].sort(compare);
-    const orderedY = [rect1[1], rect1[3], rect2[1], rect2[3]].sort(compare);
-    const result = [];
-    rect1 = Util.normalizeRect(rect1);
-    rect2 = Util.normalizeRect(rect2);
+var _xfa_text = __w_pdfjs_require__(17);
 
-    if (orderedX[0] === rect1[0] && orderedX[1] === rect2[0] || orderedX[0] === rect2[0] && orderedX[1] === 
rect1[0]) {
-      result[0] = orderedX[1];
-      result[2] = orderedX[2];
-    } else {
-      return null;
+const DEFAULT_RANGE_CHUNK_SIZE = 65536;
+const RENDERING_CANCELLED_TIMEOUT = 100;
+const DefaultCanvasFactory = _is_node.isNodeJS ? _node_utils.NodeCanvasFactory : 
_display_utils.DOMCanvasFactory;
+exports.DefaultCanvasFactory = DefaultCanvasFactory;
+const DefaultCMapReaderFactory = _is_node.isNodeJS ? _node_utils.NodeCMapReaderFactory : 
_display_utils.DOMCMapReaderFactory;
+exports.DefaultCMapReaderFactory = DefaultCMapReaderFactory;
+const DefaultStandardFontDataFactory = _is_node.isNodeJS ? _node_utils.NodeStandardFontDataFactory : 
_display_utils.DOMStandardFontDataFactory;
+exports.DefaultStandardFontDataFactory = DefaultStandardFontDataFactory;
+let createPDFNetworkStream;
+
+function setPDFNetworkStreamFactory(pdfNetworkStreamFactory) {
+  createPDFNetworkStream = pdfNetworkStreamFactory;
+}
+
+function getDocument(src) {
+  const task = new PDFDocumentLoadingTask();
+  let source;
+
+  if (typeof src === "string" || src instanceof URL) {
+    source = {
+      url: src
+    };
+  } else if ((0, _util.isArrayBuffer)(src)) {
+    source = {
+      data: src
+    };
+  } else if (src instanceof PDFDataRangeTransport) {
+    source = {
+      range: src
+    };
+  } else {
+    if (typeof src !== "object") {
+      throw new Error("Invalid parameter in getDocument, " + "need either string, URL, Uint8Array, or 
parameter object.");
     }
 
-    if (orderedY[0] === rect1[1] && orderedY[1] === rect2[1] || orderedY[0] === rect2[1] && orderedY[1] === 
rect1[1]) {
-      result[1] = orderedY[1];
-      result[3] = orderedY[2];
-    } else {
-      return null;
+    if (!src.url && !src.data && !src.range) {
+      throw new Error("Invalid parameter object: need either .data, .range or .url");
     }
 
-    return result;
+    source = src;
   }
 
-  static bezierBoundingBox(x0, y0, x1, y1, x2, y2, x3, y3) {
-    const tvalues = [],
-          bounds = [[], []];
-    let a, b, c, t, t1, t2, b2ac, sqrtb2ac;
+  const params = Object.create(null);
+  let rangeTransport = null,
+      worker = null;
 
-    for (let i = 0; i < 2; ++i) {
-      if (i === 0) {
-        b = 6 * x0 - 12 * x1 + 6 * x2;
-        a = -3 * x0 + 9 * x1 - 9 * x2 + 3 * x3;
-        c = 3 * x1 - 3 * x0;
-      } else {
-        b = 6 * y0 - 12 * y1 + 6 * y2;
-        a = -3 * y0 + 9 * y1 - 9 * y2 + 3 * y3;
-        c = 3 * y1 - 3 * y0;
-      }
+  for (const key in source) {
+    const value = source[key];
 
-      if (Math.abs(a) < 1e-12) {
-        if (Math.abs(b) < 1e-12) {
+    switch (key) {
+      case "url":
+        if (typeof window !== "undefined") {
+          try {
+            params[key] = new URL(value, window.location).href;
+            continue;
+          } catch (ex) {
+            (0, _util.warn)(`Cannot create valid URL: "${ex}".`);
+          }
+        } else if (typeof value === "string" || value instanceof URL) {
+          params[key] = value.toString();
           continue;
         }
 
-        t = -c / b;
+        throw new Error("Invalid PDF url data: " + "either string or URL-object is expected in the url 
property.");
 
-        if (0 < t && t < 1) {
-          tvalues.push(t);
-        }
+      case "range":
+        rangeTransport = value;
+        continue;
 
+      case "worker":
+        worker = value;
         continue;
-      }
 
-      b2ac = b * b - 4 * c * a;
-      sqrtb2ac = Math.sqrt(b2ac);
+      case "data":
+        if (_is_node.isNodeJS && typeof Buffer !== "undefined" && value instanceof Buffer) {
+          params[key] = new Uint8Array(value);
+        } else if (value instanceof Uint8Array) {
+          break;
+        } else if (typeof value === "string") {
+          params[key] = (0, _util.stringToBytes)(value);
+        } else if (typeof value === "object" && value !== null && !isNaN(value.length)) {
+          params[key] = new Uint8Array(value);
+        } else if ((0, _util.isArrayBuffer)(value)) {
+          params[key] = new Uint8Array(value);
+        } else {
+          throw new Error("Invalid PDF binary data: either typed array, " + "string, or array-like object is 
expected in the data property.");
+        }
 
-      if (b2ac < 0) {
         continue;
-      }
+    }
 
-      t1 = (-b + sqrtb2ac) / (2 * a);
+    params[key] = value;
+  }
 
-      if (0 < t1 && t1 < 1) {
-        tvalues.push(t1);
-      }
+  params.rangeChunkSize = params.rangeChunkSize || DEFAULT_RANGE_CHUNK_SIZE;
+  params.CMapReaderFactory = params.CMapReaderFactory || DefaultCMapReaderFactory;
+  params.StandardFontDataFactory = params.StandardFontDataFactory || DefaultStandardFontDataFactory;
+  params.ignoreErrors = params.stopAtErrors !== true;
+  params.fontExtraProperties = params.fontExtraProperties === true;
+  params.pdfBug = params.pdfBug === true;
+  params.enableXfa = params.enableXfa === true;
 
-      t2 = (-b - sqrtb2ac) / (2 * a);
+  if (typeof params.docBaseUrl !== "string" || (0, _display_utils.isDataScheme)(params.docBaseUrl)) {
+    params.docBaseUrl = null;
+  }
 
-      if (0 < t2 && t2 < 1) {
-        tvalues.push(t2);
-      }
-    }
+  if (!Number.isInteger(params.maxImageSize)) {
+    params.maxImageSize = -1;
+  }
 
-    let j = tvalues.length,
-        mt;
-    const jlen = j;
+  if (typeof params.useWorkerFetch !== "boolean") {
+    params.useWorkerFetch = params.CMapReaderFactory === _display_utils.DOMCMapReaderFactory && 
params.StandardFontDataFactory === _display_utils.DOMStandardFontDataFactory;
+  }
 
-    while (j--) {
-      t = tvalues[j];
-      mt = 1 - t;
-      bounds[0][j] = mt * mt * mt * x0 + 3 * mt * mt * t * x1 + 3 * mt * t * t * x2 + t * t * t * x3;
-      bounds[1][j] = mt * mt * mt * y0 + 3 * mt * mt * t * y1 + 3 * mt * t * t * y2 + t * t * t * y3;
-    }
+  if (typeof params.isEvalSupported !== "boolean") {
+    params.isEvalSupported = true;
+  }
 
-    bounds[0][jlen] = x0;
-    bounds[1][jlen] = y0;
-    bounds[0][jlen + 1] = x3;
-    bounds[1][jlen + 1] = y3;
-    bounds[0].length = bounds[1].length = jlen + 2;
-    return [Math.min(...bounds[0]), Math.min(...bounds[1]), Math.max(...bounds[0]), Math.max(...bounds[1])];
+  if (typeof params.disableFontFace !== "boolean") {
+    params.disableFontFace = _is_node.isNodeJS;
   }
 
-}
+  if (typeof params.useSystemFonts !== "boolean") {
+    params.useSystemFonts = !_is_node.isNodeJS && !params.disableFontFace;
+  }
 
-exports.Util = Util;
-const PDFStringTranslateTable = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0x2d8, 0x2c7, 0x2c6, 0x2d9, 0x2dd, 0x2db, 0x2da, 0x2dc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014, 0x2013, 0x192, 0x2044, 0x2039, 0x203a, 0x2212, 
0x2030, 0x201e, 0x201c, 0x201d, 0x2018, 0x2019, 0x201a, 0x2122, 0xfb01, 0xfb02, 0x141, 0x152, 0x160, 0x178, 
0x17d, 0x131, 0x142, 0x153, 0x161, 0x17e, 0, 0x20ac];
+  if (typeof params.ownerDocument === "undefined") {
+    params.ownerDocument = globalThis.document;
+  }
 
-function stringToPDFString(str) {
-  const length = str.length,
-        strBuf = [];
+  if (typeof params.disableRange !== "boolean") {
+    params.disableRange = false;
+  }
 
-  if (str[0] === "\xFE" && str[1] === "\xFF") {
-    for (let i = 2; i < length; i += 2) {
-      strBuf.push(String.fromCharCode(str.charCodeAt(i) << 8 | str.charCodeAt(i + 1)));
-    }
-  } else if (str[0] === "\xFF" && str[1] === "\xFE") {
-    for (let i = 2; i < length; i += 2) {
-      strBuf.push(String.fromCharCode(str.charCodeAt(i + 1) << 8 | str.charCodeAt(i)));
-    }
-  } else {
-    for (let i = 0; i < length; ++i) {
-      const code = PDFStringTranslateTable[str.charCodeAt(i)];
-      strBuf.push(code ? String.fromCharCode(code) : str.charAt(i));
-    }
+  if (typeof params.disableStream !== "boolean") {
+    params.disableStream = false;
   }
 
-  return strBuf.join("");
-}
+  if (typeof params.disableAutoFetch !== "boolean") {
+    params.disableAutoFetch = false;
+  }
 
-function escapeString(str) {
-  return str.replace(/([()\\\n\r])/g, match => {
-    if (match === "\n") {
-      return "\\n";
-    } else if (match === "\r") {
-      return "\\r";
+  (0, _util.setVerbosityLevel)(params.verbosity);
+
+  if (!worker) {
+    const workerParams = {
+      verbosity: params.verbosity,
+      port: _worker_options.GlobalWorkerOptions.workerPort
+    };
+    worker = workerParams.port ? PDFWorker.fromPort(workerParams) : new PDFWorker(workerParams);
+    task._worker = worker;
+  }
+
+  const docId = task.docId;
+  worker.promise.then(function () {
+    if (task.destroyed) {
+      throw new Error("Loading aborted");
     }
 
-    return `\\${match}`;
-  });
-}
+    const workerIdPromise = _fetchDocument(worker, params, rangeTransport, docId);
 
-function isAscii(str) {
-  return /^[\x00-\x7F]*$/.test(str);
-}
+    const networkStreamPromise = new Promise(function (resolve) {
+      let networkStream;
 
-function stringToUTF16BEString(str) {
-  const buf = ["\xFE\xFF"];
+      if (rangeTransport) {
+        networkStream = new _transport_stream.PDFDataTransportStream({
+          length: params.length,
+          initialData: params.initialData,
+          progressiveDone: params.progressiveDone,
+          contentDispositionFilename: params.contentDispositionFilename,
+          disableRange: params.disableRange,
+          disableStream: params.disableStream
+        }, rangeTransport);
+      } else if (!params.data) {
+        networkStream = createPDFNetworkStream({
+          url: params.url,
+          length: params.length,
+          httpHeaders: params.httpHeaders,
+          withCredentials: params.withCredentials,
+          rangeChunkSize: params.rangeChunkSize,
+          disableRange: params.disableRange,
+          disableStream: params.disableStream
+        });
+      }
 
-  for (let i = 0, ii = str.length; i < ii; i++) {
-    const char = str.charCodeAt(i);
-    buf.push(String.fromCharCode(char >> 8 & 0xff), String.fromCharCode(char & 0xff));
-  }
+      resolve(networkStream);
+    });
+    return Promise.all([workerIdPromise, networkStreamPromise]).then(function ([workerId, networkStream]) {
+      if (task.destroyed) {
+        throw new Error("Loading aborted");
+      }
 
-  return buf.join("");
+      const messageHandler = new _message_handler.MessageHandler(docId, workerId, worker.port);
+      const transport = new WorkerTransport(messageHandler, task, networkStream, params);
+      task._transport = transport;
+      messageHandler.send("Ready", null);
+    });
+  }).catch(task._capability.reject);
+  return task;
 }
 
-function stringToUTF8String(str) {
-  return decodeURIComponent(escape(str));
-}
+async function _fetchDocument(worker, source, pdfDataRangeTransport, docId) {
+  if (worker.destroyed) {
+    throw new Error("Worker was destroyed");
+  }
 
-function utf8StringToString(str) {
-  return unescape(encodeURIComponent(str));
-}
+  if (pdfDataRangeTransport) {
+    source.length = pdfDataRangeTransport.length;
+    source.initialData = pdfDataRangeTransport.initialData;
+    source.progressiveDone = pdfDataRangeTransport.progressiveDone;
+    source.contentDispositionFilename = pdfDataRangeTransport.contentDispositionFilename;
+  }
 
-function isBool(v) {
-  return typeof v === "boolean";
-}
+  const workerId = await worker.messageHandler.sendWithPromise("GetDocRequest", {
+    docId,
+    apiVersion: '2.13.216',
+    source: {
+      data: source.data,
+      url: source.url,
+      password: source.password,
+      disableAutoFetch: source.disableAutoFetch,
+      rangeChunkSize: source.rangeChunkSize,
+      length: source.length
+    },
+    maxImageSize: source.maxImageSize,
+    disableFontFace: source.disableFontFace,
+    docBaseUrl: source.docBaseUrl,
+    ignoreErrors: source.ignoreErrors,
+    isEvalSupported: source.isEvalSupported,
+    fontExtraProperties: source.fontExtraProperties,
+    enableXfa: source.enableXfa,
+    useSystemFonts: source.useSystemFonts,
+    cMapUrl: source.useWorkerFetch ? source.cMapUrl : null,
+    standardFontDataUrl: source.useWorkerFetch ? source.standardFontDataUrl : null
+  });
 
-function isNum(v) {
-  return typeof v === "number";
-}
+  if (worker.destroyed) {
+    throw new Error("Worker was destroyed");
+  }
 
-function isString(v) {
-  return typeof v === "string";
+  return workerId;
 }
 
-function isArrayBuffer(v) {
-  return typeof v === "object" && v !== null && v.byteLength !== undefined;
-}
+class PDFDocumentLoadingTask {
+  static get idCounters() {
+    return (0, _util.shadow)(this, "idCounters", {
+      doc: 0
+    });
+  }
 
-function isArrayEqual(arr1, arr2) {
-  if (arr1.length !== arr2.length) {
-    return false;
+  constructor() {
+    this._capability = (0, _util.createPromiseCapability)();
+    this._transport = null;
+    this._worker = null;
+    this.docId = `d${PDFDocumentLoadingTask.idCounters.doc++}`;
+    this.destroyed = false;
+    this.onPassword = null;
+    this.onProgress = null;
+    this.onUnsupportedFeature = null;
   }
 
-  for (let i = 0, ii = arr1.length; i < ii; i++) {
-    if (arr1[i] !== arr2[i]) {
-      return false;
-    }
+  get promise() {
+    return this._capability.promise;
   }
 
-  return true;
-}
+  async destroy() {
+    this.destroyed = true;
+    await this._transport?.destroy();
+    this._transport = null;
 
-function getModificationDate(date = new Date()) {
-  const buffer = [date.getUTCFullYear().toString(), (date.getUTCMonth() + 1).toString().padStart(2, "0"), 
date.getUTCDate().toString().padStart(2, "0"), date.getUTCHours().toString().padStart(2, "0"), 
date.getUTCMinutes().toString().padStart(2, "0"), date.getUTCSeconds().toString().padStart(2, "0")];
-  return buffer.join("");
-}
+    if (this._worker) {
+      this._worker.destroy();
 
-function createPromiseCapability() {
-  const capability = Object.create(null);
-  let isSettled = false;
-  Object.defineProperty(capability, "settled", {
-    get() {
-      return isSettled;
+      this._worker = null;
     }
+  }
 
-  });
-  capability.promise = new Promise(function (resolve, reject) {
-    capability.resolve = function (data) {
-      isSettled = true;
-      resolve(data);
-    };
-
-    capability.reject = function (reason) {
-      isSettled = true;
-      reject(reason);
-    };
-  });
-  return capability;
 }
 
-function createObjectURL(data, contentType = "", forceDataSchema = false) {
-  if (URL.createObjectURL && typeof Blob !== "undefined" && !forceDataSchema) {
-    return URL.createObjectURL(new Blob([data], {
-      type: contentType
-    }));
-  }
-
-  const digits = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
-  let buffer = `data:${contentType};base64,`;
+exports.PDFDocumentLoadingTask = PDFDocumentLoadingTask;
 
-  for (let i = 0, ii = data.length; i < ii; i += 3) {
-    const b1 = data[i] & 0xff;
-    const b2 = data[i + 1] & 0xff;
-    const b3 = data[i + 2] & 0xff;
-    const d1 = b1 >> 2,
-          d2 = (b1 & 3) << 4 | b2 >> 4;
-    const d3 = i + 1 < ii ? (b2 & 0xf) << 2 | b3 >> 6 : 64;
-    const d4 = i + 2 < ii ? b3 & 0x3f : 64;
-    buffer += digits[d1] + digits[d2] + digits[d3] + digits[d4];
+class PDFDataRangeTransport {
+  constructor(length, initialData, progressiveDone = false, contentDispositionFilename = null) {
+    this.length = length;
+    this.initialData = initialData;
+    this.progressiveDone = progressiveDone;
+    this.contentDispositionFilename = contentDispositionFilename;
+    this._rangeListeners = [];
+    this._progressListeners = [];
+    this._progressiveReadListeners = [];
+    this._progressiveDoneListeners = [];
+    this._readyCapability = (0, _util.createPromiseCapability)();
   }
 
-  return buffer;
-}
+  addRangeListener(listener) {
+    this._rangeListeners.push(listener);
+  }
 
-/***/ }),
-/* 3 */
-/***/ ((__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) => {
+  addProgressListener(listener) {
+    this._progressListeners.push(listener);
+  }
 
+  addProgressiveReadListener(listener) {
+    this._progressiveReadListeners.push(listener);
+  }
 
+  addProgressiveDoneListener(listener) {
+    this._progressiveDoneListeners.push(listener);
+  }
 
-var _is_node = __w_pdfjs_require__(4);
+  onDataRange(begin, chunk) {
+    for (const listener of this._rangeListeners) {
+      listener(begin, chunk);
+    }
+  }
 
-;
+  onDataProgress(loaded, total) {
+    this._readyCapability.promise.then(() => {
+      for (const listener of this._progressListeners) {
+        listener(loaded, total);
+      }
+    });
+  }
 
-/***/ }),
-/* 4 */
-/***/ ((__unused_webpack_module, exports) => {
+  onDataProgressiveRead(chunk) {
+    this._readyCapability.promise.then(() => {
+      for (const listener of this._progressiveReadListeners) {
+        listener(chunk);
+      }
+    });
+  }
 
+  onDataProgressiveDone() {
+    this._readyCapability.promise.then(() => {
+      for (const listener of this._progressiveDoneListeners) {
+        listener();
+      }
+    });
+  }
 
+  transportReady() {
+    this._readyCapability.resolve();
+  }
 
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.isNodeJS = void 0;
-const isNodeJS = typeof process === "object" && process + "" === "[object process]" && !process.versions.nw 
&& !(process.versions.electron && process.type && process.type !== "browser");
-exports.isNodeJS = isNodeJS;
+  requestDataRange(begin, end) {
+    (0, _util.unreachable)("Abstract method PDFDataRangeTransport.requestDataRange");
+  }
 
-/***/ }),
-/* 5 */
-/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
+  abort() {}
 
+}
 
+exports.PDFDataRangeTransport = PDFDataRangeTransport;
 
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.BaseStandardFontDataFactory = exports.BaseSVGFactory = exports.BaseCanvasFactory = 
exports.BaseCMapReaderFactory = void 0;
+class PDFDocumentProxy {
+  constructor(pdfInfo, transport) {
+    this._pdfInfo = pdfInfo;
+    this._transport = transport;
+    Object.defineProperty(this, "fingerprint", {
+      get() {
+        (0, _display_utils.deprecated)("`PDFDocumentProxy.fingerprint`, " + "please use 
`PDFDocumentProxy.fingerprints` instead.");
+        return this.fingerprints[0];
+      }
 
-var _util = __w_pdfjs_require__(2);
+    });
+    Object.defineProperty(this, "getStats", {
+      value: async () => {
+        (0, _display_utils.deprecated)("`PDFDocumentProxy.getStats`, " + "please use the 
`PDFDocumentProxy.stats`-getter instead.");
+        return this.stats || {
+          streamTypes: {},
+          fontTypes: {}
+        };
+      }
+    });
+  }
 
-class BaseCanvasFactory {
-  constructor() {
-    if (this.constructor === BaseCanvasFactory) {
-      (0, _util.unreachable)("Cannot initialize BaseCanvasFactory.");
-    }
+  get annotationStorage() {
+    return this._transport.annotationStorage;
   }
 
-  create(width, height) {
-    if (width <= 0 || height <= 0) {
-      throw new Error("Invalid canvas size");
-    }
+  get numPages() {
+    return this._pdfInfo.numPages;
+  }
 
-    const canvas = this._createCanvas(width, height);
+  get fingerprints() {
+    return this._pdfInfo.fingerprints;
+  }
 
-    return {
-      canvas,
-      context: canvas.getContext("2d")
-    };
+  get stats() {
+    return this._transport.stats;
   }
 
-  reset(canvasAndContext, width, height) {
-    if (!canvasAndContext.canvas) {
-      throw new Error("Canvas is not specified");
-    }
+  get isPureXfa() {
+    return !!this._transport._htmlForXfa;
+  }
 
-    if (width <= 0 || height <= 0) {
-      throw new Error("Invalid canvas size");
-    }
+  get allXfaHtml() {
+    return this._transport._htmlForXfa;
+  }
 
-    canvasAndContext.canvas.width = width;
-    canvasAndContext.canvas.height = height;
+  getPage(pageNumber) {
+    return this._transport.getPage(pageNumber);
   }
 
-  destroy(canvasAndContext) {
-    if (!canvasAndContext.canvas) {
-      throw new Error("Canvas is not specified");
-    }
+  getPageIndex(ref) {
+    return this._transport.getPageIndex(ref);
+  }
 
-    canvasAndContext.canvas.width = 0;
-    canvasAndContext.canvas.height = 0;
-    canvasAndContext.canvas = null;
-    canvasAndContext.context = null;
+  getDestinations() {
+    return this._transport.getDestinations();
   }
 
-  _createCanvas(width, height) {
-    (0, _util.unreachable)("Abstract method `_createCanvas` called.");
+  getDestination(id) {
+    return this._transport.getDestination(id);
   }
 
-}
+  getPageLabels() {
+    return this._transport.getPageLabels();
+  }
 
-exports.BaseCanvasFactory = BaseCanvasFactory;
+  getPageLayout() {
+    return this._transport.getPageLayout();
+  }
 
-class BaseCMapReaderFactory {
-  constructor({
-    baseUrl = null,
-    isCompressed = false
-  }) {
-    if (this.constructor === BaseCMapReaderFactory) {
-      (0, _util.unreachable)("Cannot initialize BaseCMapReaderFactory.");
-    }
+  getPageMode() {
+    return this._transport.getPageMode();
+  }
 
-    this.baseUrl = baseUrl;
-    this.isCompressed = isCompressed;
+  getViewerPreferences() {
+    return this._transport.getViewerPreferences();
   }
 
-  async fetch({
-    name
-  }) {
-    if (!this.baseUrl) {
-      throw new Error('The CMap "baseUrl" parameter must be specified, ensure that ' + 'the "cMapUrl" and 
"cMapPacked" API parameters are provided.');
-    }
+  getOpenAction() {
+    return this._transport.getOpenAction();
+  }
 
-    if (!name) {
-      throw new Error("CMap name must be specified.");
-    }
+  getAttachments() {
+    return this._transport.getAttachments();
+  }
 
-    const url = this.baseUrl + name + (this.isCompressed ? ".bcmap" : "");
-    const compressionType = this.isCompressed ? _util.CMapCompressionType.BINARY : 
_util.CMapCompressionType.NONE;
-    return this._fetchData(url, compressionType).catch(reason => {
-      throw new Error(`Unable to load ${this.isCompressed ? "binary " : ""}CMap at: ${url}`);
-    });
+  getJavaScript() {
+    return this._transport.getJavaScript();
   }
 
-  _fetchData(url, compressionType) {
-    (0, _util.unreachable)("Abstract method `_fetchData` called.");
+  getJSActions() {
+    return this._transport.getDocJSActions();
   }
 
-}
+  getOutline() {
+    return this._transport.getOutline();
+  }
 
-exports.BaseCMapReaderFactory = BaseCMapReaderFactory;
+  getOptionalContentConfig() {
+    return this._transport.getOptionalContentConfig();
+  }
 
-class BaseStandardFontDataFactory {
-  constructor({
-    baseUrl = null
-  }) {
-    if (this.constructor === BaseStandardFontDataFactory) {
-      (0, _util.unreachable)("Cannot initialize BaseStandardFontDataFactory.");
-    }
+  getPermissions() {
+    return this._transport.getPermissions();
+  }
 
-    this.baseUrl = baseUrl;
+  getMetadata() {
+    return this._transport.getMetadata();
   }
 
-  async fetch({
-    filename
-  }) {
-    if (!this.baseUrl) {
-      throw new Error('The standard font "baseUrl" parameter must be specified, ensure that ' + 'the 
"standardFontDataUrl" API parameter is provided.');
-    }
+  getMarkInfo() {
+    return this._transport.getMarkInfo();
+  }
 
-    if (!filename) {
-      throw new Error("Font filename must be specified.");
-    }
+  getData() {
+    return this._transport.getData();
+  }
 
-    const url = `${this.baseUrl}${filename}`;
-    return this._fetchData(url).catch(reason => {
-      throw new Error(`Unable to load font data at: ${url}`);
-    });
+  getDownloadInfo() {
+    return this._transport.downloadInfoCapability.promise;
   }
 
-  _fetchData(url) {
-    (0, _util.unreachable)("Abstract method `_fetchData` called.");
+  cleanup(keepLoadedFonts = false) {
+    return this._transport.startCleanup(keepLoadedFonts || this.isPureXfa);
   }
 
-}
+  destroy() {
+    return this.loadingTask.destroy();
+  }
 
-exports.BaseStandardFontDataFactory = BaseStandardFontDataFactory;
+  get loadingParams() {
+    return this._transport.loadingParams;
+  }
 
-class BaseSVGFactory {
-  constructor() {
-    if (this.constructor === BaseSVGFactory) {
-      (0, _util.unreachable)("Cannot initialize BaseSVGFactory.");
-    }
+  get loadingTask() {
+    return this._transport.loadingTask;
   }
 
-  create(width, height) {
-    if (width <= 0 || height <= 0) {
-      throw new Error("Invalid SVG dimensions");
+  saveDocument() {
+    if (this._transport.annotationStorage.size <= 0) {
+      (0, _display_utils.deprecated)("saveDocument called while `annotationStorage` is empty, " + "please 
use the getData-method instead.");
     }
 
-    const svg = this._createSVG("svg:svg");
-
-    svg.setAttribute("version", "1.1");
-    svg.setAttribute("width", `${width}px`);
-    svg.setAttribute("height", `${height}px`);
-    svg.setAttribute("preserveAspectRatio", "none");
-    svg.setAttribute("viewBox", `0 0 ${width} ${height}`);
-    return svg;
+    return this._transport.saveDocument();
   }
 
-  createElement(type) {
-    if (typeof type !== "string") {
-      throw new Error("Invalid SVG element type");
-    }
+  getFieldObjects() {
+    return this._transport.getFieldObjects();
+  }
 
-    return this._createSVG(type);
+  hasJSActions() {
+    return this._transport.hasJSActions();
   }
 
-  _createSVG(type) {
-    (0, _util.unreachable)("Abstract method `_createSVG` called.");
+  getCalculationOrderIds() {
+    return this._transport.getCalculationOrderIds();
   }
 
 }
 
-exports.BaseSVGFactory = BaseSVGFactory;
+exports.PDFDocumentProxy = PDFDocumentProxy;
 
-/***/ }),
-/* 6 */
-/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
+class PDFPageProxy {
+  constructor(pageIndex, pageInfo, transport, ownerDocument, pdfBug = false) {
+    this._pageIndex = pageIndex;
+    this._pageInfo = pageInfo;
+    this._ownerDocument = ownerDocument;
+    this._transport = transport;
+    this._stats = pdfBug ? new _display_utils.StatTimer() : null;
+    this._pdfBug = pdfBug;
+    this.commonObjs = transport.commonObjs;
+    this.objs = new PDFObjects();
+    this.cleanupAfterRender = false;
+    this.pendingCleanup = false;
+    this._intentStates = new Map();
+    this._annotationPromises = new Map();
+    this.destroyed = false;
+  }
+
+  get pageNumber() {
+    return this._pageIndex + 1;
+  }
 
+  get rotate() {
+    return this._pageInfo.rotate;
+  }
 
+  get ref() {
+    return this._pageInfo.ref;
+  }
 
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.build = exports.RenderTask = exports.PDFWorker = exports.PDFPageProxy = exports.PDFDocumentProxy = 
exports.PDFDocumentLoadingTask = exports.PDFDataRangeTransport = exports.LoopbackPort = 
exports.DefaultStandardFontDataFactory = exports.DefaultCanvasFactory = exports.DefaultCMapReaderFactory = 
void 0;
-exports.getDocument = getDocument;
-exports.setPDFNetworkStreamFactory = setPDFNetworkStreamFactory;
-exports.version = void 0;
+  get userUnit() {
+    return this._pageInfo.userUnit;
+  }
 
-var _util = __w_pdfjs_require__(2);
+  get view() {
+    return this._pageInfo.view;
+  }
+
+  getViewport({
+    scale,
+    rotation = this.rotate,
+    offsetX = 0,
+    offsetY = 0,
+    dontFlip = false
+  } = {}) {
+    return new _display_utils.PageViewport({
+      viewBox: this.view,
+      scale,
+      rotation,
+      offsetX,
+      offsetY,
+      dontFlip
+    });
+  }
 
-var _display_utils = __w_pdfjs_require__(1);
+  getAnnotations({
+    intent = "display"
+  } = {}) {
+    const intentArgs = this._transport.getRenderingIntent(intent);
 
-var _font_loader = __w_pdfjs_require__(7);
+    let promise = this._annotationPromises.get(intentArgs.cacheKey);
 
-var _node_utils = __w_pdfjs_require__(8);
+    if (!promise) {
+      promise = this._transport.getAnnotations(this._pageIndex, intentArgs.renderingIntent);
 
-var _annotation_storage = __w_pdfjs_require__(9);
+      this._annotationPromises.set(intentArgs.cacheKey, promise);
 
-var _canvas = __w_pdfjs_require__(10);
+      promise = promise.then(annotations => {
+        for (const annotation of annotations) {
+          if (annotation.titleObj !== undefined) {
+            Object.defineProperty(annotation, "title", {
+              get() {
+                (0, _display_utils.deprecated)("`title`-property on annotation, please use `titleObj` 
instead.");
+                return annotation.titleObj.str;
+              }
 
-var _worker_options = __w_pdfjs_require__(12);
+            });
+          }
 
-var _is_node = __w_pdfjs_require__(4);
+          if (annotation.contentsObj !== undefined) {
+            Object.defineProperty(annotation, "contents", {
+              get() {
+                (0, _display_utils.deprecated)("`contents`-property on annotation, please use `contentsObj` 
instead.");
+                return annotation.contentsObj.str;
+              }
 
-var _message_handler = __w_pdfjs_require__(13);
+            });
+          }
+        }
 
-var _metadata = __w_pdfjs_require__(14);
+        return annotations;
+      });
+    }
 
-var _optional_content_config = __w_pdfjs_require__(15);
+    return promise;
+  }
 
-var _transport_stream = __w_pdfjs_require__(16);
+  getJSActions() {
+    return this._jsActionsPromise ||= this._transport.getPageJSActions(this._pageIndex);
+  }
 
-var _xfa_text = __w_pdfjs_require__(17);
+  async getXfa() {
+    return this._transport._htmlForXfa?.children[this._pageIndex] || null;
+  }
 
-const DEFAULT_RANGE_CHUNK_SIZE = 65536;
-const RENDERING_CANCELLED_TIMEOUT = 100;
-const DefaultCanvasFactory = _is_node.isNodeJS ? _node_utils.NodeCanvasFactory : 
_display_utils.DOMCanvasFactory;
-exports.DefaultCanvasFactory = DefaultCanvasFactory;
-const DefaultCMapReaderFactory = _is_node.isNodeJS ? _node_utils.NodeCMapReaderFactory : 
_display_utils.DOMCMapReaderFactory;
-exports.DefaultCMapReaderFactory = DefaultCMapReaderFactory;
-const DefaultStandardFontDataFactory = _is_node.isNodeJS ? _node_utils.NodeStandardFontDataFactory : 
_display_utils.DOMStandardFontDataFactory;
-exports.DefaultStandardFontDataFactory = DefaultStandardFontDataFactory;
-let createPDFNetworkStream;
+  render({
+    canvasContext,
+    viewport,
+    intent = "display",
+    annotationMode = _util.AnnotationMode.ENABLE,
+    transform = null,
+    imageLayer = null,
+    canvasFactory = null,
+    background = null,
+    optionalContentConfigPromise = null,
+    annotationCanvasMap = null
+  }) {
+    if (arguments[0]?.renderInteractiveForms !== undefined) {
+      (0, _display_utils.deprecated)("render no longer accepts the `renderInteractiveForms`-option, " + 
"please use the `annotationMode`-option instead.");
 
-function setPDFNetworkStreamFactory(pdfNetworkStreamFactory) {
-  createPDFNetworkStream = pdfNetworkStreamFactory;
-}
+      if (arguments[0].renderInteractiveForms === true && annotationMode === _util.AnnotationMode.ENABLE) {
+        annotationMode = _util.AnnotationMode.ENABLE_FORMS;
+      }
+    }
 
-function getDocument(src) {
-  const task = new PDFDocumentLoadingTask();
-  let source;
+    if (arguments[0]?.includeAnnotationStorage !== undefined) {
+      (0, _display_utils.deprecated)("render no longer accepts the `includeAnnotationStorage`-option, " + 
"please use the `annotationMode`-option instead.");
 
-  if (typeof src === "string" || src instanceof URL) {
-    source = {
-      url: src
-    };
-  } else if ((0, _util.isArrayBuffer)(src)) {
-    source = {
-      data: src
-    };
-  } else if (src instanceof PDFDataRangeTransport) {
-    source = {
-      range: src
-    };
-  } else {
-    if (typeof src !== "object") {
-      throw new Error("Invalid parameter in getDocument, " + "need either string, URL, Uint8Array, or 
parameter object.");
+      if (arguments[0].includeAnnotationStorage === true && annotationMode === _util.AnnotationMode.ENABLE) {
+        annotationMode = _util.AnnotationMode.ENABLE_STORAGE;
+      }
     }
 
-    if (!src.url && !src.data && !src.range) {
-      throw new Error("Invalid parameter object: need either .data, .range or .url");
+    if (this._stats) {
+      this._stats.time("Overall");
     }
 
-    source = src;
-  }
+    const intentArgs = this._transport.getRenderingIntent(intent, annotationMode);
 
-  const params = Object.create(null);
-  let rangeTransport = null,
-      worker = null;
+    this.pendingCleanup = false;
 
-  for (const key in source) {
-    const value = source[key];
+    if (!optionalContentConfigPromise) {
+      optionalContentConfigPromise = this._transport.getOptionalContentConfig();
+    }
 
-    switch (key) {
-      case "url":
-        if (typeof window !== "undefined") {
-          try {
-            params[key] = new URL(value, window.location).href;
-            continue;
-          } catch (ex) {
-            (0, _util.warn)(`Cannot create valid URL: "${ex}".`);
-          }
-        } else if (typeof value === "string" || value instanceof URL) {
-          params[key] = value.toString();
-          continue;
-        }
+    let intentState = this._intentStates.get(intentArgs.cacheKey);
 
-        throw new Error("Invalid PDF url data: " + "either string or URL-object is expected in the url 
property.");
+    if (!intentState) {
+      intentState = Object.create(null);
 
-      case "range":
-        rangeTransport = value;
-        continue;
+      this._intentStates.set(intentArgs.cacheKey, intentState);
+    }
 
-      case "worker":
-        worker = value;
-        continue;
+    if (intentState.streamReaderCancelTimeout) {
+      clearTimeout(intentState.streamReaderCancelTimeout);
+      intentState.streamReaderCancelTimeout = null;
+    }
 
-      case "data":
-        if (_is_node.isNodeJS && typeof Buffer !== "undefined" && value instanceof Buffer) {
-          params[key] = new Uint8Array(value);
-        } else if (value instanceof Uint8Array) {
-          break;
-        } else if (typeof value === "string") {
-          params[key] = (0, _util.stringToBytes)(value);
-        } else if (typeof value === "object" && value !== null && !isNaN(value.length)) {
-          params[key] = new Uint8Array(value);
-        } else if ((0, _util.isArrayBuffer)(value)) {
-          params[key] = new Uint8Array(value);
-        } else {
-          throw new Error("Invalid PDF binary data: either typed array, " + "string, or array-like object is 
expected in the data property.");
-        }
+    const canvasFactoryInstance = canvasFactory || new DefaultCanvasFactory({
+      ownerDocument: this._ownerDocument
+    });
+    const intentPrint = !!(intentArgs.renderingIntent & _util.RenderingIntentFlag.PRINT);
 
-        continue;
+    if (!intentState.displayReadyCapability) {
+      intentState.displayReadyCapability = (0, _util.createPromiseCapability)();
+      intentState.operatorList = {
+        fnArray: [],
+        argsArray: [],
+        lastChunk: false
+      };
+
+      if (this._stats) {
+        this._stats.time("Page Request");
+      }
+
+      this._pumpOperatorList(intentArgs);
     }
 
-    params[key] = value;
-  }
+    const complete = error => {
+      intentState.renderTasks.delete(internalRenderTask);
 
-  params.rangeChunkSize = params.rangeChunkSize || DEFAULT_RANGE_CHUNK_SIZE;
-  params.CMapReaderFactory = params.CMapReaderFactory || DefaultCMapReaderFactory;
-  params.StandardFontDataFactory = params.StandardFontDataFactory || DefaultStandardFontDataFactory;
-  params.ignoreErrors = params.stopAtErrors !== true;
-  params.fontExtraProperties = params.fontExtraProperties === true;
-  params.pdfBug = params.pdfBug === true;
-  params.enableXfa = params.enableXfa === true;
+      if (this.cleanupAfterRender || intentPrint) {
+        this.pendingCleanup = true;
+      }
 
-  if (typeof params.docBaseUrl !== "string" || (0, _display_utils.isDataScheme)(params.docBaseUrl)) {
-    params.docBaseUrl = null;
-  }
+      this._tryCleanup();
 
-  if (!Number.isInteger(params.maxImageSize)) {
-    params.maxImageSize = -1;
-  }
+      if (error) {
+        internalRenderTask.capability.reject(error);
 
-  if (typeof params.useWorkerFetch !== "boolean") {
-    params.useWorkerFetch = params.CMapReaderFactory === _display_utils.DOMCMapReaderFactory && 
params.StandardFontDataFactory === _display_utils.DOMStandardFontDataFactory;
-  }
+        this._abortOperatorList({
+          intentState,
+          reason: error instanceof Error ? error : new Error(error)
+        });
+      } else {
+        internalRenderTask.capability.resolve();
+      }
 
-  if (typeof params.isEvalSupported !== "boolean") {
-    params.isEvalSupported = true;
-  }
+      if (this._stats) {
+        this._stats.timeEnd("Rendering");
 
-  if (typeof params.disableFontFace !== "boolean") {
-    params.disableFontFace = _is_node.isNodeJS;
-  }
+        this._stats.timeEnd("Overall");
+      }
+    };
 
-  if (typeof params.useSystemFonts !== "boolean") {
-    params.useSystemFonts = !_is_node.isNodeJS && !params.disableFontFace;
-  }
+    const internalRenderTask = new InternalRenderTask({
+      callback: complete,
+      params: {
+        canvasContext,
+        viewport,
+        transform,
+        imageLayer,
+        background
+      },
+      objs: this.objs,
+      commonObjs: this.commonObjs,
+      annotationCanvasMap,
+      operatorList: intentState.operatorList,
+      pageIndex: this._pageIndex,
+      canvasFactory: canvasFactoryInstance,
+      useRequestAnimationFrame: !intentPrint,
+      pdfBug: this._pdfBug
+    });
+    (intentState.renderTasks ||= new Set()).add(internalRenderTask);
+    const renderTask = internalRenderTask.task;
+    Promise.all([intentState.displayReadyCapability.promise, 
optionalContentConfigPromise]).then(([transparency, optionalContentConfig]) => {
+      if (this.pendingCleanup) {
+        complete();
+        return;
+      }
 
-  if (typeof params.ownerDocument === "undefined") {
-    params.ownerDocument = globalThis.document;
-  }
+      if (this._stats) {
+        this._stats.time("Rendering");
+      }
 
-  if (typeof params.disableRange !== "boolean") {
-    params.disableRange = false;
+      internalRenderTask.initializeGraphics({
+        transparency,
+        optionalContentConfig
+      });
+      internalRenderTask.operatorListChanged();
+    }).catch(complete);
+    return renderTask;
   }
 
-  if (typeof params.disableStream !== "boolean") {
-    params.disableStream = false;
-  }
+  getOperatorList({
+    intent = "display",
+    annotationMode = _util.AnnotationMode.ENABLE
+  } = {}) {
+    function operatorListChanged() {
+      if (intentState.operatorList.lastChunk) {
+        intentState.opListReadCapability.resolve(intentState.operatorList);
+        intentState.renderTasks.delete(opListTask);
+      }
+    }
 
-  if (typeof params.disableAutoFetch !== "boolean") {
-    params.disableAutoFetch = false;
-  }
+    const intentArgs = this._transport.getRenderingIntent(intent, annotationMode, true);
 
-  (0, _util.setVerbosityLevel)(params.verbosity);
+    let intentState = this._intentStates.get(intentArgs.cacheKey);
 
-  if (!worker) {
-    const workerParams = {
-      verbosity: params.verbosity,
-      port: _worker_options.GlobalWorkerOptions.workerPort
-    };
-    worker = workerParams.port ? PDFWorker.fromPort(workerParams) : new PDFWorker(workerParams);
-    task._worker = worker;
-  }
+    if (!intentState) {
+      intentState = Object.create(null);
 
-  const docId = task.docId;
-  worker.promise.then(function () {
-    if (task.destroyed) {
-      throw new Error("Loading aborted");
+      this._intentStates.set(intentArgs.cacheKey, intentState);
     }
 
-    const workerIdPromise = _fetchDocument(worker, params, rangeTransport, docId);
-
-    const networkStreamPromise = new Promise(function (resolve) {
-      let networkStream;
+    let opListTask;
 
-      if (rangeTransport) {
-        networkStream = new _transport_stream.PDFDataTransportStream({
-          length: params.length,
-          initialData: params.initialData,
-          progressiveDone: params.progressiveDone,
-          contentDispositionFilename: params.contentDispositionFilename,
-          disableRange: params.disableRange,
-          disableStream: params.disableStream
-        }, rangeTransport);
-      } else if (!params.data) {
-        networkStream = createPDFNetworkStream({
-          url: params.url,
-          length: params.length,
-          httpHeaders: params.httpHeaders,
-          withCredentials: params.withCredentials,
-          rangeChunkSize: params.rangeChunkSize,
-          disableRange: params.disableRange,
-          disableStream: params.disableStream
-        });
-      }
+    if (!intentState.opListReadCapability) {
+      opListTask = Object.create(null);
+      opListTask.operatorListChanged = operatorListChanged;
+      intentState.opListReadCapability = (0, _util.createPromiseCapability)();
+      (intentState.renderTasks ||= new Set()).add(opListTask);
+      intentState.operatorList = {
+        fnArray: [],
+        argsArray: [],
+        lastChunk: false
+      };
 
-      resolve(networkStream);
-    });
-    return Promise.all([workerIdPromise, networkStreamPromise]).then(function ([workerId, networkStream]) {
-      if (task.destroyed) {
-        throw new Error("Loading aborted");
+      if (this._stats) {
+        this._stats.time("Page Request");
       }
 
-      const messageHandler = new _message_handler.MessageHandler(docId, workerId, worker.port);
-      const transport = new WorkerTransport(messageHandler, task, networkStream, params);
-      task._transport = transport;
-      messageHandler.send("Ready", null);
-    });
-  }).catch(task._capability.reject);
-  return task;
-}
+      this._pumpOperatorList(intentArgs);
+    }
 
-async function _fetchDocument(worker, source, pdfDataRangeTransport, docId) {
-  if (worker.destroyed) {
-    throw new Error("Worker was destroyed");
+    return intentState.opListReadCapability.promise;
   }
 
-  if (pdfDataRangeTransport) {
-    source.length = pdfDataRangeTransport.length;
-    source.initialData = pdfDataRangeTransport.initialData;
-    source.progressiveDone = pdfDataRangeTransport.progressiveDone;
-    source.contentDispositionFilename = pdfDataRangeTransport.contentDispositionFilename;
-  }
+  streamTextContent({
+    disableCombineTextItems = false,
+    includeMarkedContent = false
+  } = {}) {
+    const TEXT_CONTENT_CHUNK_SIZE = 100;
+    return this._transport.messageHandler.sendWithStream("GetTextContent", {
+      pageIndex: this._pageIndex,
+      combineTextItems: disableCombineTextItems !== true,
+      includeMarkedContent: includeMarkedContent === true
+    }, {
+      highWaterMark: TEXT_CONTENT_CHUNK_SIZE,
 
-  const workerId = await worker.messageHandler.sendWithPromise("GetDocRequest", {
-    docId,
-    apiVersion: '2.12.313',
-    source: {
-      data: source.data,
-      url: source.url,
-      password: source.password,
-      disableAutoFetch: source.disableAutoFetch,
-      rangeChunkSize: source.rangeChunkSize,
-      length: source.length
-    },
-    maxImageSize: source.maxImageSize,
-    disableFontFace: source.disableFontFace,
-    docBaseUrl: source.docBaseUrl,
-    ignoreErrors: source.ignoreErrors,
-    isEvalSupported: source.isEvalSupported,
-    fontExtraProperties: source.fontExtraProperties,
-    enableXfa: source.enableXfa,
-    useSystemFonts: source.useSystemFonts,
-    cMapUrl: source.useWorkerFetch ? source.cMapUrl : null,
-    standardFontDataUrl: source.useWorkerFetch ? source.standardFontDataUrl : null
-  });
+      size(textContent) {
+        return textContent.items.length;
+      }
 
-  if (worker.destroyed) {
-    throw new Error("Worker was destroyed");
+    });
   }
 
-  return workerId;
-}
+  getTextContent(params = {}) {
+    if (this._transport._htmlForXfa) {
+      return this.getXfa().then(xfa => {
+        return _xfa_text.XfaText.textContent(xfa);
+      });
+    }
 
-class PDFDocumentLoadingTask {
-  static get idCounters() {
-    return (0, _util.shadow)(this, "idCounters", {
-      doc: 0
-    });
-  }
+    const readableStream = this.streamTextContent(params);
+    return new Promise(function (resolve, reject) {
+      function pump() {
+        reader.read().then(function ({
+          value,
+          done
+        }) {
+          if (done) {
+            resolve(textContent);
+            return;
+          }
 
-  constructor() {
-    this._capability = (0, _util.createPromiseCapability)();
-    this._transport = null;
-    this._worker = null;
-    this.docId = `d${PDFDocumentLoadingTask.idCounters.doc++}`;
-    this.destroyed = false;
-    this.onPassword = null;
-    this.onProgress = null;
-    this.onUnsupportedFeature = null;
+          Object.assign(textContent.styles, value.styles);
+          textContent.items.push(...value.items);
+          pump();
+        }, reject);
+      }
+
+      const reader = readableStream.getReader();
+      const textContent = {
+        items: [],
+        styles: Object.create(null)
+      };
+      pump();
+    });
   }
 
-  get promise() {
-    return this._capability.promise;
+  getStructTree() {
+    return this._structTreePromise ||= this._transport.getStructTree(this._pageIndex);
   }
 
-  async destroy() {
+  _destroy() {
     this.destroyed = true;
-    await this._transport?.destroy();
-    this._transport = null;
-
-    if (this._worker) {
-      this._worker.destroy();
-
-      this._worker = null;
-    }
-  }
+    const waitOn = [];
 
-}
+    for (const intentState of this._intentStates.values()) {
+      this._abortOperatorList({
+        intentState,
+        reason: new Error("Page was destroyed."),
+        force: true
+      });
 
-exports.PDFDocumentLoadingTask = PDFDocumentLoadingTask;
+      if (intentState.opListReadCapability) {
+        continue;
+      }
 
-class PDFDataRangeTransport {
-  constructor(length, initialData, progressiveDone = false, contentDispositionFilename = null) {
-    this.length = length;
-    this.initialData = initialData;
-    this.progressiveDone = progressiveDone;
-    this.contentDispositionFilename = contentDispositionFilename;
-    this._rangeListeners = [];
-    this._progressListeners = [];
-    this._progressiveReadListeners = [];
-    this._progressiveDoneListeners = [];
-    this._readyCapability = (0, _util.createPromiseCapability)();
-  }
+      for (const internalRenderTask of intentState.renderTasks) {
+        waitOn.push(internalRenderTask.completed);
+        internalRenderTask.cancel();
+      }
+    }
 
-  addRangeListener(listener) {
-    this._rangeListeners.push(listener);
-  }
+    this.objs.clear();
 
-  addProgressListener(listener) {
-    this._progressListeners.push(listener);
-  }
+    this._annotationPromises.clear();
 
-  addProgressiveReadListener(listener) {
-    this._progressiveReadListeners.push(listener);
+    this._jsActionsPromise = null;
+    this._structTreePromise = null;
+    this.pendingCleanup = false;
+    return Promise.all(waitOn);
   }
 
-  addProgressiveDoneListener(listener) {
-    this._progressiveDoneListeners.push(listener);
+  cleanup(resetStats = false) {
+    this.pendingCleanup = true;
+    return this._tryCleanup(resetStats);
   }
 
-  onDataRange(begin, chunk) {
-    for (const listener of this._rangeListeners) {
-      listener(begin, chunk);
+  _tryCleanup(resetStats = false) {
+    if (!this.pendingCleanup) {
+      return false;
     }
-  }
 
-  onDataProgress(loaded, total) {
-    this._readyCapability.promise.then(() => {
-      for (const listener of this._progressListeners) {
-        listener(loaded, total);
+    for (const {
+      renderTasks,
+      operatorList
+    } of this._intentStates.values()) {
+      if (renderTasks.size > 0 || !operatorList.lastChunk) {
+        return false;
       }
-    });
-  }
+    }
 
-  onDataProgressiveRead(chunk) {
-    this._readyCapability.promise.then(() => {
-      for (const listener of this._progressiveReadListeners) {
-        listener(chunk);
-      }
-    });
-  }
+    this._intentStates.clear();
+
+    this.objs.clear();
+
+    this._annotationPromises.clear();
 
-  onDataProgressiveDone() {
-    this._readyCapability.promise.then(() => {
-      for (const listener of this._progressiveDoneListeners) {
-        listener();
-      }
-    });
-  }
+    this._jsActionsPromise = null;
+    this._structTreePromise = null;
 
-  transportReady() {
-    this._readyCapability.resolve();
-  }
+    if (resetStats && this._stats) {
+      this._stats = new _display_utils.StatTimer();
+    }
 
-  requestDataRange(begin, end) {
-    (0, _util.unreachable)("Abstract method PDFDataRangeTransport.requestDataRange");
+    this.pendingCleanup = false;
+    return true;
   }
 
-  abort() {}
-
-}
+  _startRenderPage(transparency, cacheKey) {
+    const intentState = this._intentStates.get(cacheKey);
 
-exports.PDFDataRangeTransport = PDFDataRangeTransport;
+    if (!intentState) {
+      return;
+    }
 
-class PDFDocumentProxy {
-  constructor(pdfInfo, transport) {
-    this._pdfInfo = pdfInfo;
-    this._transport = transport;
-    Object.defineProperty(this, "fingerprint", {
-      get() {
-        (0, _display_utils.deprecated)("`PDFDocumentProxy.fingerprint`, " + "please use 
`PDFDocumentProxy.fingerprints` instead.");
-        return this.fingerprints[0];
-      }
+    if (this._stats) {
+      this._stats.timeEnd("Page Request");
+    }
 
-    });
-    Object.defineProperty(this, "getStats", {
-      value: async () => {
-        (0, _display_utils.deprecated)("`PDFDocumentProxy.getStats`, " + "please use the 
`PDFDocumentProxy.stats`-getter instead.");
-        return this.stats || {
-          streamTypes: {},
-          fontTypes: {}
-        };
-      }
-    });
+    if (intentState.displayReadyCapability) {
+      intentState.displayReadyCapability.resolve(transparency);
+    }
   }
 
-  get annotationStorage() {
-    return this._transport.annotationStorage;
-  }
+  _renderPageChunk(operatorListChunk, intentState) {
+    for (let i = 0, ii = operatorListChunk.length; i < ii; i++) {
+      intentState.operatorList.fnArray.push(operatorListChunk.fnArray[i]);
+      intentState.operatorList.argsArray.push(operatorListChunk.argsArray[i]);
+    }
 
-  get numPages() {
-    return this._pdfInfo.numPages;
-  }
+    intentState.operatorList.lastChunk = operatorListChunk.lastChunk;
 
-  get fingerprints() {
-    return this._pdfInfo.fingerprints;
-  }
+    for (const internalRenderTask of intentState.renderTasks) {
+      internalRenderTask.operatorListChanged();
+    }
 
-  get stats() {
-    return this._transport.stats;
+    if (operatorListChunk.lastChunk) {
+      this._tryCleanup();
+    }
   }
 
-  get isPureXfa() {
-    return !!this._transport._htmlForXfa;
-  }
+  _pumpOperatorList({
+    renderingIntent,
+    cacheKey
+  }) {
+    const readableStream = this._transport.messageHandler.sendWithStream("GetOperatorList", {
+      pageIndex: this._pageIndex,
+      intent: renderingIntent,
+      cacheKey,
+      annotationStorage: renderingIntent & _util.RenderingIntentFlag.ANNOTATIONS_STORAGE ? 
this._transport.annotationStorage.serializable : null
+    });
 
-  get allXfaHtml() {
-    return this._transport._htmlForXfa;
-  }
+    const reader = readableStream.getReader();
 
-  getPage(pageNumber) {
-    return this._transport.getPage(pageNumber);
-  }
+    const intentState = this._intentStates.get(cacheKey);
 
-  getPageIndex(ref) {
-    return this._transport.getPageIndex(ref);
-  }
+    intentState.streamReader = reader;
 
-  getDestinations() {
-    return this._transport.getDestinations();
-  }
+    const pump = () => {
+      reader.read().then(({
+        value,
+        done
+      }) => {
+        if (done) {
+          intentState.streamReader = null;
+          return;
+        }
 
-  getDestination(id) {
-    return this._transport.getDestination(id);
-  }
+        if (this._transport.destroyed) {
+          return;
+        }
 
-  getPageLabels() {
-    return this._transport.getPageLabels();
-  }
+        this._renderPageChunk(value, intentState);
 
-  getPageLayout() {
-    return this._transport.getPageLayout();
-  }
+        pump();
+      }, reason => {
+        intentState.streamReader = null;
 
-  getPageMode() {
-    return this._transport.getPageMode();
-  }
+        if (this._transport.destroyed) {
+          return;
+        }
 
-  getViewerPreferences() {
-    return this._transport.getViewerPreferences();
-  }
+        if (intentState.operatorList) {
+          intentState.operatorList.lastChunk = true;
 
-  getOpenAction() {
-    return this._transport.getOpenAction();
-  }
+          for (const internalRenderTask of intentState.renderTasks) {
+            internalRenderTask.operatorListChanged();
+          }
 
-  getAttachments() {
-    return this._transport.getAttachments();
-  }
+          this._tryCleanup();
+        }
 
-  getJavaScript() {
-    return this._transport.getJavaScript();
-  }
+        if (intentState.displayReadyCapability) {
+          intentState.displayReadyCapability.reject(reason);
+        } else if (intentState.opListReadCapability) {
+          intentState.opListReadCapability.reject(reason);
+        } else {
+          throw reason;
+        }
+      });
+    };
 
-  getJSActions() {
-    return this._transport.getDocJSActions();
+    pump();
   }
 
-  getOutline() {
-    return this._transport.getOutline();
-  }
+  _abortOperatorList({
+    intentState,
+    reason,
+    force = false
+  }) {
+    if (!intentState.streamReader) {
+      return;
+    }
 
-  getOptionalContentConfig() {
-    return this._transport.getOptionalContentConfig();
-  }
+    if (!force) {
+      if (intentState.renderTasks.size > 0) {
+        return;
+      }
 
-  getPermissions() {
-    return this._transport.getPermissions();
-  }
+      if (reason instanceof _display_utils.RenderingCancelledException) {
+        intentState.streamReaderCancelTimeout = setTimeout(() => {
+          this._abortOperatorList({
+            intentState,
+            reason,
+            force: true
+          });
 
-  getMetadata() {
-    return this._transport.getMetadata();
-  }
+          intentState.streamReaderCancelTimeout = null;
+        }, RENDERING_CANCELLED_TIMEOUT);
+        return;
+      }
+    }
 
-  getMarkInfo() {
-    return this._transport.getMarkInfo();
-  }
+    intentState.streamReader.cancel(new _util.AbortException(reason.message)).catch(() => {});
+    intentState.streamReader = null;
 
-  getData() {
-    return this._transport.getData();
-  }
+    if (this._transport.destroyed) {
+      return;
+    }
 
-  getDownloadInfo() {
-    return this._transport.downloadInfoCapability.promise;
-  }
+    for (const [curCacheKey, curIntentState] of this._intentStates) {
+      if (curIntentState === intentState) {
+        this._intentStates.delete(curCacheKey);
 
-  cleanup(keepLoadedFonts = false) {
-    return this._transport.startCleanup(keepLoadedFonts || this.isPureXfa);
-  }
+        break;
+      }
+    }
 
-  destroy() {
-    return this.loadingTask.destroy();
+    this.cleanup();
   }
 
-  get loadingParams() {
-    return this._transport.loadingParams;
+  get stats() {
+    return this._stats;
   }
 
-  get loadingTask() {
-    return this._transport.loadingTask;
+}
+
+exports.PDFPageProxy = PDFPageProxy;
+
+class LoopbackPort {
+  constructor() {
+    this._listeners = [];
+    this._deferred = Promise.resolve();
   }
 
-  saveDocument() {
-    if (this._transport.annotationStorage.size <= 0) {
-      (0, _display_utils.deprecated)("saveDocument called while `annotationStorage` is empty, " + "please 
use the getData-method instead.");
-    }
+  postMessage(obj, transfers) {
+    const event = {
+      data: structuredClone(obj, transfers)
+    };
 
-    return this._transport.saveDocument();
+    this._deferred.then(() => {
+      for (const listener of this._listeners) {
+        listener.call(this, event);
+      }
+    });
   }
 
-  getFieldObjects() {
-    return this._transport.getFieldObjects();
+  addEventListener(name, listener) {
+    this._listeners.push(listener);
   }
 
-  hasJSActions() {
-    return this._transport.hasJSActions();
+  removeEventListener(name, listener) {
+    const i = this._listeners.indexOf(listener);
+
+    this._listeners.splice(i, 1);
   }
 
-  getCalculationOrderIds() {
-    return this._transport.getCalculationOrderIds();
+  terminate() {
+    this._listeners.length = 0;
   }
 
 }
 
-exports.PDFDocumentProxy = PDFDocumentProxy;
+exports.LoopbackPort = LoopbackPort;
+const PDFWorkerUtil = {
+  isWorkerDisabled: false,
+  fallbackWorkerSrc: null,
+  fakeWorkerId: 0
+};
+{
+  if (_is_node.isNodeJS && typeof require === "function") {
+    PDFWorkerUtil.isWorkerDisabled = true;
+    PDFWorkerUtil.fallbackWorkerSrc = "./pdf.worker.js";
+  } else if (typeof document === "object") {
+    const pdfjsFilePath = document?.currentScript?.src;
 
-class PDFPageProxy {
-  constructor(pageIndex, pageInfo, transport, ownerDocument, pdfBug = false) {
-    this._pageIndex = pageIndex;
-    this._pageInfo = pageInfo;
-    this._ownerDocument = ownerDocument;
-    this._transport = transport;
-    this._stats = pdfBug ? new _display_utils.StatTimer() : null;
-    this._pdfBug = pdfBug;
-    this.commonObjs = transport.commonObjs;
-    this.objs = new PDFObjects();
-    this.cleanupAfterRender = false;
-    this.pendingCleanup = false;
-    this._intentStates = new Map();
-    this._annotationPromises = new Map();
-    this.destroyed = false;
+    if (pdfjsFilePath) {
+      PDFWorkerUtil.fallbackWorkerSrc = pdfjsFilePath.replace(/(\.(?:min\.)?js)(\?.*)?$/i, ".worker$1$2");
+    }
   }
 
-  get pageNumber() {
-    return this._pageIndex + 1;
-  }
+  PDFWorkerUtil.createCDNWrapper = function (url) {
+    const wrapper = `importScripts("${url}");`;
+    return URL.createObjectURL(new Blob([wrapper]));
+  };
+}
 
-  get rotate() {
-    return this._pageInfo.rotate;
+class PDFWorker {
+  static get _workerPorts() {
+    return (0, _util.shadow)(this, "_workerPorts", new WeakMap());
   }
 
-  get ref() {
-    return this._pageInfo.ref;
+  constructor({
+    name = null,
+    port = null,
+    verbosity = (0, _util.getVerbosityLevel)()
+  } = {}) {
+    if (port && PDFWorker._workerPorts.has(port)) {
+      throw new Error("Cannot use more than one PDFWorker per port.");
+    }
+
+    this.name = name;
+    this.destroyed = false;
+    this.verbosity = verbosity;
+    this._readyCapability = (0, _util.createPromiseCapability)();
+    this._port = null;
+    this._webWorker = null;
+    this._messageHandler = null;
+
+    if (port) {
+      PDFWorker._workerPorts.set(port, this);
+
+      this._initializeFromPort(port);
+
+      return;
+    }
+
+    this._initialize();
   }
 
-  get userUnit() {
-    return this._pageInfo.userUnit;
+  get promise() {
+    return this._readyCapability.promise;
   }
 
-  get view() {
-    return this._pageInfo.view;
+  get port() {
+    return this._port;
   }
 
-  getViewport({
-    scale,
-    rotation = this.rotate,
-    offsetX = 0,
-    offsetY = 0,
-    dontFlip = false
-  } = {}) {
-    return new _display_utils.PageViewport({
-      viewBox: this.view,
-      scale,
-      rotation,
-      offsetX,
-      offsetY,
-      dontFlip
-    });
+  get messageHandler() {
+    return this._messageHandler;
   }
 
-  getAnnotations({
-    intent = "display"
-  } = {}) {
-    const intentArgs = this._transport.getRenderingIntent(intent);
+  _initializeFromPort(port) {
+    this._port = port;
+    this._messageHandler = new _message_handler.MessageHandler("main", "worker", port);
 
-    let promise = this._annotationPromises.get(intentArgs.cacheKey);
+    this._messageHandler.on("ready", function () {});
 
-    if (!promise) {
-      promise = this._transport.getAnnotations(this._pageIndex, intentArgs.renderingIntent);
+    this._readyCapability.resolve();
+  }
 
-      this._annotationPromises.set(intentArgs.cacheKey, promise);
+  _initialize() {
+    if (typeof Worker !== "undefined" && !PDFWorkerUtil.isWorkerDisabled && 
!PDFWorker._mainThreadWorkerMessageHandler) {
+      let workerSrc = PDFWorker.workerSrc;
 
-      promise = promise.then(annotations => {
-        for (const annotation of annotations) {
-          if (annotation.titleObj !== undefined) {
-            Object.defineProperty(annotation, "title", {
-              get() {
-                (0, _display_utils.deprecated)("`title`-property on annotation, please use `titleObj` 
instead.");
-                return annotation.titleObj.str;
-              }
+      try {
+        if (!(0, _util.isSameOrigin)(window.location.href, workerSrc)) {
+          workerSrc = PDFWorkerUtil.createCDNWrapper(new URL(workerSrc, window.location).href);
+        }
 
-            });
-          }
+        const worker = new Worker(workerSrc);
+        const messageHandler = new _message_handler.MessageHandler("main", "worker", worker);
 
-          if (annotation.contentsObj !== undefined) {
-            Object.defineProperty(annotation, "contents", {
-              get() {
-                (0, _display_utils.deprecated)("`contents`-property on annotation, please use `contentsObj` 
instead.");
-                return annotation.contentsObj.str;
-              }
+        const terminateEarly = () => {
+          worker.removeEventListener("error", onWorkerError);
+          messageHandler.destroy();
+          worker.terminate();
 
-            });
+          if (this.destroyed) {
+            this._readyCapability.reject(new Error("Worker was destroyed"));
+          } else {
+            this._setupFakeWorker();
           }
-        }
+        };
 
-        return annotations;
-      });
-    }
+        const onWorkerError = () => {
+          if (!this._webWorker) {
+            terminateEarly();
+          }
+        };
 
-    return promise;
-  }
+        worker.addEventListener("error", onWorkerError);
+        messageHandler.on("test", data => {
+          worker.removeEventListener("error", onWorkerError);
 
-  getJSActions() {
-    return this._jsActionsPromise ||= this._transport.getPageJSActions(this._pageIndex);
-  }
+          if (this.destroyed) {
+            terminateEarly();
+            return;
+          }
 
-  async getXfa() {
-    return this._transport._htmlForXfa?.children[this._pageIndex] || null;
-  }
+          if (data) {
+            this._messageHandler = messageHandler;
+            this._port = worker;
+            this._webWorker = worker;
 
-  render({
-    canvasContext,
-    viewport,
-    intent = "display",
-    annotationMode = _util.AnnotationMode.ENABLE,
-    transform = null,
-    imageLayer = null,
-    canvasFactory = null,
-    background = null,
-    optionalContentConfigPromise = null,
-    annotationCanvasMap = null
-  }) {
-    if (arguments[0]?.renderInteractiveForms !== undefined) {
-      (0, _display_utils.deprecated)("render no longer accepts the `renderInteractiveForms`-option, " + 
"please use the `annotationMode`-option instead.");
+            this._readyCapability.resolve();
 
-      if (arguments[0].renderInteractiveForms === true && annotationMode === _util.AnnotationMode.ENABLE) {
-        annotationMode = _util.AnnotationMode.ENABLE_FORMS;
-      }
-    }
+            messageHandler.send("configure", {
+              verbosity: this.verbosity
+            });
+          } else {
+            this._setupFakeWorker();
 
-    if (arguments[0]?.includeAnnotationStorage !== undefined) {
-      (0, _display_utils.deprecated)("render no longer accepts the `includeAnnotationStorage`-option, " + 
"please use the `annotationMode`-option instead.");
+            messageHandler.destroy();
+            worker.terminate();
+          }
+        });
+        messageHandler.on("ready", data => {
+          worker.removeEventListener("error", onWorkerError);
 
-      if (arguments[0].includeAnnotationStorage === true && annotationMode === _util.AnnotationMode.ENABLE) {
-        annotationMode = _util.AnnotationMode.ENABLE_STORAGE;
-      }
-    }
+          if (this.destroyed) {
+            terminateEarly();
+            return;
+          }
 
-    if (this._stats) {
-      this._stats.time("Overall");
-    }
+          try {
+            sendTest();
+          } catch (e) {
+            this._setupFakeWorker();
+          }
+        });
 
-    const intentArgs = this._transport.getRenderingIntent(intent, annotationMode);
+        const sendTest = () => {
+          const testObj = new Uint8Array([255]);
 
-    this.pendingCleanup = false;
+          try {
+            messageHandler.send("test", testObj, [testObj.buffer]);
+          } catch (ex) {
+            (0, _util.warn)("Cannot use postMessage transfers.");
+            testObj[0] = 0;
+            messageHandler.send("test", testObj);
+          }
+        };
 
-    if (!optionalContentConfigPromise) {
-      optionalContentConfigPromise = this._transport.getOptionalContentConfig();
+        sendTest();
+        return;
+      } catch (e) {
+        (0, _util.info)("The worker has been disabled.");
+      }
     }
 
-    let intentState = this._intentStates.get(intentArgs.cacheKey);
-
-    if (!intentState) {
-      intentState = Object.create(null);
+    this._setupFakeWorker();
+  }
 
-      this._intentStates.set(intentArgs.cacheKey, intentState);
+  _setupFakeWorker() {
+    if (!PDFWorkerUtil.isWorkerDisabled) {
+      (0, _util.warn)("Setting up fake worker.");
+      PDFWorkerUtil.isWorkerDisabled = true;
     }
 
-    if (intentState.streamReaderCancelTimeout) {
-      clearTimeout(intentState.streamReaderCancelTimeout);
-      intentState.streamReaderCancelTimeout = null;
-    }
+    PDFWorker._setupFakeWorkerGlobal.then(WorkerMessageHandler => {
+      if (this.destroyed) {
+        this._readyCapability.reject(new Error("Worker was destroyed"));
 
-    const canvasFactoryInstance = canvasFactory || new DefaultCanvasFactory({
-      ownerDocument: this._ownerDocument
-    });
-    const intentPrint = !!(intentArgs.renderingIntent & _util.RenderingIntentFlag.PRINT);
+        return;
+      }
 
-    if (!intentState.displayReadyCapability) {
-      intentState.displayReadyCapability = (0, _util.createPromiseCapability)();
-      intentState.operatorList = {
-        fnArray: [],
-        argsArray: [],
-        lastChunk: false
-      };
+      const port = new LoopbackPort();
+      this._port = port;
+      const id = `fake${PDFWorkerUtil.fakeWorkerId++}`;
+      const workerHandler = new _message_handler.MessageHandler(id + "_worker", id, port);
+      WorkerMessageHandler.setup(workerHandler, port);
+      const messageHandler = new _message_handler.MessageHandler(id, id + "_worker", port);
+      this._messageHandler = messageHandler;
 
-      if (this._stats) {
-        this._stats.time("Page Request");
-      }
+      this._readyCapability.resolve();
 
-      this._pumpOperatorList(intentArgs);
-    }
+      messageHandler.send("configure", {
+        verbosity: this.verbosity
+      });
+    }).catch(reason => {
+      this._readyCapability.reject(new Error(`Setting up fake worker failed: "${reason.message}".`));
+    });
+  }
 
-    const complete = error => {
-      intentState.renderTasks.delete(internalRenderTask);
+  destroy() {
+    this.destroyed = true;
 
-      if (this.cleanupAfterRender || intentPrint) {
-        this.pendingCleanup = true;
-      }
+    if (this._webWorker) {
+      this._webWorker.terminate();
 
-      this._tryCleanup();
+      this._webWorker = null;
+    }
 
-      if (error) {
-        internalRenderTask.capability.reject(error);
+    PDFWorker._workerPorts.delete(this._port);
 
-        this._abortOperatorList({
-          intentState,
-          reason: error instanceof Error ? error : new Error(error)
-        });
-      } else {
-        internalRenderTask.capability.resolve();
-      }
+    this._port = null;
 
-      if (this._stats) {
-        this._stats.timeEnd("Rendering");
+    if (this._messageHandler) {
+      this._messageHandler.destroy();
 
-        this._stats.timeEnd("Overall");
-      }
-    };
+      this._messageHandler = null;
+    }
+  }
 
-    const internalRenderTask = new InternalRenderTask({
-      callback: complete,
-      params: {
-        canvasContext,
-        viewport,
-        transform,
-        imageLayer,
-        background
-      },
-      objs: this.objs,
-      commonObjs: this.commonObjs,
-      annotationCanvasMap,
-      operatorList: intentState.operatorList,
-      pageIndex: this._pageIndex,
-      canvasFactory: canvasFactoryInstance,
-      useRequestAnimationFrame: !intentPrint,
-      pdfBug: this._pdfBug
-    });
-    (intentState.renderTasks ||= new Set()).add(internalRenderTask);
-    const renderTask = internalRenderTask.task;
-    Promise.all([intentState.displayReadyCapability.promise, 
optionalContentConfigPromise]).then(([transparency, optionalContentConfig]) => {
-      if (this.pendingCleanup) {
-        complete();
-        return;
-      }
+  static fromPort(params) {
+    if (!params?.port) {
+      throw new Error("PDFWorker.fromPort - invalid method signature.");
+    }
 
-      if (this._stats) {
-        this._stats.time("Rendering");
-      }
+    if (this._workerPorts.has(params.port)) {
+      return this._workerPorts.get(params.port);
+    }
 
-      internalRenderTask.initializeGraphics({
-        transparency,
-        optionalContentConfig
-      });
-      internalRenderTask.operatorListChanged();
-    }).catch(complete);
-    return renderTask;
+    return new PDFWorker(params);
   }
 
-  getOperatorList({
-    intent = "display",
-    annotationMode = _util.AnnotationMode.ENABLE
-  } = {}) {
-    function operatorListChanged() {
-      if (intentState.operatorList.lastChunk) {
-        intentState.opListReadCapability.resolve(intentState.operatorList);
-        intentState.renderTasks.delete(opListTask);
-      }
+  static get workerSrc() {
+    if (_worker_options.GlobalWorkerOptions.workerSrc) {
+      return _worker_options.GlobalWorkerOptions.workerSrc;
     }
 
-    const intentArgs = this._transport.getRenderingIntent(intent, annotationMode, true);
+    if (PDFWorkerUtil.fallbackWorkerSrc !== null) {
+      if (!_is_node.isNodeJS) {
+        (0, _display_utils.deprecated)('No "GlobalWorkerOptions.workerSrc" specified.');
+      }
 
-    let intentState = this._intentStates.get(intentArgs.cacheKey);
+      return PDFWorkerUtil.fallbackWorkerSrc;
+    }
 
-    if (!intentState) {
-      intentState = Object.create(null);
+    throw new Error('No "GlobalWorkerOptions.workerSrc" specified.');
+  }
 
-      this._intentStates.set(intentArgs.cacheKey, intentState);
+  static get _mainThreadWorkerMessageHandler() {
+    try {
+      return globalThis.pdfjsWorker?.WorkerMessageHandler || null;
+    } catch (ex) {
+      return null;
     }
+  }
 
-    let opListTask;
+  static get _setupFakeWorkerGlobal() {
+    const loader = async () => {
+      const mainWorkerMessageHandler = this._mainThreadWorkerMessageHandler;
 
-    if (!intentState.opListReadCapability) {
-      opListTask = Object.create(null);
-      opListTask.operatorListChanged = operatorListChanged;
-      intentState.opListReadCapability = (0, _util.createPromiseCapability)();
-      (intentState.renderTasks ||= new Set()).add(opListTask);
-      intentState.operatorList = {
-        fnArray: [],
-        argsArray: [],
-        lastChunk: false
-      };
+      if (mainWorkerMessageHandler) {
+        return mainWorkerMessageHandler;
+      }
 
-      if (this._stats) {
-        this._stats.time("Page Request");
+      if (_is_node.isNodeJS && typeof require === "function") {
+        const worker = eval("require")(this.workerSrc);
+        return worker.WorkerMessageHandler;
       }
 
-      this._pumpOperatorList(intentArgs);
-    }
+      await (0, _display_utils.loadScript)(this.workerSrc);
+      return window.pdfjsWorker.WorkerMessageHandler;
+    };
 
-    return intentState.opListReadCapability.promise;
+    return (0, _util.shadow)(this, "_setupFakeWorkerGlobal", loader());
   }
 
-  streamTextContent({
-    normalizeWhitespace = false,
-    disableCombineTextItems = false,
-    includeMarkedContent = false
-  } = {}) {
-    const TEXT_CONTENT_CHUNK_SIZE = 100;
-    return this._transport.messageHandler.sendWithStream("GetTextContent", {
-      pageIndex: this._pageIndex,
-      normalizeWhitespace: normalizeWhitespace === true,
-      combineTextItems: disableCombineTextItems !== true,
-      includeMarkedContent: includeMarkedContent === true
-    }, {
-      highWaterMark: TEXT_CONTENT_CHUNK_SIZE,
+}
 
-      size(textContent) {
-        return textContent.items.length;
-      }
+exports.PDFWorker = PDFWorker;
+{
+  PDFWorker.getWorkerSrc = function () {
+    (0, _display_utils.deprecated)("`PDFWorker.getWorkerSrc()`, please use `PDFWorker.workerSrc` instead.");
+    return this.workerSrc;
+  };
+}
+
+class WorkerTransport {
+  #docStats = null;
+  #pageCache = new Map();
+  #pagePromises = new Map();
+  #metadataPromise = null;
 
+  constructor(messageHandler, loadingTask, networkStream, params) {
+    this.messageHandler = messageHandler;
+    this.loadingTask = loadingTask;
+    this.commonObjs = new PDFObjects();
+    this.fontLoader = new _font_loader.FontLoader({
+      docId: loadingTask.docId,
+      onUnsupportedFeature: this._onUnsupportedFeature.bind(this),
+      ownerDocument: params.ownerDocument,
+      styleElement: params.styleElement
     });
-  }
+    this._params = params;
 
-  getTextContent(params = {}) {
-    if (this._transport._htmlForXfa) {
-      return this.getXfa().then(xfa => {
-        return _xfa_text.XfaText.textContent(xfa);
+    if (!params.useWorkerFetch) {
+      this.CMapReaderFactory = new params.CMapReaderFactory({
+        baseUrl: params.cMapUrl,
+        isCompressed: params.cMapPacked
       });
-    }
-
-    const readableStream = this.streamTextContent(params);
-    return new Promise(function (resolve, reject) {
-      function pump() {
-        reader.read().then(function ({
-          value,
-          done
-        }) {
-          if (done) {
-            resolve(textContent);
-            return;
-          }
-
-          Object.assign(textContent.styles, value.styles);
-          textContent.items.push(...value.items);
-          pump();
-        }, reject);
-      }
+      this.StandardFontDataFactory = new params.StandardFontDataFactory({
+        baseUrl: params.standardFontDataUrl
+      });
+    }
 
-      const reader = readableStream.getReader();
-      const textContent = {
-        items: [],
-        styles: Object.create(null)
-      };
-      pump();
-    });
+    this.destroyed = false;
+    this.destroyCapability = null;
+    this._passwordCapability = null;
+    this._networkStream = networkStream;
+    this._fullReader = null;
+    this._lastProgress = null;
+    this.downloadInfoCapability = (0, _util.createPromiseCapability)();
+    this.setupMessageHandler();
   }
 
-  getStructTree() {
-    return this._structTreePromise ||= this._transport.getStructTree(this._pageIndex);
+  get annotationStorage() {
+    return (0, _util.shadow)(this, "annotationStorage", new _annotation_storage.AnnotationStorage());
   }
 
-  _destroy() {
-    this.destroyed = true;
-    const waitOn = [];
+  get stats() {
+    return this.#docStats;
+  }
 
-    for (const intentState of this._intentStates.values()) {
-      this._abortOperatorList({
-        intentState,
-        reason: new Error("Page was destroyed."),
-        force: true
-      });
+  getRenderingIntent(intent, annotationMode = _util.AnnotationMode.ENABLE, isOpList = false) {
+    let renderingIntent = _util.RenderingIntentFlag.DISPLAY;
+    let lastModified = "";
 
-      if (intentState.opListReadCapability) {
-        continue;
-      }
+    switch (intent) {
+      case "any":
+        renderingIntent = _util.RenderingIntentFlag.ANY;
+        break;
 
-      for (const internalRenderTask of intentState.renderTasks) {
-        waitOn.push(internalRenderTask.completed);
-        internalRenderTask.cancel();
-      }
+      case "display":
+        break;
+
+      case "print":
+        renderingIntent = _util.RenderingIntentFlag.PRINT;
+        break;
+
+      default:
+        (0, _util.warn)(`getRenderingIntent - invalid intent: ${intent}`);
     }
 
-    this.objs.clear();
+    switch (annotationMode) {
+      case _util.AnnotationMode.DISABLE:
+        renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_DISABLE;
+        break;
 
-    this._annotationPromises.clear();
+      case _util.AnnotationMode.ENABLE:
+        break;
 
-    this._jsActionsPromise = null;
-    this._structTreePromise = null;
-    this.pendingCleanup = false;
-    return Promise.all(waitOn);
-  }
+      case _util.AnnotationMode.ENABLE_FORMS:
+        renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_FORMS;
+        break;
 
-  cleanup(resetStats = false) {
-    this.pendingCleanup = true;
-    return this._tryCleanup(resetStats);
-  }
+      case _util.AnnotationMode.ENABLE_STORAGE:
+        renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_STORAGE;
+        lastModified = this.annotationStorage.lastModified;
+        break;
 
-  _tryCleanup(resetStats = false) {
-    if (!this.pendingCleanup) {
-      return false;
+      default:
+        (0, _util.warn)(`getRenderingIntent - invalid annotationMode: ${annotationMode}`);
     }
 
-    for (const {
-      renderTasks,
-      operatorList
-    } of this._intentStates.values()) {
-      if (renderTasks.size > 0 || !operatorList.lastChunk) {
-        return false;
-      }
+    if (isOpList) {
+      renderingIntent += _util.RenderingIntentFlag.OPLIST;
     }
 
-    this._intentStates.clear();
-
-    this.objs.clear();
+    return {
+      renderingIntent,
+      cacheKey: `${renderingIntent}_${lastModified}`
+    };
+  }
 
-    this._annotationPromises.clear();
+  destroy() {
+    if (this.destroyCapability) {
+      return this.destroyCapability.promise;
+    }
 
-    this._jsActionsPromise = null;
-    this._structTreePromise = null;
+    this.destroyed = true;
+    this.destroyCapability = (0, _util.createPromiseCapability)();
 
-    if (resetStats && this._stats) {
-      this._stats = new _display_utils.StatTimer();
+    if (this._passwordCapability) {
+      this._passwordCapability.reject(new Error("Worker was destroyed during onPassword callback"));
     }
 
-    this.pendingCleanup = false;
-    return true;
-  }
-
-  _startRenderPage(transparency, cacheKey) {
-    const intentState = this._intentStates.get(cacheKey);
+    const waitOn = [];
 
-    if (!intentState) {
-      return;
+    for (const page of this.#pageCache.values()) {
+      waitOn.push(page._destroy());
     }
 
-    if (this._stats) {
-      this._stats.timeEnd("Page Request");
-    }
+    this.#pageCache.clear();
+    this.#pagePromises.clear();
 
-    if (intentState.displayReadyCapability) {
-      intentState.displayReadyCapability.resolve(transparency);
+    if (this.hasOwnProperty("annotationStorage")) {
+      this.annotationStorage.resetModified();
     }
-  }
 
-  _renderPageChunk(operatorListChunk, intentState) {
-    for (let i = 0, ii = operatorListChunk.length; i < ii; i++) {
-      intentState.operatorList.fnArray.push(operatorListChunk.fnArray[i]);
-      intentState.operatorList.argsArray.push(operatorListChunk.argsArray[i]);
-    }
+    const terminated = this.messageHandler.sendWithPromise("Terminate", null);
+    waitOn.push(terminated);
+    Promise.all(waitOn).then(() => {
+      this.commonObjs.clear();
+      this.fontLoader.clear();
+      this.#metadataPromise = null;
+      this._getFieldObjectsPromise = null;
+      this._hasJSActionsPromise = null;
 
-    intentState.operatorList.lastChunk = operatorListChunk.lastChunk;
+      if (this._networkStream) {
+        this._networkStream.cancelAllRequests(new _util.AbortException("Worker was terminated."));
+      }
 
-    for (const internalRenderTask of intentState.renderTasks) {
-      internalRenderTask.operatorListChanged();
-    }
+      if (this.messageHandler) {
+        this.messageHandler.destroy();
+        this.messageHandler = null;
+      }
 
-    if (operatorListChunk.lastChunk) {
-      this._tryCleanup();
-    }
+      this.destroyCapability.resolve();
+    }, this.destroyCapability.reject);
+    return this.destroyCapability.promise;
   }
 
-  _pumpOperatorList({
-    renderingIntent,
-    cacheKey
-  }) {
-    const readableStream = this._transport.messageHandler.sendWithStream("GetOperatorList", {
-      pageIndex: this._pageIndex,
-      intent: renderingIntent,
-      cacheKey,
-      annotationStorage: renderingIntent & _util.RenderingIntentFlag.ANNOTATIONS_STORAGE ? 
this._transport.annotationStorage.serializable : null
-    });
+  setupMessageHandler() {
+    const {
+      messageHandler,
+      loadingTask
+    } = this;
+    messageHandler.on("GetReader", (data, sink) => {
+      (0, _util.assert)(this._networkStream, "GetReader - no `IPDFStream` instance available.");
+      this._fullReader = this._networkStream.getFullReader();
 
-    const reader = readableStream.getReader();
+      this._fullReader.onProgress = evt => {
+        this._lastProgress = {
+          loaded: evt.loaded,
+          total: evt.total
+        };
+      };
 
-    const intentState = this._intentStates.get(cacheKey);
+      sink.onPull = () => {
+        this._fullReader.read().then(function ({
+          value,
+          done
+        }) {
+          if (done) {
+            sink.close();
+            return;
+          }
 
-    intentState.streamReader = reader;
+          (0, _util.assert)((0, _util.isArrayBuffer)(value), "GetReader - expected an ArrayBuffer.");
+          sink.enqueue(new Uint8Array(value), 1, [value]);
+        }).catch(reason => {
+          sink.error(reason);
+        });
+      };
 
-    const pump = () => {
-      reader.read().then(({
-        value,
-        done
-      }) => {
-        if (done) {
-          intentState.streamReader = null;
-          return;
-        }
+      sink.onCancel = reason => {
+        this._fullReader.cancel(reason);
 
-        if (this._transport.destroyed) {
-          return;
-        }
+        sink.ready.catch(readyReason => {
+          if (this.destroyed) {
+            return;
+          }
 
-        this._renderPageChunk(value, intentState);
+          throw readyReason;
+        });
+      };
+    });
+    messageHandler.on("ReaderHeadersReady", data => {
+      const headersCapability = (0, _util.createPromiseCapability)();
+      const fullReader = this._fullReader;
+      fullReader.headersReady.then(() => {
+        if (!fullReader.isStreamingSupported || !fullReader.isRangeSupported) {
+          if (this._lastProgress) {
+            loadingTask.onProgress?.(this._lastProgress);
+          }
 
-        pump();
-      }, reason => {
-        intentState.streamReader = null;
+          fullReader.onProgress = evt => {
+            loadingTask.onProgress?.({
+              loaded: evt.loaded,
+              total: evt.total
+            });
+          };
+        }
+
+        headersCapability.resolve({
+          isStreamingSupported: fullReader.isStreamingSupported,
+          isRangeSupported: fullReader.isRangeSupported,
+          contentLength: fullReader.contentLength
+        });
+      }, headersCapability.reject);
+      return headersCapability.promise;
+    });
+    messageHandler.on("GetRangeReader", (data, sink) => {
+      (0, _util.assert)(this._networkStream, "GetRangeReader - no `IPDFStream` instance available.");
 
-        if (this._transport.destroyed) {
-          return;
-        }
+      const rangeReader = this._networkStream.getRangeReader(data.begin, data.end);
 
-        if (intentState.operatorList) {
-          intentState.operatorList.lastChunk = true;
+      if (!rangeReader) {
+        sink.close();
+        return;
+      }
 
-          for (const internalRenderTask of intentState.renderTasks) {
-            internalRenderTask.operatorListChanged();
+      sink.onPull = () => {
+        rangeReader.read().then(function ({
+          value,
+          done
+        }) {
+          if (done) {
+            sink.close();
+            return;
           }
 
-          this._tryCleanup();
-        }
-
-        if (intentState.displayReadyCapability) {
-          intentState.displayReadyCapability.reject(reason);
-        } else if (intentState.opListReadCapability) {
-          intentState.opListReadCapability.reject(reason);
-        } else {
-          throw reason;
-        }
-      });
-    };
+          (0, _util.assert)((0, _util.isArrayBuffer)(value), "GetRangeReader - expected an ArrayBuffer.");
+          sink.enqueue(new Uint8Array(value), 1, [value]);
+        }).catch(reason => {
+          sink.error(reason);
+        });
+      };
 
-    pump();
-  }
+      sink.onCancel = reason => {
+        rangeReader.cancel(reason);
+        sink.ready.catch(readyReason => {
+          if (this.destroyed) {
+            return;
+          }
 
-  _abortOperatorList({
-    intentState,
-    reason,
-    force = false
-  }) {
-    if (!intentState.streamReader) {
-      return;
-    }
+          throw readyReason;
+        });
+      };
+    });
+    messageHandler.on("GetDoc", ({
+      pdfInfo
+    }) => {
+      this._numPages = pdfInfo.numPages;
+      this._htmlForXfa = pdfInfo.htmlForXfa;
+      delete pdfInfo.htmlForXfa;
 
-    if (!force) {
-      if (intentState.renderTasks.size > 0) {
-        return;
-      }
+      loadingTask._capability.resolve(new PDFDocumentProxy(pdfInfo, this));
+    });
+    messageHandler.on("DocException", function (ex) {
+      let reason;
 
-      if (reason instanceof _display_utils.RenderingCancelledException) {
-        intentState.streamReaderCancelTimeout = setTimeout(() => {
-          this._abortOperatorList({
-            intentState,
-            reason,
-            force: true
-          });
+      switch (ex.name) {
+        case "PasswordException":
+          reason = new _util.PasswordException(ex.message, ex.code);
+          break;
 
-          intentState.streamReaderCancelTimeout = null;
-        }, RENDERING_CANCELLED_TIMEOUT);
-        return;
-      }
-    }
+        case "InvalidPDFException":
+          reason = new _util.InvalidPDFException(ex.message);
+          break;
 
-    intentState.streamReader.cancel(new _util.AbortException(reason.message)).catch(() => {});
-    intentState.streamReader = null;
+        case "MissingPDFException":
+          reason = new _util.MissingPDFException(ex.message);
+          break;
 
-    if (this._transport.destroyed) {
-      return;
-    }
+        case "UnexpectedResponseException":
+          reason = new _util.UnexpectedResponseException(ex.message, ex.status);
+          break;
 
-    for (const [curCacheKey, curIntentState] of this._intentStates) {
-      if (curIntentState === intentState) {
-        this._intentStates.delete(curCacheKey);
+        case "UnknownErrorException":
+          reason = new _util.UnknownErrorException(ex.message, ex.details);
+          break;
 
-        break;
+        default:
+          (0, _util.unreachable)("DocException - expected a valid Error.");
       }
-    }
-
-    this.cleanup();
-  }
-
-  get stats() {
-    return this._stats;
-  }
 
-}
+      loadingTask._capability.reject(reason);
+    });
+    messageHandler.on("PasswordRequest", exception => {
+      this._passwordCapability = (0, _util.createPromiseCapability)();
 
-exports.PDFPageProxy = PDFPageProxy;
+      if (loadingTask.onPassword) {
+        const updatePassword = password => {
+          if (password instanceof Error) {
+            this._passwordCapability.reject(password);
+          } else {
+            this._passwordCapability.resolve({
+              password
+            });
+          }
+        };
 
-class LoopbackPort {
-  constructor() {
-    this._listeners = [];
-    this._deferred = Promise.resolve();
-  }
+        try {
+          loadingTask.onPassword(updatePassword, exception.code);
+        } catch (ex) {
+          this._passwordCapability.reject(ex);
+        }
+      } else {
+        this._passwordCapability.reject(new _util.PasswordException(exception.message, exception.code));
+      }
 
-  postMessage(obj, transfers) {
-    function cloneValue(object) {
-      if (globalThis.structuredClone) {
-        return globalThis.structuredClone(object, transfers);
+      return this._passwordCapability.promise;
+    });
+    messageHandler.on("DataLoaded", data => {
+      loadingTask.onProgress?.({
+        loaded: data.length,
+        total: data.length
+      });
+      this.downloadInfoCapability.resolve(data);
+    });
+    messageHandler.on("StartRenderPage", data => {
+      if (this.destroyed) {
+        return;
       }
 
-      function fallbackCloneValue(value) {
-        if (typeof value === "function" || typeof value === "symbol" || value instanceof URL) {
-          throw new Error(`LoopbackPort.postMessage - cannot clone: ${value?.toString()}`);
-        }
+      const page = this.#pageCache.get(data.pageIndex);
 
-        if (typeof value !== "object" || value === null) {
-          return value;
-        }
+      page._startRenderPage(data.transparency, data.cacheKey);
+    });
+    messageHandler.on("commonobj", ([id, type, exportedData]) => {
+      if (this.destroyed) {
+        return;
+      }
 
-        if (cloned.has(value)) {
-          return cloned.get(value);
-        }
+      if (this.commonObjs.has(id)) {
+        return;
+      }
 
-        let buffer, result;
+      switch (type) {
+        case "Font":
+          const params = this._params;
 
-        if ((buffer = value.buffer) && (0, _util.isArrayBuffer)(buffer)) {
-          if (transfers?.includes(buffer)) {
-            result = new value.constructor(buffer, value.byteOffset, value.byteLength);
-          } else {
-            result = new value.constructor(value);
+          if ("error" in exportedData) {
+            const exportedError = exportedData.error;
+            (0, _util.warn)(`Error during font loading: ${exportedError}`);
+            this.commonObjs.resolve(id, exportedError);
+            break;
           }
 
-          cloned.set(value, result);
-          return result;
-        }
+          let fontRegistry = null;
 
-        if (value instanceof Map) {
-          result = new Map();
-          cloned.set(value, result);
+          if (params.pdfBug && globalThis.FontInspector?.enabled) {
+            fontRegistry = {
+              registerFont(font, url) {
+                globalThis.FontInspector.fontAdded(font, url);
+              }
 
-          for (const [key, val] of value) {
-            result.set(key, fallbackCloneValue(val));
+            };
           }
 
-          return result;
-        }
+          const font = new _font_loader.FontFaceObject(exportedData, {
+            isEvalSupported: params.isEvalSupported,
+            disableFontFace: params.disableFontFace,
+            ignoreErrors: params.ignoreErrors,
+            onUnsupportedFeature: this._onUnsupportedFeature.bind(this),
+            fontRegistry
+          });
+          this.fontLoader.bind(font).catch(reason => {
+            return messageHandler.sendWithPromise("FontFallback", {
+              id
+            });
+          }).finally(() => {
+            if (!params.fontExtraProperties && font.data) {
+              font.data = null;
+            }
+
+            this.commonObjs.resolve(id, font);
+          });
+          break;
 
-        if (value instanceof Set) {
-          result = new Set();
-          cloned.set(value, result);
+        case "FontPath":
+        case "Image":
+          this.commonObjs.resolve(id, exportedData);
+          break;
 
-          for (const val of value) {
-            result.add(fallbackCloneValue(val));
-          }
+        default:
+          throw new Error(`Got unknown common object type ${type}`);
+      }
+    });
+    messageHandler.on("obj", ([id, pageIndex, type, imageData]) => {
+      if (this.destroyed) {
+        return;
+      }
 
-          return result;
-        }
+      const pageProxy = this.#pageCache.get(pageIndex);
 
-        result = Array.isArray(value) ? [] : Object.create(null);
-        cloned.set(value, result);
+      if (pageProxy.objs.has(id)) {
+        return;
+      }
 
-        for (const i in value) {
-          let desc,
-              p = value;
+      switch (type) {
+        case "Image":
+          pageProxy.objs.resolve(id, imageData);
+          const MAX_IMAGE_SIZE_TO_STORE = 8000000;
 
-          while (!(desc = Object.getOwnPropertyDescriptor(p, i))) {
-            p = Object.getPrototypeOf(p);
+          if (imageData?.data?.length > MAX_IMAGE_SIZE_TO_STORE) {
+            pageProxy.cleanupAfterRender = true;
           }
 
-          if (typeof desc.value === "undefined") {
-            continue;
-          }
+          break;
 
-          if (typeof desc.value === "function" && !value.hasOwnProperty?.(i)) {
-            continue;
-          }
+        case "Pattern":
+          pageProxy.objs.resolve(id, imageData);
+          break;
 
-          result[i] = fallbackCloneValue(desc.value);
-        }
+        default:
+          throw new Error(`Got unknown object type ${type}`);
+      }
+    });
+    messageHandler.on("DocProgress", data => {
+      if (this.destroyed) {
+        return;
+      }
+
+      loadingTask.onProgress?.({
+        loaded: data.loaded,
+        total: data.total
+      });
+    });
+    messageHandler.on("DocStats", data => {
+      if (this.destroyed) {
+        return;
+      }
 
-        return result;
+      this.#docStats = Object.freeze({
+        streamTypes: Object.freeze(data.streamTypes),
+        fontTypes: Object.freeze(data.fontTypes)
+      });
+    });
+    messageHandler.on("UnsupportedFeature", this._onUnsupportedFeature.bind(this));
+    messageHandler.on("FetchBuiltInCMap", data => {
+      if (this.destroyed) {
+        return Promise.reject(new Error("Worker was destroyed."));
       }
 
-      const cloned = new WeakMap();
-      return fallbackCloneValue(object);
-    }
+      if (!this.CMapReaderFactory) {
+        return Promise.reject(new Error("CMapReaderFactory not initialized, see the `useWorkerFetch` 
parameter."));
+      }
 
-    const event = {
-      data: cloneValue(obj)
-    };
+      return this.CMapReaderFactory.fetch(data);
+    });
+    messageHandler.on("FetchStandardFontData", data => {
+      if (this.destroyed) {
+        return Promise.reject(new Error("Worker was destroyed."));
+      }
 
-    this._deferred.then(() => {
-      for (const listener of this._listeners) {
-        listener.call(this, event);
+      if (!this.StandardFontDataFactory) {
+        return Promise.reject(new Error("StandardFontDataFactory not initialized, see the `useWorkerFetch` 
parameter."));
       }
-    });
-  }
 
-  addEventListener(name, listener) {
-    this._listeners.push(listener);
+      return this.StandardFontDataFactory.fetch(data);
+    });
   }
 
-  removeEventListener(name, listener) {
-    const i = this._listeners.indexOf(listener);
+  _onUnsupportedFeature({
+    featureId
+  }) {
+    if (this.destroyed) {
+      return;
+    }
 
-    this._listeners.splice(i, 1);
+    this.loadingTask.onUnsupportedFeature?.(featureId);
   }
 
-  terminate() {
-    this._listeners.length = 0;
+  getData() {
+    return this.messageHandler.sendWithPromise("GetData", null);
   }
 
-}
-
-exports.LoopbackPort = LoopbackPort;
-const PDFWorkerUtil = {
-  isWorkerDisabled: false,
-  fallbackWorkerSrc: null,
-  fakeWorkerId: 0
-};
-{
-  if (_is_node.isNodeJS && typeof require === "function") {
-    PDFWorkerUtil.isWorkerDisabled = true;
-    PDFWorkerUtil.fallbackWorkerSrc = "./pdf.worker.js";
-  } else if (typeof document === "object") {
-    const pdfjsFilePath = document?.currentScript?.src;
-
-    if (pdfjsFilePath) {
-      PDFWorkerUtil.fallbackWorkerSrc = pdfjsFilePath.replace(/(\.(?:min\.)?js)(\?.*)?$/i, ".worker$1$2");
+  getPage(pageNumber) {
+    if (!Number.isInteger(pageNumber) || pageNumber <= 0 || pageNumber > this._numPages) {
+      return Promise.reject(new Error("Invalid page request."));
     }
-  }
-
-  PDFWorkerUtil.createCDNWrapper = function (url) {
-    const wrapper = `importScripts("${url}");`;
-    return URL.createObjectURL(new Blob([wrapper]));
-  };
-}
 
-class PDFWorker {
-  static get _workerPorts() {
-    return (0, _util.shadow)(this, "_workerPorts", new WeakMap());
-  }
+    const pageIndex = pageNumber - 1,
+          cachedPromise = this.#pagePromises.get(pageIndex);
 
-  constructor({
-    name = null,
-    port = null,
-    verbosity = (0, _util.getVerbosityLevel)()
-  } = {}) {
-    if (port && PDFWorker._workerPorts.has(port)) {
-      throw new Error("Cannot use more than one PDFWorker per port.");
+    if (cachedPromise) {
+      return cachedPromise;
     }
 
-    this.name = name;
-    this.destroyed = false;
-    this.verbosity = verbosity;
-    this._readyCapability = (0, _util.createPromiseCapability)();
-    this._port = null;
-    this._webWorker = null;
-    this._messageHandler = null;
-
-    if (port) {
-      PDFWorker._workerPorts.set(port, this);
+    const promise = this.messageHandler.sendWithPromise("GetPage", {
+      pageIndex
+    }).then(pageInfo => {
+      if (this.destroyed) {
+        throw new Error("Transport destroyed");
+      }
 
-      this._initializeFromPort(port);
+      const page = new PDFPageProxy(pageIndex, pageInfo, this, this._params.ownerDocument, 
this._params.pdfBug);
+      this.#pageCache.set(pageIndex, page);
+      return page;
+    });
+    this.#pagePromises.set(pageIndex, promise);
+    return promise;
+  }
 
-      return;
+  getPageIndex(ref) {
+    if (typeof ref !== "object" || ref === null || !Number.isInteger(ref.num) || ref.num < 0 || 
!Number.isInteger(ref.gen) || ref.gen < 0) {
+      return Promise.reject(new Error("Invalid pageIndex request."));
     }
 
-    this._initialize();
+    return this.messageHandler.sendWithPromise("GetPageIndex", {
+      num: ref.num,
+      gen: ref.gen
+    });
   }
 
-  get promise() {
-    return this._readyCapability.promise;
+  getAnnotations(pageIndex, intent) {
+    return this.messageHandler.sendWithPromise("GetAnnotations", {
+      pageIndex,
+      intent
+    });
   }
 
-  get port() {
-    return this._port;
+  saveDocument() {
+    return this.messageHandler.sendWithPromise("SaveDocument", {
+      isPureXfa: !!this._htmlForXfa,
+      numPages: this._numPages,
+      annotationStorage: this.annotationStorage.serializable,
+      filename: this._fullReader?.filename ?? null
+    }).finally(() => {
+      this.annotationStorage.resetModified();
+    });
   }
 
-  get messageHandler() {
-    return this._messageHandler;
+  getFieldObjects() {
+    return this._getFieldObjectsPromise ||= this.messageHandler.sendWithPromise("GetFieldObjects", null);
   }
 
-  _initializeFromPort(port) {
-    this._port = port;
-    this._messageHandler = new _message_handler.MessageHandler("main", "worker", port);
-
-    this._messageHandler.on("ready", function () {});
-
-    this._readyCapability.resolve();
+  hasJSActions() {
+    return this._hasJSActionsPromise ||= this.messageHandler.sendWithPromise("HasJSActions", null);
   }
 
-  _initialize() {
-    if (typeof Worker !== "undefined" && !PDFWorkerUtil.isWorkerDisabled && 
!PDFWorker._mainThreadWorkerMessageHandler) {
-      let workerSrc = PDFWorker.workerSrc;
-
-      try {
-        if (!(0, _util.isSameOrigin)(window.location.href, workerSrc)) {
-          workerSrc = PDFWorkerUtil.createCDNWrapper(new URL(workerSrc, window.location).href);
-        }
-
-        const worker = new Worker(workerSrc);
-        const messageHandler = new _message_handler.MessageHandler("main", "worker", worker);
-
-        const terminateEarly = () => {
-          worker.removeEventListener("error", onWorkerError);
-          messageHandler.destroy();
-          worker.terminate();
-
-          if (this.destroyed) {
-            this._readyCapability.reject(new Error("Worker was destroyed"));
-          } else {
-            this._setupFakeWorker();
-          }
-        };
-
-        const onWorkerError = () => {
-          if (!this._webWorker) {
-            terminateEarly();
-          }
-        };
-
-        worker.addEventListener("error", onWorkerError);
-        messageHandler.on("test", data => {
-          worker.removeEventListener("error", onWorkerError);
-
-          if (this.destroyed) {
-            terminateEarly();
-            return;
-          }
-
-          if (data) {
-            this._messageHandler = messageHandler;
-            this._port = worker;
-            this._webWorker = worker;
-
-            this._readyCapability.resolve();
-
-            messageHandler.send("configure", {
-              verbosity: this.verbosity
-            });
-          } else {
-            this._setupFakeWorker();
-
-            messageHandler.destroy();
-            worker.terminate();
-          }
-        });
-        messageHandler.on("ready", data => {
-          worker.removeEventListener("error", onWorkerError);
+  getCalculationOrderIds() {
+    return this.messageHandler.sendWithPromise("GetCalculationOrderIds", null);
+  }
 
-          if (this.destroyed) {
-            terminateEarly();
-            return;
-          }
+  getDestinations() {
+    return this.messageHandler.sendWithPromise("GetDestinations", null);
+  }
 
-          try {
-            sendTest();
-          } catch (e) {
-            this._setupFakeWorker();
-          }
-        });
+  getDestination(id) {
+    if (typeof id !== "string") {
+      return Promise.reject(new Error("Invalid destination request."));
+    }
 
-        const sendTest = () => {
-          const testObj = new Uint8Array([255]);
+    return this.messageHandler.sendWithPromise("GetDestination", {
+      id
+    });
+  }
 
-          try {
-            messageHandler.send("test", testObj, [testObj.buffer]);
-          } catch (ex) {
-            (0, _util.warn)("Cannot use postMessage transfers.");
-            testObj[0] = 0;
-            messageHandler.send("test", testObj);
-          }
-        };
+  getPageLabels() {
+    return this.messageHandler.sendWithPromise("GetPageLabels", null);
+  }
 
-        sendTest();
-        return;
-      } catch (e) {
-        (0, _util.info)("The worker has been disabled.");
-      }
-    }
+  getPageLayout() {
+    return this.messageHandler.sendWithPromise("GetPageLayout", null);
+  }
 
-    this._setupFakeWorker();
+  getPageMode() {
+    return this.messageHandler.sendWithPromise("GetPageMode", null);
   }
 
-  _setupFakeWorker() {
-    if (!PDFWorkerUtil.isWorkerDisabled) {
-      (0, _util.warn)("Setting up fake worker.");
-      PDFWorkerUtil.isWorkerDisabled = true;
-    }
+  getViewerPreferences() {
+    return this.messageHandler.sendWithPromise("GetViewerPreferences", null);
+  }
 
-    PDFWorker._setupFakeWorkerGlobal.then(WorkerMessageHandler => {
-      if (this.destroyed) {
-        this._readyCapability.reject(new Error("Worker was destroyed"));
+  getOpenAction() {
+    return this.messageHandler.sendWithPromise("GetOpenAction", null);
+  }
 
-        return;
-      }
+  getAttachments() {
+    return this.messageHandler.sendWithPromise("GetAttachments", null);
+  }
 
-      const port = new LoopbackPort();
-      this._port = port;
-      const id = `fake${PDFWorkerUtil.fakeWorkerId++}`;
-      const workerHandler = new _message_handler.MessageHandler(id + "_worker", id, port);
-      WorkerMessageHandler.setup(workerHandler, port);
-      const messageHandler = new _message_handler.MessageHandler(id, id + "_worker", port);
-      this._messageHandler = messageHandler;
+  getJavaScript() {
+    return this.messageHandler.sendWithPromise("GetJavaScript", null);
+  }
 
-      this._readyCapability.resolve();
+  getDocJSActions() {
+    return this.messageHandler.sendWithPromise("GetDocJSActions", null);
+  }
 
-      messageHandler.send("configure", {
-        verbosity: this.verbosity
-      });
-    }).catch(reason => {
-      this._readyCapability.reject(new Error(`Setting up fake worker failed: "${reason.message}".`));
+  getPageJSActions(pageIndex) {
+    return this.messageHandler.sendWithPromise("GetPageJSActions", {
+      pageIndex
     });
   }
 
-  destroy() {
-    this.destroyed = true;
+  getStructTree(pageIndex) {
+    return this.messageHandler.sendWithPromise("GetStructTree", {
+      pageIndex
+    });
+  }
 
-    if (this._webWorker) {
-      this._webWorker.terminate();
+  getOutline() {
+    return this.messageHandler.sendWithPromise("GetOutline", null);
+  }
 
-      this._webWorker = null;
-    }
+  getOptionalContentConfig() {
+    return this.messageHandler.sendWithPromise("GetOptionalContentConfig", null).then(results => {
+      return new _optional_content_config.OptionalContentConfig(results);
+    });
+  }
 
-    PDFWorker._workerPorts.delete(this._port);
+  getPermissions() {
+    return this.messageHandler.sendWithPromise("GetPermissions", null);
+  }
 
-    this._port = null;
+  getMetadata() {
+    return this.#metadataPromise ||= this.messageHandler.sendWithPromise("GetMetadata", null).then(results 
=> {
+      return {
+        info: results[0],
+        metadata: results[1] ? new _metadata.Metadata(results[1]) : null,
+        contentDispositionFilename: this._fullReader?.filename ?? null,
+        contentLength: this._fullReader?.contentLength ?? null
+      };
+    });
+  }
 
-    if (this._messageHandler) {
-      this._messageHandler.destroy();
+  getMarkInfo() {
+    return this.messageHandler.sendWithPromise("GetMarkInfo", null);
+  }
 
-      this._messageHandler = null;
+  async startCleanup(keepLoadedFonts = false) {
+    await this.messageHandler.sendWithPromise("Cleanup", null);
+
+    if (this.destroyed) {
+      return;
     }
-  }
 
-  static fromPort(params) {
-    if (!params?.port) {
-      throw new Error("PDFWorker.fromPort - invalid method signature.");
+    for (const page of this.#pageCache.values()) {
+      const cleanupSuccessful = page.cleanup();
+
+      if (!cleanupSuccessful) {
+        throw new Error(`startCleanup: Page ${page.pageNumber} is currently rendering.`);
+      }
     }
 
-    if (this._workerPorts.has(params.port)) {
-      return this._workerPorts.get(params.port);
+    this.commonObjs.clear();
+
+    if (!keepLoadedFonts) {
+      this.fontLoader.clear();
     }
 
-    return new PDFWorker(params);
+    this.#metadataPromise = null;
+    this._getFieldObjectsPromise = null;
+    this._hasJSActionsPromise = null;
   }
 
-  static get workerSrc() {
-    if (_worker_options.GlobalWorkerOptions.workerSrc) {
-      return _worker_options.GlobalWorkerOptions.workerSrc;
-    }
+  get loadingParams() {
+    const params = this._params;
+    return (0, _util.shadow)(this, "loadingParams", {
+      disableAutoFetch: params.disableAutoFetch,
+      enableXfa: params.enableXfa
+    });
+  }
 
-    if (PDFWorkerUtil.fallbackWorkerSrc !== null) {
-      if (!_is_node.isNodeJS) {
-        (0, _display_utils.deprecated)('No "GlobalWorkerOptions.workerSrc" specified.');
-      }
+}
 
-      return PDFWorkerUtil.fallbackWorkerSrc;
+class PDFObjects {
+  #objs = Object.create(null);
+
+  #ensureObj(objId) {
+    const obj = this.#objs[objId];
+
+    if (obj) {
+      return obj;
     }
 
-    throw new Error('No "GlobalWorkerOptions.workerSrc" specified.');
+    return this.#objs[objId] = {
+      capability: (0, _util.createPromiseCapability)(),
+      data: null
+    };
   }
 
-  static get _mainThreadWorkerMessageHandler() {
-    try {
-      return globalThis.pdfjsWorker?.WorkerMessageHandler || null;
-    } catch (ex) {
+  get(objId, callback = null) {
+    if (callback) {
+      const obj = this.#ensureObj(objId);
+      obj.capability.promise.then(() => callback(obj.data));
       return null;
     }
-  }
 
-  static get _setupFakeWorkerGlobal() {
-    const loader = async () => {
-      const mainWorkerMessageHandler = this._mainThreadWorkerMessageHandler;
+    const obj = this.#objs[objId];
 
-      if (mainWorkerMessageHandler) {
-        return mainWorkerMessageHandler;
-      }
+    if (!obj?.capability.settled) {
+      throw new Error(`Requesting object that isn't resolved yet ${objId}.`);
+    }
 
-      if (_is_node.isNodeJS && typeof require === "function") {
-        const worker = eval("require")(this.workerSrc);
-        return worker.WorkerMessageHandler;
-      }
+    return obj.data;
+  }
 
-      await (0, _display_utils.loadScript)(this.workerSrc);
-      return window.pdfjsWorker.WorkerMessageHandler;
-    };
+  has(objId) {
+    const obj = this.#objs[objId];
+    return obj?.capability.settled || false;
+  }
 
-    return (0, _util.shadow)(this, "_setupFakeWorkerGlobal", loader());
+  resolve(objId, data = null) {
+    const obj = this.#ensureObj(objId);
+    obj.data = data;
+    obj.capability.resolve();
   }
 
-}
+  clear() {
+    this.#objs = Object.create(null);
+  }
 
-exports.PDFWorker = PDFWorker;
-{
-  PDFWorker.getWorkerSrc = function () {
-    (0, _display_utils.deprecated)("`PDFWorker.getWorkerSrc()`, please use `PDFWorker.workerSrc` instead.");
-    return this.workerSrc;
-  };
 }
 
-class WorkerTransport {
-  #docStats = null;
-  #pageCache = new Map();
-  #pagePromises = new Map();
-  #metadataPromise = null;
+class RenderTask {
+  constructor(internalRenderTask) {
+    this._internalRenderTask = internalRenderTask;
+    this.onContinue = null;
+  }
 
-  constructor(messageHandler, loadingTask, networkStream, params) {
-    this.messageHandler = messageHandler;
-    this.loadingTask = loadingTask;
-    this.commonObjs = new PDFObjects();
-    this.fontLoader = new _font_loader.FontLoader({
-      docId: loadingTask.docId,
-      onUnsupportedFeature: this._onUnsupportedFeature.bind(this),
-      ownerDocument: params.ownerDocument,
-      styleElement: params.styleElement
-    });
-    this._params = params;
+  get promise() {
+    return this._internalRenderTask.capability.promise;
+  }
 
-    if (!params.useWorkerFetch) {
-      this.CMapReaderFactory = new params.CMapReaderFactory({
-        baseUrl: params.cMapUrl,
-        isCompressed: params.cMapPacked
-      });
-      this.StandardFontDataFactory = new params.StandardFontDataFactory({
-        baseUrl: params.standardFontDataUrl
-      });
-    }
+  cancel() {
+    this._internalRenderTask.cancel();
+  }
 
-    this.destroyed = false;
-    this.destroyCapability = null;
-    this._passwordCapability = null;
-    this._networkStream = networkStream;
-    this._fullReader = null;
-    this._lastProgress = null;
-    this.downloadInfoCapability = (0, _util.createPromiseCapability)();
-    this.setupMessageHandler();
+}
+
+exports.RenderTask = RenderTask;
+
+class InternalRenderTask {
+  static get canvasInUse() {
+    return (0, _util.shadow)(this, "canvasInUse", new WeakSet());
   }
 
-  get annotationStorage() {
-    return (0, _util.shadow)(this, "annotationStorage", new _annotation_storage.AnnotationStorage());
+  constructor({
+    callback,
+    params,
+    objs,
+    commonObjs,
+    annotationCanvasMap,
+    operatorList,
+    pageIndex,
+    canvasFactory,
+    useRequestAnimationFrame = false,
+    pdfBug = false
+  }) {
+    this.callback = callback;
+    this.params = params;
+    this.objs = objs;
+    this.commonObjs = commonObjs;
+    this.annotationCanvasMap = annotationCanvasMap;
+    this.operatorListIdx = null;
+    this.operatorList = operatorList;
+    this._pageIndex = pageIndex;
+    this.canvasFactory = canvasFactory;
+    this._pdfBug = pdfBug;
+    this.running = false;
+    this.graphicsReadyCallback = null;
+    this.graphicsReady = false;
+    this._useRequestAnimationFrame = useRequestAnimationFrame === true && typeof window !== "undefined";
+    this.cancelled = false;
+    this.capability = (0, _util.createPromiseCapability)();
+    this.task = new RenderTask(this);
+    this._cancelBound = this.cancel.bind(this);
+    this._continueBound = this._continue.bind(this);
+    this._scheduleNextBound = this._scheduleNext.bind(this);
+    this._nextBound = this._next.bind(this);
+    this._canvas = params.canvasContext.canvas;
   }
 
-  get stats() {
-    return this.#docStats;
+  get completed() {
+    return this.capability.promise.catch(function () {});
   }
 
-  getRenderingIntent(intent, annotationMode = _util.AnnotationMode.ENABLE, isOpList = false) {
-    let renderingIntent = _util.RenderingIntentFlag.DISPLAY;
-    let lastModified = "";
-
-    switch (intent) {
-      case "any":
-        renderingIntent = _util.RenderingIntentFlag.ANY;
-        break;
-
-      case "display":
-        break;
+  initializeGraphics({
+    transparency = false,
+    optionalContentConfig
+  }) {
+    if (this.cancelled) {
+      return;
+    }
 
-      case "print":
-        renderingIntent = _util.RenderingIntentFlag.PRINT;
-        break;
+    if (this._canvas) {
+      if (InternalRenderTask.canvasInUse.has(this._canvas)) {
+        throw new Error("Cannot use the same canvas during multiple render() operations. " + "Use different 
canvas or ensure previous operations were " + "cancelled or completed.");
+      }
 
-      default:
-        (0, _util.warn)(`getRenderingIntent - invalid intent: ${intent}`);
+      InternalRenderTask.canvasInUse.add(this._canvas);
     }
 
-    switch (annotationMode) {
-      case _util.AnnotationMode.DISABLE:
-        renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_DISABLE;
-        break;
+    if (this._pdfBug && globalThis.StepperManager?.enabled) {
+      this.stepper = globalThis.StepperManager.create(this._pageIndex);
+      this.stepper.init(this.operatorList);
+      this.stepper.nextBreakPoint = this.stepper.getNextBreakPoint();
+    }
 
-      case _util.AnnotationMode.ENABLE:
-        break;
+    const {
+      canvasContext,
+      viewport,
+      transform,
+      imageLayer,
+      background
+    } = this.params;
+    this.gfx = new _canvas.CanvasGraphics(canvasContext, this.commonObjs, this.objs, this.canvasFactory, 
imageLayer, optionalContentConfig, this.annotationCanvasMap);
+    this.gfx.beginDrawing({
+      transform,
+      viewport,
+      transparency,
+      background
+    });
+    this.operatorListIdx = 0;
+    this.graphicsReady = true;
 
-      case _util.AnnotationMode.ENABLE_FORMS:
-        renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_FORMS;
-        break;
+    if (this.graphicsReadyCallback) {
+      this.graphicsReadyCallback();
+    }
+  }
 
-      case _util.AnnotationMode.ENABLE_STORAGE:
-        renderingIntent += _util.RenderingIntentFlag.ANNOTATIONS_STORAGE;
-        lastModified = this.annotationStorage.lastModified;
-        break;
+  cancel(error = null) {
+    this.running = false;
+    this.cancelled = true;
 
-      default:
-        (0, _util.warn)(`getRenderingIntent - invalid annotationMode: ${annotationMode}`);
+    if (this.gfx) {
+      this.gfx.endDrawing();
     }
 
-    if (isOpList) {
-      renderingIntent += _util.RenderingIntentFlag.OPLIST;
+    if (this._canvas) {
+      InternalRenderTask.canvasInUse.delete(this._canvas);
     }
 
-    return {
-      renderingIntent,
-      cacheKey: `${renderingIntent}_${lastModified}`
-    };
+    this.callback(error || new _display_utils.RenderingCancelledException(`Rendering cancelled, page 
${this._pageIndex + 1}`, "canvas"));
   }
 
-  destroy() {
-    if (this.destroyCapability) {
-      return this.destroyCapability.promise;
-    }
-
-    this.destroyed = true;
-    this.destroyCapability = (0, _util.createPromiseCapability)();
+  operatorListChanged() {
+    if (!this.graphicsReady) {
+      if (!this.graphicsReadyCallback) {
+        this.graphicsReadyCallback = this._continueBound;
+      }
 
-    if (this._passwordCapability) {
-      this._passwordCapability.reject(new Error("Worker was destroyed during onPassword callback"));
+      return;
     }
 
-    const waitOn = [];
-
-    for (const page of this.#pageCache.values()) {
-      waitOn.push(page._destroy());
+    if (this.stepper) {
+      this.stepper.updateOperatorList(this.operatorList);
     }
 
-    this.#pageCache.clear();
-    this.#pagePromises.clear();
-
-    if (this.hasOwnProperty("annotationStorage")) {
-      this.annotationStorage.resetModified();
+    if (this.running) {
+      return;
     }
 
-    const terminated = this.messageHandler.sendWithPromise("Terminate", null);
-    waitOn.push(terminated);
-    Promise.all(waitOn).then(() => {
-      this.commonObjs.clear();
-      this.fontLoader.clear();
-      this.#metadataPromise = null;
-      this._getFieldObjectsPromise = null;
-      this._hasJSActionsPromise = null;
-
-      if (this._networkStream) {
-        this._networkStream.cancelAllRequests(new _util.AbortException("Worker was terminated."));
-      }
-
-      if (this.messageHandler) {
-        this.messageHandler.destroy();
-        this.messageHandler = null;
-      }
-
-      this.destroyCapability.resolve();
-    }, this.destroyCapability.reject);
-    return this.destroyCapability.promise;
+    this._continue();
   }
 
-  setupMessageHandler() {
-    const {
-      messageHandler,
-      loadingTask
-    } = this;
-    messageHandler.on("GetReader", (data, sink) => {
-      (0, _util.assert)(this._networkStream, "GetReader - no `IPDFStream` instance available.");
-      this._fullReader = this._networkStream.getFullReader();
-
-      this._fullReader.onProgress = evt => {
-        this._lastProgress = {
-          loaded: evt.loaded,
-          total: evt.total
-        };
-      };
-
-      sink.onPull = () => {
-        this._fullReader.read().then(function ({
-          value,
-          done
-        }) {
-          if (done) {
-            sink.close();
-            return;
-          }
-
-          (0, _util.assert)((0, _util.isArrayBuffer)(value), "GetReader - expected an ArrayBuffer.");
-          sink.enqueue(new Uint8Array(value), 1, [value]);
-        }).catch(reason => {
-          sink.error(reason);
-        });
-      };
-
-      sink.onCancel = reason => {
-        this._fullReader.cancel(reason);
-
-        sink.ready.catch(readyReason => {
-          if (this.destroyed) {
-            return;
-          }
-
-          throw readyReason;
-        });
-      };
-    });
-    messageHandler.on("ReaderHeadersReady", data => {
-      const headersCapability = (0, _util.createPromiseCapability)();
-      const fullReader = this._fullReader;
-      fullReader.headersReady.then(() => {
-        if (!fullReader.isStreamingSupported || !fullReader.isRangeSupported) {
-          if (this._lastProgress) {
-            loadingTask.onProgress?.(this._lastProgress);
-          }
-
-          fullReader.onProgress = evt => {
-            loadingTask.onProgress?.({
-              loaded: evt.loaded,
-              total: evt.total
-            });
-          };
-        }
-
-        headersCapability.resolve({
-          isStreamingSupported: fullReader.isStreamingSupported,
-          isRangeSupported: fullReader.isRangeSupported,
-          contentLength: fullReader.contentLength
-        });
-      }, headersCapability.reject);
-      return headersCapability.promise;
-    });
-    messageHandler.on("GetRangeReader", (data, sink) => {
-      (0, _util.assert)(this._networkStream, "GetRangeReader - no `IPDFStream` instance available.");
-
-      const rangeReader = this._networkStream.getRangeReader(data.begin, data.end);
+  _continue() {
+    this.running = true;
 
-      if (!rangeReader) {
-        sink.close();
-        return;
-      }
+    if (this.cancelled) {
+      return;
+    }
 
-      sink.onPull = () => {
-        rangeReader.read().then(function ({
-          value,
-          done
-        }) {
-          if (done) {
-            sink.close();
-            return;
-          }
+    if (this.task.onContinue) {
+      this.task.onContinue(this._scheduleNextBound);
+    } else {
+      this._scheduleNext();
+    }
+  }
 
-          (0, _util.assert)((0, _util.isArrayBuffer)(value), "GetRangeReader - expected an ArrayBuffer.");
-          sink.enqueue(new Uint8Array(value), 1, [value]);
-        }).catch(reason => {
-          sink.error(reason);
-        });
-      };
+  _scheduleNext() {
+    if (this._useRequestAnimationFrame) {
+      window.requestAnimationFrame(() => {
+        this._nextBound().catch(this._cancelBound);
+      });
+    } else {
+      Promise.resolve().then(this._nextBound).catch(this._cancelBound);
+    }
+  }
 
-      sink.onCancel = reason => {
-        rangeReader.cancel(reason);
-        sink.ready.catch(readyReason => {
-          if (this.destroyed) {
-            return;
-          }
+  async _next() {
+    if (this.cancelled) {
+      return;
+    }
 
-          throw readyReason;
-        });
-      };
-    });
-    messageHandler.on("GetDoc", ({
-      pdfInfo
-    }) => {
-      this._numPages = pdfInfo.numPages;
-      this._htmlForXfa = pdfInfo.htmlForXfa;
-      delete pdfInfo.htmlForXfa;
+    this.operatorListIdx = this.gfx.executeOperatorList(this.operatorList, this.operatorListIdx, 
this._continueBound, this.stepper);
 
-      loadingTask._capability.resolve(new PDFDocumentProxy(pdfInfo, this));
-    });
-    messageHandler.on("DocException", function (ex) {
-      let reason;
+    if (this.operatorListIdx === this.operatorList.argsArray.length) {
+      this.running = false;
 
-      switch (ex.name) {
-        case "PasswordException":
-          reason = new _util.PasswordException(ex.message, ex.code);
-          break;
+      if (this.operatorList.lastChunk) {
+        this.gfx.endDrawing();
 
-        case "InvalidPDFException":
-          reason = new _util.InvalidPDFException(ex.message);
-          break;
+        if (this._canvas) {
+          InternalRenderTask.canvasInUse.delete(this._canvas);
+        }
 
-        case "MissingPDFException":
-          reason = new _util.MissingPDFException(ex.message);
-          break;
+        this.callback();
+      }
+    }
+  }
 
-        case "UnexpectedResponseException":
-          reason = new _util.UnexpectedResponseException(ex.message, ex.status);
-          break;
+}
 
-        case "UnknownErrorException":
-          reason = new _util.UnknownErrorException(ex.message, ex.details);
-          break;
+const version = '2.13.216';
+exports.version = version;
+const build = '399a0ec60';
+exports.build = build;
 
-        default:
-          (0, _util.unreachable)("DocException - expected a valid Error.");
-      }
+/***/ }),
+/* 5 */
+/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
-      loadingTask._capability.reject(reason);
-    });
-    messageHandler.on("PasswordRequest", exception => {
-      this._passwordCapability = (0, _util.createPromiseCapability)();
 
-      if (loadingTask.onPassword) {
-        const updatePassword = password => {
-          this._passwordCapability.resolve({
-            password
-          });
-        };
 
-        try {
-          loadingTask.onPassword(updatePassword, exception.code);
-        } catch (ex) {
-          this._passwordCapability.reject(ex);
-        }
-      } else {
-        this._passwordCapability.reject(new _util.PasswordException(exception.message, exception.code));
-      }
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.StatTimer = exports.RenderingCancelledException = exports.PixelsPerInch = exports.PageViewport = 
exports.PDFDateString = exports.DOMStandardFontDataFactory = exports.DOMSVGFactory = exports.DOMCanvasFactory 
= exports.DOMCMapReaderFactory = void 0;
+exports.deprecated = deprecated;
+exports.getFilenameFromUrl = getFilenameFromUrl;
+exports.getPdfFilenameFromUrl = getPdfFilenameFromUrl;
+exports.getXfaPageViewport = getXfaPageViewport;
+exports.isDataScheme = isDataScheme;
+exports.isPdfFile = isPdfFile;
+exports.isValidFetchUrl = isValidFetchUrl;
+exports.loadScript = loadScript;
 
-      return this._passwordCapability.promise;
-    });
-    messageHandler.on("DataLoaded", data => {
-      loadingTask.onProgress?.({
-        loaded: data.length,
-        total: data.length
-      });
-      this.downloadInfoCapability.resolve(data);
-    });
-    messageHandler.on("StartRenderPage", data => {
-      if (this.destroyed) {
-        return;
-      }
+var _base_factory = __w_pdfjs_require__(6);
 
-      const page = this.#pageCache.get(data.pageIndex);
+var _util = __w_pdfjs_require__(1);
 
-      page._startRenderPage(data.transparency, data.cacheKey);
-    });
-    messageHandler.on("commonobj", ([id, type, exportedData]) => {
-      if (this.destroyed) {
-        return;
-      }
+const SVG_NS = "http://www.w3.org/2000/svg";;
 
-      if (this.commonObjs.has(id)) {
-        return;
-      }
+class PixelsPerInch {
+  static CSS = 96.0;
+  static PDF = 72.0;
+  static PDF_TO_CSS_UNITS = this.CSS / this.PDF;
+}
 
-      switch (type) {
-        case "Font":
-          const params = this._params;
+exports.PixelsPerInch = PixelsPerInch;
 
-          if ("error" in exportedData) {
-            const exportedError = exportedData.error;
-            (0, _util.warn)(`Error during font loading: ${exportedError}`);
-            this.commonObjs.resolve(id, exportedError);
-            break;
-          }
+class DOMCanvasFactory extends _base_factory.BaseCanvasFactory {
+  constructor({
+    ownerDocument = globalThis.document
+  } = {}) {
+    super();
+    this._document = ownerDocument;
+  }
 
-          let fontRegistry = null;
+  _createCanvas(width, height) {
+    const canvas = this._document.createElement("canvas");
 
-          if (params.pdfBug && globalThis.FontInspector?.enabled) {
-            fontRegistry = {
-              registerFont(font, url) {
-                globalThis.FontInspector.fontAdded(font, url);
-              }
+    canvas.width = width;
+    canvas.height = height;
+    return canvas;
+  }
 
-            };
-          }
+}
 
-          const font = new _font_loader.FontFaceObject(exportedData, {
-            isEvalSupported: params.isEvalSupported,
-            disableFontFace: params.disableFontFace,
-            ignoreErrors: params.ignoreErrors,
-            onUnsupportedFeature: this._onUnsupportedFeature.bind(this),
-            fontRegistry
-          });
-          this.fontLoader.bind(font).catch(reason => {
-            return messageHandler.sendWithPromise("FontFallback", {
-              id
-            });
-          }).finally(() => {
-            if (!params.fontExtraProperties && font.data) {
-              font.data = null;
-            }
+exports.DOMCanvasFactory = DOMCanvasFactory;
 
-            this.commonObjs.resolve(id, font);
-          });
-          break;
+async function fetchData(url, asTypedArray = false) {
+  if (isValidFetchUrl(url, document.baseURI)) {
+    const response = await fetch(url);
 
-        case "FontPath":
-        case "Image":
-          this.commonObjs.resolve(id, exportedData);
-          break;
+    if (!response.ok) {
+      throw new Error(response.statusText);
+    }
 
-        default:
-          throw new Error(`Got unknown common object type ${type}`);
-      }
-    });
-    messageHandler.on("obj", ([id, pageIndex, type, imageData]) => {
-      if (this.destroyed) {
-        return;
-      }
+    return asTypedArray ? new Uint8Array(await response.arrayBuffer()) : (0, _util.stringToBytes)(await 
response.text());
+  }
 
-      const pageProxy = this.#pageCache.get(pageIndex);
+  return new Promise((resolve, reject) => {
+    const request = new XMLHttpRequest();
+    request.open("GET", url, true);
 
-      if (pageProxy.objs.has(id)) {
+    if (asTypedArray) {
+      request.responseType = "arraybuffer";
+    }
+
+    request.onreadystatechange = () => {
+      if (request.readyState !== XMLHttpRequest.DONE) {
         return;
       }
 
-      switch (type) {
-        case "Image":
-          pageProxy.objs.resolve(id, imageData);
-          const MAX_IMAGE_SIZE_TO_STORE = 8000000;
+      if (request.status === 200 || request.status === 0) {
+        let data;
 
-          if (imageData?.data?.length > MAX_IMAGE_SIZE_TO_STORE) {
-            pageProxy.cleanupAfterRender = true;
-          }
+        if (asTypedArray && request.response) {
+          data = new Uint8Array(request.response);
+        } else if (!asTypedArray && request.responseText) {
+          data = (0, _util.stringToBytes)(request.responseText);
+        }
 
-          break;
+        if (data) {
+          resolve(data);
+          return;
+        }
+      }
 
-        case "Pattern":
-          pageProxy.objs.resolve(id, imageData);
-          break;
+      reject(new Error(request.statusText));
+    };
 
-        default:
-          throw new Error(`Got unknown object type ${type}`);
-      }
-    });
-    messageHandler.on("DocProgress", data => {
-      if (this.destroyed) {
-        return;
-      }
+    request.send(null);
+  });
+}
 
-      loadingTask.onProgress?.({
-        loaded: data.loaded,
-        total: data.total
-      });
+class DOMCMapReaderFactory extends _base_factory.BaseCMapReaderFactory {
+  _fetchData(url, compressionType) {
+    return fetchData(url, this.isCompressed).then(data => {
+      return {
+        cMapData: data,
+        compressionType
+      };
     });
-    messageHandler.on("DocStats", data => {
-      if (this.destroyed) {
-        return;
-      }
+  }
 
-      this.#docStats = Object.freeze({
-        streamTypes: Object.freeze(data.streamTypes),
-        fontTypes: Object.freeze(data.fontTypes)
-      });
-    });
-    messageHandler.on("UnsupportedFeature", this._onUnsupportedFeature.bind(this));
-    messageHandler.on("FetchBuiltInCMap", data => {
-      if (this.destroyed) {
-        return Promise.reject(new Error("Worker was destroyed."));
-      }
+}
 
-      if (!this.CMapReaderFactory) {
-        return Promise.reject(new Error("CMapReaderFactory not initialized, see the `useWorkerFetch` 
parameter."));
-      }
+exports.DOMCMapReaderFactory = DOMCMapReaderFactory;
+
+class DOMStandardFontDataFactory extends _base_factory.BaseStandardFontDataFactory {
+  _fetchData(url) {
+    return fetchData(url, true);
+  }
 
-      return this.CMapReaderFactory.fetch(data);
-    });
-    messageHandler.on("FetchStandardFontData", data => {
-      if (this.destroyed) {
-        return Promise.reject(new Error("Worker was destroyed."));
-      }
+}
 
-      if (!this.StandardFontDataFactory) {
-        return Promise.reject(new Error("StandardFontDataFactory not initialized, see the `useWorkerFetch` 
parameter."));
-      }
+exports.DOMStandardFontDataFactory = DOMStandardFontDataFactory;
 
-      return this.StandardFontDataFactory.fetch(data);
-    });
+class DOMSVGFactory extends _base_factory.BaseSVGFactory {
+  _createSVG(type) {
+    return document.createElementNS(SVG_NS, type);
   }
 
-  _onUnsupportedFeature({
-    featureId
+}
+
+exports.DOMSVGFactory = DOMSVGFactory;
+
+class PageViewport {
+  constructor({
+    viewBox,
+    scale,
+    rotation,
+    offsetX = 0,
+    offsetY = 0,
+    dontFlip = false
   }) {
-    if (this.destroyed) {
-      return;
+    this.viewBox = viewBox;
+    this.scale = scale;
+    this.rotation = rotation;
+    this.offsetX = offsetX;
+    this.offsetY = offsetY;
+    const centerX = (viewBox[2] + viewBox[0]) / 2;
+    const centerY = (viewBox[3] + viewBox[1]) / 2;
+    let rotateA, rotateB, rotateC, rotateD;
+    rotation %= 360;
+
+    if (rotation < 0) {
+      rotation += 360;
     }
 
-    this.loadingTask.onUnsupportedFeature?.(featureId);
-  }
+    switch (rotation) {
+      case 180:
+        rotateA = -1;
+        rotateB = 0;
+        rotateC = 0;
+        rotateD = 1;
+        break;
 
-  getData() {
-    return this.messageHandler.sendWithPromise("GetData", null);
-  }
+      case 90:
+        rotateA = 0;
+        rotateB = 1;
+        rotateC = 1;
+        rotateD = 0;
+        break;
 
-  getPage(pageNumber) {
-    if (!Number.isInteger(pageNumber) || pageNumber <= 0 || pageNumber > this._numPages) {
-      return Promise.reject(new Error("Invalid page request"));
-    }
+      case 270:
+        rotateA = 0;
+        rotateB = -1;
+        rotateC = -1;
+        rotateD = 0;
+        break;
 
-    const pageIndex = pageNumber - 1,
-          cachedPromise = this.#pagePromises.get(pageIndex);
+      case 0:
+        rotateA = 1;
+        rotateB = 0;
+        rotateC = 0;
+        rotateD = -1;
+        break;
 
-    if (cachedPromise) {
-      return cachedPromise;
+      default:
+        throw new Error("PageViewport: Invalid rotation, must be a multiple of 90 degrees.");
     }
 
-    const promise = this.messageHandler.sendWithPromise("GetPage", {
-      pageIndex
-    }).then(pageInfo => {
-      if (this.destroyed) {
-        throw new Error("Transport destroyed");
-      }
+    if (dontFlip) {
+      rotateC = -rotateC;
+      rotateD = -rotateD;
+    }
 
-      const page = new PDFPageProxy(pageIndex, pageInfo, this, this._params.ownerDocument, 
this._params.pdfBug);
-      this.#pageCache.set(pageIndex, page);
-      return page;
-    });
-    this.#pagePromises.set(pageIndex, promise);
-    return promise;
-  }
+    let offsetCanvasX, offsetCanvasY;
+    let width, height;
 
-  getPageIndex(ref) {
-    return this.messageHandler.sendWithPromise("GetPageIndex", {
-      ref
-    });
-  }
+    if (rotateA === 0) {
+      offsetCanvasX = Math.abs(centerY - viewBox[1]) * scale + offsetX;
+      offsetCanvasY = Math.abs(centerX - viewBox[0]) * scale + offsetY;
+      width = Math.abs(viewBox[3] - viewBox[1]) * scale;
+      height = Math.abs(viewBox[2] - viewBox[0]) * scale;
+    } else {
+      offsetCanvasX = Math.abs(centerX - viewBox[0]) * scale + offsetX;
+      offsetCanvasY = Math.abs(centerY - viewBox[1]) * scale + offsetY;
+      width = Math.abs(viewBox[2] - viewBox[0]) * scale;
+      height = Math.abs(viewBox[3] - viewBox[1]) * scale;
+    }
 
-  getAnnotations(pageIndex, intent) {
-    return this.messageHandler.sendWithPromise("GetAnnotations", {
-      pageIndex,
-      intent
-    });
+    this.transform = [rotateA * scale, rotateB * scale, rotateC * scale, rotateD * scale, offsetCanvasX - 
rotateA * scale * centerX - rotateC * scale * centerY, offsetCanvasY - rotateB * scale * centerX - rotateD * 
scale * centerY];
+    this.width = width;
+    this.height = height;
   }
 
-  saveDocument() {
-    return this.messageHandler.sendWithPromise("SaveDocument", {
-      isPureXfa: !!this._htmlForXfa,
-      numPages: this._numPages,
-      annotationStorage: this.annotationStorage.serializable,
-      filename: this._fullReader?.filename ?? null
-    }).finally(() => {
-      this.annotationStorage.resetModified();
+  clone({
+    scale = this.scale,
+    rotation = this.rotation,
+    offsetX = this.offsetX,
+    offsetY = this.offsetY,
+    dontFlip = false
+  } = {}) {
+    return new PageViewport({
+      viewBox: this.viewBox.slice(),
+      scale,
+      rotation,
+      offsetX,
+      offsetY,
+      dontFlip
     });
   }
 
-  getFieldObjects() {
-    return this._getFieldObjectsPromise ||= this.messageHandler.sendWithPromise("GetFieldObjects", null);
+  convertToViewportPoint(x, y) {
+    return _util.Util.applyTransform([x, y], this.transform);
   }
 
-  hasJSActions() {
-    return this._hasJSActionsPromise ||= this.messageHandler.sendWithPromise("HasJSActions", null);
-  }
+  convertToViewportRectangle(rect) {
+    const topLeft = _util.Util.applyTransform([rect[0], rect[1]], this.transform);
 
-  getCalculationOrderIds() {
-    return this.messageHandler.sendWithPromise("GetCalculationOrderIds", null);
+    const bottomRight = _util.Util.applyTransform([rect[2], rect[3]], this.transform);
+
+    return [topLeft[0], topLeft[1], bottomRight[0], bottomRight[1]];
   }
 
-  getDestinations() {
-    return this.messageHandler.sendWithPromise("GetDestinations", null);
+  convertToPdfPoint(x, y) {
+    return _util.Util.applyInverseTransform([x, y], this.transform);
   }
 
-  getDestination(id) {
-    if (typeof id !== "string") {
-      return Promise.reject(new Error("Invalid destination request."));
-    }
+}
 
-    return this.messageHandler.sendWithPromise("GetDestination", {
-      id
-    });
-  }
+exports.PageViewport = PageViewport;
 
-  getPageLabels() {
-    return this.messageHandler.sendWithPromise("GetPageLabels", null);
+class RenderingCancelledException extends _util.BaseException {
+  constructor(msg, type) {
+    super(msg, "RenderingCancelledException");
+    this.type = type;
   }
 
-  getPageLayout() {
-    return this.messageHandler.sendWithPromise("GetPageLayout", null);
-  }
+}
 
-  getPageMode() {
-    return this.messageHandler.sendWithPromise("GetPageMode", null);
-  }
+exports.RenderingCancelledException = RenderingCancelledException;
 
-  getViewerPreferences() {
-    return this.messageHandler.sendWithPromise("GetViewerPreferences", null);
-  }
+function isDataScheme(url) {
+  const ii = url.length;
+  let i = 0;
 
-  getOpenAction() {
-    return this.messageHandler.sendWithPromise("GetOpenAction", null);
+  while (i < ii && url[i].trim() === "") {
+    i++;
   }
 
-  getAttachments() {
-    return this.messageHandler.sendWithPromise("GetAttachments", null);
-  }
+  return url.substring(i, i + 5).toLowerCase() === "data:";
+}
 
-  getJavaScript() {
-    return this.messageHandler.sendWithPromise("GetJavaScript", null);
+function isPdfFile(filename) {
+  return typeof filename === "string" && /\.pdf$/i.test(filename);
+}
+
+function getFilenameFromUrl(url) {
+  const anchor = url.indexOf("#");
+  const query = url.indexOf("?");
+  const end = Math.min(anchor > 0 ? anchor : url.length, query > 0 ? query : url.length);
+  return url.substring(url.lastIndexOf("/", end) + 1, end);
+}
+
+function getPdfFilenameFromUrl(url, defaultFilename = "document.pdf") {
+  if (typeof url !== "string") {
+    return defaultFilename;
   }
 
-  getDocJSActions() {
-    return this.messageHandler.sendWithPromise("GetDocJSActions", null);
+  if (isDataScheme(url)) {
+    (0, _util.warn)('getPdfFilenameFromUrl: ignore "data:"-URL for performance reasons.');
+    return defaultFilename;
   }
 
-  getPageJSActions(pageIndex) {
-    return this.messageHandler.sendWithPromise("GetPageJSActions", {
-      pageIndex
-    });
+  const reURI = /^(?:(?:[^:]+:)?\/\/[^/]+)?([^?#]*)(\?[^#]*)?(#.*)?$/;
+  const reFilename = /[^/?#=]+\.pdf\b(?!.*\.pdf\b)/i;
+  const splitURI = reURI.exec(url);
+  let suggestedFilename = reFilename.exec(splitURI[1]) || reFilename.exec(splitURI[2]) || 
reFilename.exec(splitURI[3]);
+
+  if (suggestedFilename) {
+    suggestedFilename = suggestedFilename[0];
+
+    if (suggestedFilename.includes("%")) {
+      try {
+        suggestedFilename = reFilename.exec(decodeURIComponent(suggestedFilename))[0];
+      } catch (ex) {}
+    }
   }
 
-  getStructTree(pageIndex) {
-    return this.messageHandler.sendWithPromise("GetStructTree", {
-      pageIndex
-    });
+  return suggestedFilename || defaultFilename;
+}
+
+class StatTimer {
+  constructor() {
+    this.started = Object.create(null);
+    this.times = [];
   }
 
-  getOutline() {
-    return this.messageHandler.sendWithPromise("GetOutline", null);
-  }
+  time(name) {
+    if (name in this.started) {
+      (0, _util.warn)(`Timer is already running for ${name}`);
+    }
 
-  getOptionalContentConfig() {
-    return this.messageHandler.sendWithPromise("GetOptionalContentConfig", null).then(results => {
-      return new _optional_content_config.OptionalContentConfig(results);
-    });
+    this.started[name] = Date.now();
   }
 
-  getPermissions() {
-    return this.messageHandler.sendWithPromise("GetPermissions", null);
-  }
+  timeEnd(name) {
+    if (!(name in this.started)) {
+      (0, _util.warn)(`Timer has not been started for ${name}`);
+    }
 
-  getMetadata() {
-    return this.#metadataPromise ||= this.messageHandler.sendWithPromise("GetMetadata", null).then(results 
=> {
-      return {
-        info: results[0],
-        metadata: results[1] ? new _metadata.Metadata(results[1]) : null,
-        contentDispositionFilename: this._fullReader?.filename ?? null,
-        contentLength: this._fullReader?.contentLength ?? null
-      };
+    this.times.push({
+      name,
+      start: this.started[name],
+      end: Date.now()
     });
+    delete this.started[name];
   }
 
-  getMarkInfo() {
-    return this.messageHandler.sendWithPromise("GetMarkInfo", null);
-  }
-
-  async startCleanup(keepLoadedFonts = false) {
-    await this.messageHandler.sendWithPromise("Cleanup", null);
-
-    if (this.destroyed) {
-      return;
-    }
+  toString() {
+    const outBuf = [];
+    let longest = 0;
 
-    for (const page of this.#pageCache.values()) {
-      const cleanupSuccessful = page.cleanup();
+    for (const time of this.times) {
+      const name = time.name;
 
-      if (!cleanupSuccessful) {
-        throw new Error(`startCleanup: Page ${page.pageNumber} is currently rendering.`);
+      if (name.length > longest) {
+        longest = name.length;
       }
     }
 
-    this.commonObjs.clear();
-
-    if (!keepLoadedFonts) {
-      this.fontLoader.clear();
+    for (const time of this.times) {
+      const duration = time.end - time.start;
+      outBuf.push(`${time.name.padEnd(longest)} ${duration}ms\n`);
     }
 
-    this.#metadataPromise = null;
-    this._getFieldObjectsPromise = null;
-    this._hasJSActionsPromise = null;
+    return outBuf.join("");
   }
 
-  get loadingParams() {
-    const params = this._params;
-    return (0, _util.shadow)(this, "loadingParams", {
-      disableAutoFetch: params.disableAutoFetch,
-      enableXfa: params.enableXfa
-    });
+}
+
+exports.StatTimer = StatTimer;
+
+function isValidFetchUrl(url, baseUrl) {
+  try {
+    const {
+      protocol
+    } = baseUrl ? new URL(url, baseUrl) : new URL(url);
+    return protocol === "http:" || protocol === "https:";
+  } catch (ex) {
+    return false;
   }
+}
+
+function loadScript(src, removeScriptElement = false) {
+  return new Promise((resolve, reject) => {
+    const script = document.createElement("script");
+    script.src = src;
+
+    script.onload = function (evt) {
+      if (removeScriptElement) {
+        script.remove();
+      }
+
+      resolve(evt);
+    };
+
+    script.onerror = function () {
+      reject(new Error(`Cannot load script at: ${script.src}`));
+    };
 
+    (document.head || document.documentElement).appendChild(script);
+  });
 }
 
-class PDFObjects {
-  constructor() {
-    this._objs = Object.create(null);
-  }
+function deprecated(details) {
+  console.log("Deprecated API usage: " + details);
+}
+
+let pdfDateStringRegex;
 
-  _ensureObj(objId) {
-    if (this._objs[objId]) {
-      return this._objs[objId];
+class PDFDateString {
+  static toDateObject(input) {
+    if (!input || typeof input !== "string") {
+      return null;
     }
 
-    return this._objs[objId] = {
-      capability: (0, _util.createPromiseCapability)(),
-      data: null,
-      resolved: false
-    };
-  }
+    if (!pdfDateStringRegex) {
+      pdfDateStringRegex = new RegExp("^D:" + "(\\d{4})" + "(\\d{2})?" + "(\\d{2})?" + "(\\d{2})?" + 
"(\\d{2})?" + "(\\d{2})?" + "([Z|+|-])?" + "(\\d{2})?" + "'?" + "(\\d{2})?" + "'?");
+    }
 
-  get(objId, callback = null) {
-    if (callback) {
-      this._ensureObj(objId).capability.promise.then(callback);
+    const matches = pdfDateStringRegex.exec(input);
 
+    if (!matches) {
       return null;
     }
 
-    const obj = this._objs[objId];
+    const year = parseInt(matches[1], 10);
+    let month = parseInt(matches[2], 10);
+    month = month >= 1 && month <= 12 ? month - 1 : 0;
+    let day = parseInt(matches[3], 10);
+    day = day >= 1 && day <= 31 ? day : 1;
+    let hour = parseInt(matches[4], 10);
+    hour = hour >= 0 && hour <= 23 ? hour : 0;
+    let minute = parseInt(matches[5], 10);
+    minute = minute >= 0 && minute <= 59 ? minute : 0;
+    let second = parseInt(matches[6], 10);
+    second = second >= 0 && second <= 59 ? second : 0;
+    const universalTimeRelation = matches[7] || "Z";
+    let offsetHour = parseInt(matches[8], 10);
+    offsetHour = offsetHour >= 0 && offsetHour <= 23 ? offsetHour : 0;
+    let offsetMinute = parseInt(matches[9], 10) || 0;
+    offsetMinute = offsetMinute >= 0 && offsetMinute <= 59 ? offsetMinute : 0;
 
-    if (!obj || !obj.resolved) {
-      throw new Error(`Requesting object that isn't resolved yet ${objId}.`);
+    if (universalTimeRelation === "-") {
+      hour += offsetHour;
+      minute += offsetMinute;
+    } else if (universalTimeRelation === "+") {
+      hour -= offsetHour;
+      minute -= offsetMinute;
     }
 
-    return obj.data;
+    return new Date(Date.UTC(year, month, day, hour, minute, second));
   }
 
-  has(objId) {
-    const obj = this._objs[objId];
-    return obj?.resolved || false;
-  }
+}
 
-  resolve(objId, data) {
-    const obj = this._ensureObj(objId);
+exports.PDFDateString = PDFDateString;
 
-    obj.resolved = true;
-    obj.data = data;
-    obj.capability.resolve(data);
-  }
+function getXfaPageViewport(xfaPage, {
+  scale = 1,
+  rotation = 0
+}) {
+  const {
+    width,
+    height
+  } = xfaPage.attributes.style;
+  const viewBox = [0, 0, parseInt(width), parseInt(height)];
+  return new PageViewport({
+    viewBox,
+    scale,
+    rotation
+  });
+}
 
-  clear() {
-    this._objs = Object.create(null);
-  }
+/***/ }),
+/* 6 */
+/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
-}
 
-class RenderTask {
-  constructor(internalRenderTask) {
-    this._internalRenderTask = internalRenderTask;
-    this.onContinue = null;
-  }
 
-  get promise() {
-    return this._internalRenderTask.capability.promise;
-  }
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.BaseStandardFontDataFactory = exports.BaseSVGFactory = exports.BaseCanvasFactory = 
exports.BaseCMapReaderFactory = void 0;
 
-  cancel() {
-    this._internalRenderTask.cancel();
+var _util = __w_pdfjs_require__(1);
+
+class BaseCanvasFactory {
+  constructor() {
+    if (this.constructor === BaseCanvasFactory) {
+      (0, _util.unreachable)("Cannot initialize BaseCanvasFactory.");
+    }
   }
 
-}
+  create(width, height) {
+    if (width <= 0 || height <= 0) {
+      throw new Error("Invalid canvas size");
+    }
 
-exports.RenderTask = RenderTask;
+    const canvas = this._createCanvas(width, height);
 
-class InternalRenderTask {
-  static get canvasInUse() {
-    return (0, _util.shadow)(this, "canvasInUse", new WeakSet());
+    return {
+      canvas,
+      context: canvas.getContext("2d")
+    };
   }
 
-  constructor({
-    callback,
-    params,
-    objs,
-    commonObjs,
-    annotationCanvasMap,
-    operatorList,
-    pageIndex,
-    canvasFactory,
-    useRequestAnimationFrame = false,
-    pdfBug = false
-  }) {
-    this.callback = callback;
-    this.params = params;
-    this.objs = objs;
-    this.commonObjs = commonObjs;
-    this.annotationCanvasMap = annotationCanvasMap;
-    this.operatorListIdx = null;
-    this.operatorList = operatorList;
-    this._pageIndex = pageIndex;
-    this.canvasFactory = canvasFactory;
-    this._pdfBug = pdfBug;
-    this.running = false;
-    this.graphicsReadyCallback = null;
-    this.graphicsReady = false;
-    this._useRequestAnimationFrame = useRequestAnimationFrame === true && typeof window !== "undefined";
-    this.cancelled = false;
-    this.capability = (0, _util.createPromiseCapability)();
-    this.task = new RenderTask(this);
-    this._cancelBound = this.cancel.bind(this);
-    this._continueBound = this._continue.bind(this);
-    this._scheduleNextBound = this._scheduleNext.bind(this);
-    this._nextBound = this._next.bind(this);
-    this._canvas = params.canvasContext.canvas;
+  reset(canvasAndContext, width, height) {
+    if (!canvasAndContext.canvas) {
+      throw new Error("Canvas is not specified");
+    }
+
+    if (width <= 0 || height <= 0) {
+      throw new Error("Invalid canvas size");
+    }
+
+    canvasAndContext.canvas.width = width;
+    canvasAndContext.canvas.height = height;
+  }
+
+  destroy(canvasAndContext) {
+    if (!canvasAndContext.canvas) {
+      throw new Error("Canvas is not specified");
+    }
+
+    canvasAndContext.canvas.width = 0;
+    canvasAndContext.canvas.height = 0;
+    canvasAndContext.canvas = null;
+    canvasAndContext.context = null;
   }
 
-  get completed() {
-    return this.capability.promise.catch(function () {});
+  _createCanvas(width, height) {
+    (0, _util.unreachable)("Abstract method `_createCanvas` called.");
   }
 
-  initializeGraphics({
-    transparency = false,
-    optionalContentConfig
+}
+
+exports.BaseCanvasFactory = BaseCanvasFactory;
+
+class BaseCMapReaderFactory {
+  constructor({
+    baseUrl = null,
+    isCompressed = false
   }) {
-    if (this.cancelled) {
-      return;
+    if (this.constructor === BaseCMapReaderFactory) {
+      (0, _util.unreachable)("Cannot initialize BaseCMapReaderFactory.");
     }
 
-    if (this._canvas) {
-      if (InternalRenderTask.canvasInUse.has(this._canvas)) {
-        throw new Error("Cannot use the same canvas during multiple render() operations. " + "Use different 
canvas or ensure previous operations were " + "cancelled or completed.");
-      }
+    this.baseUrl = baseUrl;
+    this.isCompressed = isCompressed;
+  }
 
-      InternalRenderTask.canvasInUse.add(this._canvas);
+  async fetch({
+    name
+  }) {
+    if (!this.baseUrl) {
+      throw new Error('The CMap "baseUrl" parameter must be specified, ensure that ' + 'the "cMapUrl" and 
"cMapPacked" API parameters are provided.');
     }
 
-    if (this._pdfBug && globalThis.StepperManager?.enabled) {
-      this.stepper = globalThis.StepperManager.create(this._pageIndex);
-      this.stepper.init(this.operatorList);
-      this.stepper.nextBreakPoint = this.stepper.getNextBreakPoint();
+    if (!name) {
+      throw new Error("CMap name must be specified.");
     }
 
-    const {
-      canvasContext,
-      viewport,
-      transform,
-      imageLayer,
-      background
-    } = this.params;
-    this.gfx = new _canvas.CanvasGraphics(canvasContext, this.commonObjs, this.objs, this.canvasFactory, 
imageLayer, optionalContentConfig, this.annotationCanvasMap);
-    this.gfx.beginDrawing({
-      transform,
-      viewport,
-      transparency,
-      background
+    const url = this.baseUrl + name + (this.isCompressed ? ".bcmap" : "");
+    const compressionType = this.isCompressed ? _util.CMapCompressionType.BINARY : 
_util.CMapCompressionType.NONE;
+    return this._fetchData(url, compressionType).catch(reason => {
+      throw new Error(`Unable to load ${this.isCompressed ? "binary " : ""}CMap at: ${url}`);
     });
-    this.operatorListIdx = 0;
-    this.graphicsReady = true;
+  }
 
-    if (this.graphicsReadyCallback) {
-      this.graphicsReadyCallback();
-    }
+  _fetchData(url, compressionType) {
+    (0, _util.unreachable)("Abstract method `_fetchData` called.");
   }
 
-  cancel(error = null) {
-    this.running = false;
-    this.cancelled = true;
+}
 
-    if (this.gfx) {
-      this.gfx.endDrawing();
-    }
+exports.BaseCMapReaderFactory = BaseCMapReaderFactory;
 
-    if (this._canvas) {
-      InternalRenderTask.canvasInUse.delete(this._canvas);
+class BaseStandardFontDataFactory {
+  constructor({
+    baseUrl = null
+  }) {
+    if (this.constructor === BaseStandardFontDataFactory) {
+      (0, _util.unreachable)("Cannot initialize BaseStandardFontDataFactory.");
     }
 
-    this.callback(error || new _display_utils.RenderingCancelledException(`Rendering cancelled, page 
${this._pageIndex + 1}`, "canvas"));
+    this.baseUrl = baseUrl;
   }
 
-  operatorListChanged() {
-    if (!this.graphicsReady) {
-      if (!this.graphicsReadyCallback) {
-        this.graphicsReadyCallback = this._continueBound;
-      }
-
-      return;
-    }
-
-    if (this.stepper) {
-      this.stepper.updateOperatorList(this.operatorList);
+  async fetch({
+    filename
+  }) {
+    if (!this.baseUrl) {
+      throw new Error('The standard font "baseUrl" parameter must be specified, ensure that ' + 'the 
"standardFontDataUrl" API parameter is provided.');
     }
 
-    if (this.running) {
-      return;
+    if (!filename) {
+      throw new Error("Font filename must be specified.");
     }
 
-    this._continue();
+    const url = `${this.baseUrl}${filename}`;
+    return this._fetchData(url).catch(reason => {
+      throw new Error(`Unable to load font data at: ${url}`);
+    });
   }
 
-  _continue() {
-    this.running = true;
+  _fetchData(url) {
+    (0, _util.unreachable)("Abstract method `_fetchData` called.");
+  }
 
-    if (this.cancelled) {
-      return;
-    }
+}
 
-    if (this.task.onContinue) {
-      this.task.onContinue(this._scheduleNextBound);
-    } else {
-      this._scheduleNext();
-    }
-  }
+exports.BaseStandardFontDataFactory = BaseStandardFontDataFactory;
 
-  _scheduleNext() {
-    if (this._useRequestAnimationFrame) {
-      window.requestAnimationFrame(() => {
-        this._nextBound().catch(this._cancelBound);
-      });
-    } else {
-      Promise.resolve().then(this._nextBound).catch(this._cancelBound);
+class BaseSVGFactory {
+  constructor() {
+    if (this.constructor === BaseSVGFactory) {
+      (0, _util.unreachable)("Cannot initialize BaseSVGFactory.");
     }
   }
 
-  async _next() {
-    if (this.cancelled) {
-      return;
+  create(width, height) {
+    if (width <= 0 || height <= 0) {
+      throw new Error("Invalid SVG dimensions");
     }
 
-    this.operatorListIdx = this.gfx.executeOperatorList(this.operatorList, this.operatorListIdx, 
this._continueBound, this.stepper);
+    const svg = this._createSVG("svg:svg");
 
-    if (this.operatorListIdx === this.operatorList.argsArray.length) {
-      this.running = false;
+    svg.setAttribute("version", "1.1");
+    svg.setAttribute("width", `${width}px`);
+    svg.setAttribute("height", `${height}px`);
+    svg.setAttribute("preserveAspectRatio", "none");
+    svg.setAttribute("viewBox", `0 0 ${width} ${height}`);
+    return svg;
+  }
 
-      if (this.operatorList.lastChunk) {
-        this.gfx.endDrawing();
+  createElement(type) {
+    if (typeof type !== "string") {
+      throw new Error("Invalid SVG element type");
+    }
 
-        if (this._canvas) {
-          InternalRenderTask.canvasInUse.delete(this._canvas);
-        }
+    return this._createSVG(type);
+  }
 
-        this.callback();
-      }
-    }
+  _createSVG(type) {
+    (0, _util.unreachable)("Abstract method `_createSVG` called.");
   }
 
 }
 
-const version = '2.12.313';
-exports.version = version;
-const build = 'a2ae56f39';
-exports.build = build;
+exports.BaseSVGFactory = BaseSVGFactory;
 
 /***/ }),
 /* 7 */
@@ -4230,7 +4059,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.FontLoader = exports.FontFaceObject = void 0;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 class BaseFontLoader {
   constructor({
@@ -4642,11 +4471,11 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.NodeStandardFontDataFactory = exports.NodeCanvasFactory = exports.NodeCMapReaderFactory = void 0;
 
-var _base_factory = __w_pdfjs_require__(5);
+var _base_factory = __w_pdfjs_require__(6);
 
-var _is_node = __w_pdfjs_require__(4);
+var _is_node = __w_pdfjs_require__(3);
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 let NodeCanvasFactory = class {
   constructor() {
@@ -4724,7 +4553,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.AnnotationStorage = void 0;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 class AnnotationStorage {
   constructor() {
@@ -4821,11 +4650,11 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.CanvasGraphics = void 0;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 var _pattern_helper = __w_pdfjs_require__(11);
 
-var _display_utils = __w_pdfjs_require__(1);
+var _display_utils = __w_pdfjs_require__(5);
 
 const MIN_FONT_SIZE = 16;
 const MAX_FONT_SIZE = 100;
@@ -4969,6 +4798,10 @@ function mirrorContextOperations(ctx, destCtx) {
 }
 
 function addContextCurrentTransform(ctx) {
+  if (ctx._transformStack) {
+    ctx._transformStack = [];
+  }
+
   if (ctx.mozCurrentTransform) {
     return;
   }
@@ -5023,6 +4856,10 @@ function addContextCurrentTransform(ctx) {
   };
 
   ctx.restore = function ctxRestore() {
+    if (this._transformStack.length === 0) {
+      (0, _util.warn)("Tried to restore a ctx when the stack was already empty.");
+    }
+
     const prev = this._transformStack.pop();
 
     if (prev) {
@@ -5883,7 +5720,7 @@ class CanvasGraphics {
   }
 
   endDrawing() {
-    while (this.stateStack.length || this.current.activeSMask !== null) {
+    while (this.stateStack.length || this.inSMaskMode) {
       this.restore();
     }
 
@@ -6088,8 +5925,12 @@ class CanvasGraphics {
     }
   }
 
+  get inSMaskMode() {
+    return !!this.suspendedCtx;
+  }
+
   checkSMaskState() {
-    const inSMaskMode = !!this.suspendedCtx;
+    const inSMaskMode = this.inSMaskMode;
 
     if (this.current.activeSMask && !inSMaskMode) {
       this.beginSMaskMode();
@@ -6099,7 +5940,7 @@ class CanvasGraphics {
   }
 
   beginSMaskMode() {
-    if (this.suspendedCtx) {
+    if (this.inSMaskMode) {
       throw new Error("beginSMaskMode called while already in smask mode");
     }
 
@@ -6117,7 +5958,7 @@ class CanvasGraphics {
   }
 
   endSMaskMode() {
-    if (!this.suspendedCtx) {
+    if (!this.inSMaskMode) {
       throw new Error("endSMaskMode called while not in smask mode");
     }
 
@@ -6125,7 +5966,6 @@ class CanvasGraphics {
 
     copyCtxState(this.ctx, this.suspendedCtx);
     this.ctx = this.suspendedCtx;
-    this.current.activeSMask = null;
     this.suspendedCtx = null;
   }
 
@@ -6153,20 +5993,33 @@ class CanvasGraphics {
   }
 
   save() {
-    this.ctx.save();
+    if (this.inSMaskMode) {
+      copyCtxState(this.ctx, this.suspendedCtx);
+      this.suspendedCtx.save();
+    } else {
+      this.ctx.save();
+    }
+
     const old = this.current;
     this.stateStack.push(old);
     this.current = old.clone();
   }
 
   restore() {
-    if (this.stateStack.length === 0 && this.current.activeSMask) {
+    if (this.stateStack.length === 0 && this.inSMaskMode) {
       this.endSMaskMode();
     }
 
     if (this.stateStack.length !== 0) {
       this.current = this.stateStack.pop();
-      this.ctx.restore();
+
+      if (this.inSMaskMode) {
+        this.suspendedCtx.restore();
+        copyCtxState(this.suspendedCtx, this.ctx);
+      } else {
+        this.ctx.restore();
+      }
+
       this.checkSMaskState();
       this.pendingClip = null;
       this._cachedGetSinglePixelWidth = null;
@@ -6286,7 +6139,7 @@ class CanvasGraphics {
         if (lineWidth < 0 && -lineWidth >= this.current.lineWidth) {
           ctx.save();
           ctx.resetTransform();
-          ctx.lineWidth = Math.round(this._combinedScaleFactor);
+          ctx.lineWidth = Math.floor(this._combinedScaleFactor);
           ctx.stroke();
           ctx.restore();
         } else {
@@ -6540,7 +6393,7 @@ class CanvasGraphics {
       if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === 
_util.TextRenderingMode.FILL_STROKE) {
         if (resetLineWidthToOne) {
           ctx.resetTransform();
-          ctx.lineWidth = Math.round(this._combinedScaleFactor);
+          ctx.lineWidth = Math.floor(this._combinedScaleFactor);
         }
 
         ctx.stroke();
@@ -6557,7 +6410,7 @@ class CanvasGraphics {
           ctx.save();
           ctx.moveTo(x, y);
           ctx.resetTransform();
-          ctx.lineWidth = Math.round(this._combinedScaleFactor);
+          ctx.lineWidth = Math.floor(this._combinedScaleFactor);
           ctx.strokeText(character, 0, 0);
           ctx.restore();
         } else {
@@ -6671,7 +6524,7 @@ class CanvasGraphics {
     for (i = 0; i < glyphsLength; ++i) {
       const glyph = glyphs[i];
 
-      if ((0, _util.isNum)(glyph)) {
+      if (typeof glyph === "number") {
         x += spacingDir * glyph * fontSize / 1000;
         continue;
       }
@@ -6777,7 +6630,7 @@ class CanvasGraphics {
     for (i = 0; i < glyphsLength; ++i) {
       glyph = glyphs[i];
 
-      if ((0, _util.isNum)(glyph)) {
+      if (typeof glyph === "number") {
         spacingLength = spacingDir * glyph * fontSize / 1000;
         this.ctx.translate(spacingLength, 0);
         current.x += spacingLength * textHScale;
@@ -6967,10 +6820,9 @@ class CanvasGraphics {
     }
 
     this.save();
-    const suspendedCtx = this.suspendedCtx;
 
-    if (this.current.activeSMask) {
-      this.suspendedCtx = null;
+    if (this.inSMaskMode) {
+      this.endSMaskMode();
       this.current.activeSMask = null;
     }
 
@@ -7051,10 +6903,7 @@ class CanvasGraphics {
     copyCtxState(currentCtx, groupCtx);
     this.ctx = groupCtx;
     this.setGState([["BM", "source-over"], ["ca", 1], ["CA", 1]]);
-    this.groupStack.push({
-      ctx: currentCtx,
-      suspendedCtx
-    });
+    this.groupStack.push(currentCtx);
     this.groupLevel++;
   }
 
@@ -7065,17 +6914,10 @@ class CanvasGraphics {
 
     this.groupLevel--;
     const groupCtx = this.ctx;
-    const {
-      ctx,
-      suspendedCtx
-    } = this.groupStack.pop();
+    const ctx = this.groupStack.pop();
     this.ctx = ctx;
     this.ctx.imageSmoothingEnabled = false;
 
-    if (suspendedCtx) {
-      this.suspendedCtx = suspendedCtx;
-    }
-
     if (group.smask) {
       this.tempSMask = this.smaskStack.pop();
       this.restore();
@@ -7504,7 +7346,7 @@ Object.defineProperty(exports, "__esModule", ({
 exports.TilingPattern = exports.PathType = void 0;
 exports.getShadingPattern = getShadingPattern;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 const PathType = {
   FILL: "Fill",
@@ -7954,6 +7796,7 @@ class TilingPattern {
 
     tmpCtx.translate(-(dimx.scale * adjustedX0), -(dimy.scale * adjustedY0));
     graphics.transform(dimx.scale, 0, 0, dimy.scale, 0, 0);
+    tmpCtx.save();
     this.clipBbox(graphics, adjustedX0, adjustedY0, adjustedX1, adjustedY1);
     graphics.baseTransform = graphics.ctx.mozCurrentTransform.slice();
     graphics.executeOperatorList(operatorList);
@@ -8075,7 +7918,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.MessageHandler = void 0;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 const CallbackKind = {
   UNKNOWN: 0,
@@ -8096,8 +7939,7 @@ const StreamKind = {
 
 function wrapReason(reason) {
   if (!(reason instanceof Error || typeof reason === "object" && reason !== null)) {
-    (0, _util.warn)('wrapReason: Expected "reason" to be a (possibly cloned) Error.');
-    return reason;
+    (0, _util.unreachable)('wrapReason: Expected "reason" to be a (possibly cloned) Error.');
   }
 
   switch (reason.name) {
@@ -8562,7 +8404,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.Metadata = void 0;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 class Metadata {
   #metadataMap;
@@ -8607,7 +8449,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.OptionalContentConfig = void 0;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 class OptionalContentGroup {
   constructor(name, intent) {
@@ -8828,9 +8670,9 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.PDFDataTransportStream = void 0;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
-var _display_utils = __w_pdfjs_require__(1);
+var _display_utils = __w_pdfjs_require__(5);
 
 class PDFDataTransportStream {
   constructor(params, pdfDataRangeTransport) {
@@ -9247,9 +9089,9 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.AnnotationLayer = void 0;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
-var _display_utils = __w_pdfjs_require__(1);
+var _display_utils = __w_pdfjs_require__(5);
 
 var _annotation_storage = __w_pdfjs_require__(9);
 
@@ -9260,6 +9102,13 @@ var _xfa_layer = __w_pdfjs_require__(20);
 const DEFAULT_TAB_INDEX = 1000;
 const GetElementsByNameSet = new WeakSet();
 
+function getRectDims(rect) {
+  return {
+    width: rect[2] - rect[0],
+    height: rect[3] - rect[1]
+  };
+}
+
 class AnnotationElementFactory {
   static create(parameters) {
     const subtype = parameters.data.annotationType;
@@ -9381,8 +9230,10 @@ class AnnotationElement {
           page = this.page,
           viewport = this.viewport;
     const container = document.createElement("section");
-    let width = data.rect[2] - data.rect[0];
-    let height = data.rect[3] - data.rect[1];
+    let {
+      width,
+      height
+    } = getRectDims(data.rect);
     container.setAttribute("data-annotation-id", data.id);
 
     const rect = _util.Util.normalizeRect([data.rect[0], page.view[3] - data.rect[1] + page.view[1], 
data.rect[2], page.view[3] - data.rect[3] + page.view[1]]);
@@ -9911,7 +9762,7 @@ class WidgetAnnotationElement extends AnnotationElement {
           detail: {
             id: this.data.id,
             name: eventName,
-            value: event.target.checked
+            value: valueGetter(event)
           }
         });
       });
@@ -10046,9 +9897,7 @@ class TextWidgetAnnotationElement extends WidgetAnnotationElement {
       const textContent = storedData.valueAsString || storedData.value || "";
       const elementData = {
         userValue: null,
-        formattedValue: null,
-        beforeInputSelectionRange: null,
-        beforeInputValue: null
+        formattedValue: null
       };
 
       if (this.data.multiLine) {
@@ -10084,7 +9933,6 @@ class TextWidgetAnnotationElement extends WidgetAnnotationElement {
         }
 
         event.target.scrollLeft = 0;
-        elementData.beforeInputSelectionRange = null;
       };
 
       if (this.enableScripting && this.hasJSActions) {
@@ -10131,7 +9979,6 @@ class TextWidgetAnnotationElement extends WidgetAnnotationElement {
           this._dispatchEventFromSandbox(actions, jsEvent);
         });
         element.addEventListener("keydown", event => {
-          elementData.beforeInputValue = event.target.value;
           let commitKey = -1;
 
           if (event.key === "Escape") {
@@ -10163,8 +10010,9 @@ class TextWidgetAnnotationElement extends WidgetAnnotationElement {
         const _blurListener = blurListener;
         blurListener = null;
         element.addEventListener("blur", event => {
+          elementData.userValue = event.target.value;
+
           if (this._mouseState.isDown) {
-            elementData.userValue = event.target.value;
             this.linkService.eventBus?.dispatch("dispatcheventinsandbox", {
               source: this,
               detail: {
@@ -10181,38 +10029,29 @@ class TextWidgetAnnotationElement extends WidgetAnnotationElement {
 
           _blurListener(event);
         });
-        element.addEventListener("mousedown", event => {
-          elementData.beforeInputValue = event.target.value;
-          elementData.beforeInputSelectionRange = null;
-        });
-        element.addEventListener("keyup", event => {
-          if (event.target.selectionStart === event.target.selectionEnd) {
-            elementData.beforeInputSelectionRange = null;
-          }
-        });
-        element.addEventListener("select", event => {
-          elementData.beforeInputSelectionRange = [event.target.selectionStart, event.target.selectionEnd];
-        });
 
         if (this.data.actions?.Keystroke) {
-          element.addEventListener("input", event => {
-            let selStart = -1;
-            let selEnd = -1;
-
-            if (elementData.beforeInputSelectionRange) {
-              [selStart, selEnd] = elementData.beforeInputSelectionRange;
-            }
-
+          element.addEventListener("beforeinput", event => {
+            elementData.formattedValue = "";
+            const {
+              data,
+              target
+            } = event;
+            const {
+              value,
+              selectionStart,
+              selectionEnd
+            } = target;
             this.linkService.eventBus?.dispatch("dispatcheventinsandbox", {
               source: this,
               detail: {
                 id,
                 name: "Keystroke",
-                value: elementData.beforeInputValue,
-                change: event.data,
+                value,
+                change: data,
                 willCommit: false,
-                selStart,
-                selEnd
+                selStart: selectionStart,
+                selEnd: selectionEnd
               }
             });
           });
@@ -10920,8 +10759,10 @@ class LineAnnotationElement extends AnnotationElement {
   render() {
     this.container.className = "lineAnnotation";
     const data = this.data;
-    const width = data.rect[2] - data.rect[0];
-    const height = data.rect[3] - data.rect[1];
+    const {
+      width,
+      height
+    } = getRectDims(data.rect);
     const svg = this.svgFactory.create(width, height);
     const line = this.svgFactory.createElement("svg:line");
     line.setAttribute("x1", data.rect[2] - data.lineCoordinates[0]);
@@ -10953,8 +10794,10 @@ class SquareAnnotationElement extends AnnotationElement {
   render() {
     this.container.className = "squareAnnotation";
     const data = this.data;
-    const width = data.rect[2] - data.rect[0];
-    const height = data.rect[3] - data.rect[1];
+    const {
+      width,
+      height
+    } = getRectDims(data.rect);
     const svg = this.svgFactory.create(width, height);
     const borderWidth = data.borderStyle.width;
     const square = this.svgFactory.createElement("svg:rect");
@@ -10987,8 +10830,10 @@ class CircleAnnotationElement extends AnnotationElement {
   render() {
     this.container.className = "circleAnnotation";
     const data = this.data;
-    const width = data.rect[2] - data.rect[0];
-    const height = data.rect[3] - data.rect[1];
+    const {
+      width,
+      height
+    } = getRectDims(data.rect);
     const svg = this.svgFactory.create(width, height);
     const borderWidth = data.borderStyle.width;
     const circle = this.svgFactory.createElement("svg:ellipse");
@@ -11023,8 +10868,10 @@ class PolylineAnnotationElement extends AnnotationElement {
   render() {
     this.container.className = this.containerClassName;
     const data = this.data;
-    const width = data.rect[2] - data.rect[0];
-    const height = data.rect[3] - data.rect[1];
+    const {
+      width,
+      height
+    } = getRectDims(data.rect);
     const svg = this.svgFactory.create(width, height);
     let points = [];
 
@@ -11094,8 +10941,10 @@ class InkAnnotationElement extends AnnotationElement {
   render() {
     this.container.className = this.containerClassName;
     const data = this.data;
-    const width = data.rect[2] - data.rect[0];
-    const height = data.rect[3] - data.rect[1];
+    const {
+      width,
+      height
+    } = getRectDims(data.rect);
     const svg = this.svgFactory.create(width, height);
 
     for (const inkList of data.inkLists) {
@@ -11296,6 +11145,15 @@ class AnnotationLayer {
         continue;
       }
 
+      const {
+        width,
+        height
+      } = getRectDims(data.rect);
+
+      if (width <= 0 || height <= 0) {
+        continue;
+      }
+
       if (data.annotationType === _util.AnnotationType.POPUP) {
         popupAnnotations.push(data);
         continue;
@@ -11511,7 +11369,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.XfaLayer = void 0;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 var _xfa_text = __w_pdfjs_require__(17);
 
@@ -11765,7 +11623,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.renderTextLayer = renderTextLayer;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 const MAX_TEXT_DIVS_TO_RENDER = 100000;
 const DEFAULT_FONT_SIZE = 30;
@@ -12547,11 +12405,11 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.SVGGraphics = void 0;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
-var _display_utils = __w_pdfjs_require__(1);
+var _display_utils = __w_pdfjs_require__(5);
 
-var _is_node = __w_pdfjs_require__(4);
+var _is_node = __w_pdfjs_require__(3);
 
 let SVGGraphics = class {
   constructor() {
@@ -12571,6 +12429,30 @@ exports.SVGGraphics = SVGGraphics;
   const LINE_CAP_STYLES = ["butt", "round", "square"];
   const LINE_JOIN_STYLES = ["miter", "round", "bevel"];
 
+  const createObjectURL = function (data, contentType = "", forceDataSchema = false) {
+    if (URL.createObjectURL && typeof Blob !== "undefined" && !forceDataSchema) {
+      return URL.createObjectURL(new Blob([data], {
+        type: contentType
+      }));
+    }
+
+    const digits = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
+    let buffer = `data:${contentType};base64,`;
+
+    for (let i = 0, ii = data.length; i < ii; i += 3) {
+      const b1 = data[i] & 0xff;
+      const b2 = data[i + 1] & 0xff;
+      const b3 = data[i + 2] & 0xff;
+      const d1 = b1 >> 2,
+            d2 = (b1 & 3) << 4 | b2 >> 4;
+      const d3 = i + 1 < ii ? (b2 & 0xf) << 2 | b3 >> 6 : 64;
+      const d4 = i + 2 < ii ? b3 & 0x3f : 64;
+      buffer += digits[d1] + digits[d2] + digits[d3] + digits[d4];
+    }
+
+    return buffer;
+  };
+
   const convertImgDataToPng = function () {
     const PNG_HEADER = new Uint8Array([0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a]);
     const CHUNK_WRAPPER_SIZE = 12;
@@ -12763,7 +12645,7 @@ exports.SVGGraphics = SVGGraphics;
       writePngChunk("IDATA", idat, data, offset);
       offset += CHUNK_WRAPPER_SIZE + idat.length;
       writePngChunk("IEND", new Uint8Array(0), data, offset);
-      return (0, _util.createObjectURL)(data, "image/png", forceDataSchema);
+      return createObjectURL(data, "image/png", forceDataSchema);
     }
 
     return function convertImgDataToPng(imgData, forceDataSchema, isMask) {
@@ -13278,7 +13160,7 @@ exports.SVGGraphics = SVGGraphics;
         if (glyph === null) {
           x += fontDirection * wordSpacing;
           continue;
-        } else if ((0, _util.isNum)(glyph)) {
+        } else if (typeof glyph === "number") {
           x += spacingDir * glyph * fontSize / 1000;
           continue;
         }
@@ -13401,7 +13283,7 @@ exports.SVGGraphics = SVGGraphics;
         this.defs.appendChild(this.cssStyle);
       }
 
-      const url = (0, _util.createObjectURL)(fontObj.data, fontObj.mimetype, this.forceDataSchema);
+      const url = createObjectURL(fontObj.data, fontObj.mimetype, this.forceDataSchema);
       this.cssStyle.textContent += `@font-face { font-family: "${fontObj.loadedName}";` + ` src: 
url(${url}); }\n`;
     }
 
@@ -14078,7 +13960,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.PDFNodeStream = void 0;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 var _network_utils = __w_pdfjs_require__(24);
 
@@ -14547,11 +14429,11 @@ exports.extractFilenameFromHeader = extractFilenameFromHeader;
 exports.validateRangeRequestCapabilities = validateRangeRequestCapabilities;
 exports.validateResponseStatus = validateResponseStatus;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 var _content_disposition = __w_pdfjs_require__(25);
 
-var _display_utils = __w_pdfjs_require__(1);
+var _display_utils = __w_pdfjs_require__(5);
 
 function validateRangeRequestCapabilities({
   getResponseHeader,
@@ -14637,7 +14519,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.getFilenameFromContentDispositionHeader = getFilenameFromContentDispositionHeader;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 function getFilenameFromContentDispositionHeader(contentDisposition) {
   let needsEncodingFixup = true;
@@ -14685,14 +14567,7 @@ function getFilenameFromContentDispositionHeader(contentDisposition) {
         const buffer = (0, _util.stringToBytes)(value);
         value = decoder.decode(buffer);
         needsEncodingFixup = false;
-      } catch (e) {
-        if (/^utf-?8$/i.test(encoding)) {
-          try {
-            value = decodeURIComponent(escape(value));
-            needsEncodingFixup = false;
-          } catch (err) {}
-        }
-      }
+      } catch (e) {}
     }
 
     return value;
@@ -14824,7 +14699,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.PDFNetworkStream = void 0;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 var _network_utils = __w_pdfjs_require__(24);
 
@@ -15365,7 +15240,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.PDFFetchStream = void 0;
 
-var _util = __w_pdfjs_require__(2);
+var _util = __w_pdfjs_require__(1);
 
 var _network_utils = __w_pdfjs_require__(24);
 
@@ -15706,12 +15581,6 @@ Object.defineProperty(exports, "InvalidPDFException", ({
     return _util.InvalidPDFException;
   }
 }));
-Object.defineProperty(exports, "LinkTarget", ({
-  enumerable: true,
-  get: function () {
-    return _display_utils.LinkTarget;
-  }
-}));
 Object.defineProperty(exports, "LoopbackPort", ({
   enumerable: true,
   get: function () {
@@ -15808,24 +15677,12 @@ Object.defineProperty(exports, "XfaLayer", ({
     return _xfa_layer.XfaLayer;
   }
 }));
-Object.defineProperty(exports, "addLinkAttributes", ({
-  enumerable: true,
-  get: function () {
-    return _display_utils.addLinkAttributes;
-  }
-}));
 Object.defineProperty(exports, "build", ({
   enumerable: true,
   get: function () {
     return _api.build;
   }
 }));
-Object.defineProperty(exports, "createObjectURL", ({
-  enumerable: true,
-  get: function () {
-    return _util.createObjectURL;
-  }
-}));
 Object.defineProperty(exports, "createPromiseCapability", ({
   enumerable: true,
   get: function () {
@@ -15874,12 +15731,6 @@ Object.defineProperty(exports, "loadScript", ({
     return _display_utils.loadScript;
   }
 }));
-Object.defineProperty(exports, "removeNullCharacters", ({
-  enumerable: true,
-  get: function () {
-    return _util.removeNullCharacters;
-  }
-}));
 Object.defineProperty(exports, "renderTextLayer", ({
   enumerable: true,
   get: function () {
@@ -15899,17 +15750,17 @@ Object.defineProperty(exports, "version", ({
   }
 }));
 
-var _display_utils = __w_pdfjs_require__(1);
+var _util = __w_pdfjs_require__(1);
 
-var _util = __w_pdfjs_require__(2);
+var _api = __w_pdfjs_require__(4);
 
-var _api = __w_pdfjs_require__(6);
+var _display_utils = __w_pdfjs_require__(5);
 
 var _annotation_layer = __w_pdfjs_require__(18);
 
 var _worker_options = __w_pdfjs_require__(12);
 
-var _is_node = __w_pdfjs_require__(4);
+var _is_node = __w_pdfjs_require__(3);
 
 var _text_layer = __w_pdfjs_require__(21);
 
@@ -15917,8 +15768,8 @@ var _svg = __w_pdfjs_require__(22);
 
 var _xfa_layer = __w_pdfjs_require__(20);
 
-const pdfjsVersion = '2.12.313';
-const pdfjsBuild = 'a2ae56f39';
+const pdfjsVersion = '2.13.216';
+const pdfjsBuild = '399a0ec60';
 {
   if (_is_node.isNodeJS) {
     const {
diff --git a/third-party/pdfjs/build/pdf.sandbox.js b/third-party/pdfjs/build/pdf.sandbox.js
index 283e3e537..46049b60f 100644
--- a/third-party/pdfjs/build/pdf.sandbox.js
+++ b/third-party/pdfjs/build/pdf.sandbox.js
@@ -2,7 +2,7 @@
  * @licstart The following is the entire license notice for the
  * Javascript code in this page
  *
- * Copyright 2021 Mozilla Foundation
+ * Copyright 2022 Mozilla Foundation
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -37,7 +37,7 @@ return /******/ (() => { // webpackBootstrap
 /* 1 */
 /***/ ((__unused_webpack_module, exports) => {
 
-Object.defineProperty(exports, "__esModule", ({value:true}));exports["default"]=void 0;var 
Module=function(){var _scriptDir=typeof 
document!=='undefined'&&document.currentScript?document.currentScript.src:undefined;return 
function(Module){Module=Module||{};var b;b||(b=typeof Module!=='undefined'?Module:{});var h,n;b.ready=new 
Promise(function(a,c){h=a;n=c;});var q={},r;for(r in b)b.hasOwnProperty(r)&&(q[r]=b[r]);var 
t="";"undefined"!==typeof 
document&&document.currentScript&&(t=document.currentScript.src);_scriptDir&&(t=_scriptDir);0!==t.indexOf("blob:")?t=t.substr(0,t.lastIndexOf("/")+1):t="";var
 aa=b.print||console.log.bind(console),u=b.printErr||console.warn.bind(console);for(r in 
q)q.hasOwnProperty(r)&&(b[r]=q[r]);q=null;var v;b.wasmBinary&&(v=b.wasmBinary);var 
noExitRuntime=b.noExitRuntime||!0;"object"!==typeof WebAssembly&&w("no native wasm support detected");var 
x,z=!1;function A(a){var c=b["_"+a];c||w("Assertion failed: Cannot call unknown function "+(a+", make sure it 
is ex
 ported"));return c;}function B(a,c,d,e){var f={string:function(l){var p=0;if(null!==l&&void 
0!==l&&0!==l){var U=(l.length<<2)+1;p=C(U);D(l,E,p,U);}return p;},array:function(l){var 
p=C(l.length);F.set(l,p);return p;}},g=A(a),k=[];a=0;if(e)for(var m=0;m<e.length;m++){var 
y=f[d[m]];y?(0===a&&(a=G()),k[m]=y(e[m])):k[m]=e[m];}d=g.apply(null,k);d=function(l){return"string"===c?H(l):"boolean"===c?!!l:l;}(d);0!==a&&I(a);return
 d;}var J="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;function K(a,c,d){var 
e=c+d;for(d=c;a[d]&&!(d>=e);)++d;if(16<d-c&&a.subarray&&J)return J.decode(a.subarray(c,d));for(e="";c<d;){var 
f=a[c++];if(f&128){var g=a[c++]&63;if(192==(f&224))e+=String.fromCharCode((f&31)<<6|g);else{var 
k=a[c++]&63;f=224==(f&240)?(f&15)<<12|g<<6|k:(f&7)<<18|g<<12|k<<6|a[c++]&63;65536>f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023));}}else
 e+=String.fromCharCode(f);}return e;}function H(a){return a?K(E,a,void 0):"";}function D(a,c,d,e
 ){if(0<e){e=d+e-1;for(var f=0;f<a.length;++f){var g=a.charCodeAt(f);if(55296<=g&&57343>=g){var 
k=a.charCodeAt(++f);g=65536+((g&1023)<<10)|k&1023;}if(127>=g){if(d>=e)break;c[d++]=g;}else{if(2047>=g){if(d+1>=e)break;c[d++]=192|g>>6;}else{if(65535>=g){if(d+2>=e)break;c[d++]=224|g>>12;}else{if(d+3>=e)break;c[d++]=240|g>>18;c[d++]=128|g>>12&63;}c[d++]=128|g>>6&63;}c[d++]=128|g&63;}}c[d]=0;}}function
 L(a){for(var c=0,d=0;d<a.length;++d){var 
e=a.charCodeAt(d);55296<=e&&57343>=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++d)&1023);127>=e?++c:c=2047>=e?c+2:65535>=e?c+3:c+4;}return
 c;}function ba(a){var c=L(a)+1,d=M(c);d&&D(a,F,d,c);return d;}var ca,F,E,N;function da(){var 
a=x.buffer;ca=a;b.HEAP8=F=new Int8Array(a);b.HEAP16=new Int16Array(a);b.HEAP32=N=new 
Int32Array(a);b.HEAPU8=E=new Uint8Array(a);b.HEAPU16=new Uint16Array(a);b.HEAPU32=new 
Uint32Array(a);b.HEAPF32=new Float32Array(a);b.HEAPF64=new Float64Array(a);}var 
O,ea=[],fa=[],ha=[],ia=[];function ja(){var a=b.preRun.shift();ea.unshift(a);}
 var P=0,Q=null,R=null;b.preloadedImages={};b.preloadedAudios={};function 
w(a){if(b.onAbort)b.onAbort(a);u(a);z=!0;a=new WebAssembly.RuntimeError("abort("+a+"). Build with -s 
ASSERTIONS=1 for more info.");n(a);throw a;}function S(a){return 
String.prototype.startsWith?a.startsWith("data:application/octet-stream;base64,"):0===a.indexOf("data:application/octet-stream;base64,");}var
 
T="data:application/octet-stream;base64,AGFzbQEAAAABxQZsYAR/fn9/AX5gA39/fwF/YAJ/fwF/YAJ/fwBgAX8Bf2AFf35/f38BfmADf39/AGABfAF8YAF/AGACf34BfmACf34AYAR/f39/AX9gAn9/AX5gAn9+AX9gA39/fgF/YAN/fn8BfmABfgF/YAN/fn8AYAZ/fn9/f38BfmADf35/AX9gBX9/f39/AX9gBn9+fn9/fwF+YAN/fn4BfmAEf39+fwF/YAN/f38BfmAEf39/fwBgBn9/f39/fwF/YAR/f39/AX5gA39+fgF/YAF/AX5gBX9+fn5+AGABfgF+YAJ8fAF8YAABf2AFf35/fn8Bf2AHf35/fn5+fwF/YAV/fn5/fwF+YAAAYAV/f39/fwBgA39+fgBgBH9+fn8AYAd/f39/f39/AX9gBn9+f35+fwF/YAV/fn5+fwF/YAV/fn5/fwBgAn5/AGAJf39/f39/f39/AX9gBH9+f38Bf2AEf35+fwF/YAJ+fwF/YAZ/f39/f38BfmAHf35/f39/fwF+YAR/fn9+AX5gBH9+fn8BfmAHf39/f39/fwBgA39/fgBgBH9/fn8A
 
YAR/fn9/AGAIf39/f39/f38Bf2AEf39/fgF/YAR/fn9+AX9gBH9+fn4Bf2AGf3x/f39/AX9gA35/fwF/YAR/fn5+AX5gAn5+AX5gAnx/AXxgA3x8fwF8YAZ/f39/f38AYAN/f3wAYAV/fn9/fwBgBH9+f34AYAJ/fABgB3x/f39/f38AYAp/f39/f39/f39/AX9gB39/f35+fn8Bf2AFf39+f38Bf2AEf39+fgF/YAV/f35+fwF/YAZ/f35+f38Bf2AGf39+fn5+AX9gBX9+f39/AX9gBn9+f39/fwF/YAV/fn5+fgF/YAZ/fn5+fn8Bf2AEf3x/fwF/YAN+fn4Bf2AEfn5+fgF/YAJ8fwF/YAJ8fAF/YAABfmABfAF+YAV/f39/fwF+YAd/f39/f39+AX5gBX9/f39+AX5gBH9/f34BfmADf39+AX5gBH9/fn8BfmAFf39+fn4BfmAFf35/fn8BfmAHf35+fn9/fwF+YAh/fn5+fn9+fgF+YAN/fnwBfmAFf3x/f38BfmABfwF8YAF+AXxgAn9/AXxgAn5+AXwCPQoBYQFhABkBYQFiACUBYQFjAAIBYQFkAAsBYQFlAAQBYQFmAAMBYQFnAAEBYQFoAAIBYQFpAAgBYQFqABkD2AjWCAoQAx8DBBADYwYGWwMCAyIDAQMDNwMQESQBOQoQBAgJAQkNAgICAwweBgQkAx0DDQ0CBh0JMQ4GAQQIBAgOPGkCAQMDHQgPAgkLEAsBCxwOBAMEAwwBBAkWTAYGBg0TAwIDDz0IAQgMKCYBIwETDwQeAgEUUAQLAwQQFwYBAQIwLQINDRA9FB0KBAIIDQQEExsQIgkWDS0MBi4EAQhECwMrNQ4EABMCEAELJ0gGDQECOgQGYQINDw4ODg4GCAJCMgYCAidHXhQTNhoIBBQBFgIOEwQvMAErA2QBAjIBAgYIASI2AggIAgQWAwQPEAQNAwQJARkYBFcBLAIGA0oCBBQpXQUNPwMOA
 
wEOHAI8Ig0JATACAQMIBAQDMQcEBBoCCAYmCRYGFAEEAgYBBAMBDgUvA0kCAgQMYFwFRgEWGQhnKxcPAxQGBgIBAgEYKAsHIEMHAgILAQQCBAIGDQAyBBgbCwECCwYLAQQDBAEEAQIDAUE4Dh8AVA8ZBANVBAwIAxYDag0kDBgaD1IGBAEBBiQFDwMNAwsCAk4BAgIMMRA5CwMBCC0HBwIEBAIEAQEGCwQBBDoCBgMJFAEDAAIDAQsCLgEIAQICAhQNAQsCCwsCGR8QUTcDEwMQBAQTAgQWDggaGRQDAgYRA09TNRgQGgcJTWIAQBsCHR0NFgECDSonCw4VAA4/CwMEAgEESxcJDRAEGAkDBg8XAgIDAgMBHl8IBikUBAdYBwIlAgICGQQIBAsEAgECBAECKSkCAVkADw8BAQ0JBAEAAGUfCQUABSIcGgAaAQMEAy4UAQMCAgECCgEQAwIEAQIBCAIMFAQEBAEBH0EFZi84JQMJAwMKBgYBDjQJCwgMAAMfAQYVCRAcIAUMEAgDDwULGQECCBEMBQBaDgMDAygFBQUmAhszDAICJAIBBAICAwYBAggrHBMMF0ADDg4GCQsCAQ0OFyEMCBwcJgEQAwQYARgEAQICAgEDAAUEBggEJx4gAwJrHlZoHSgeBAEZBEICBEMgRQcAAwQaAgAzAAAGBgYGBgYGBgYGBQUAAAEMAAEMAQwBDAEMAQwBDAEMBQUBAAAAJQAABQAACQUAAA8JAAUPEgAACQAAAAAAAAAAAAAAAAcAAAcHBRIFBQAAAAUFBQAAAAAABQUFBQAAAAAAAAAAAAAAAAAABQAAAAAAAAAABQUFAAAAAAMABQAFAQAAAAAFAAAFAAUFAAkJAAAAAAUFFgkAAAAAAAAAAAUAAAAFBQAAAAUABQAAAgAAAAAAAAUAAAASBRIFAAASBRISEgAAABgRChEKCgoRChISBQUPBQUFBQUSACo0EyMTOxcRCgAAEgkAAAAAAA
 
AAAA8JCQAjExcTEhgjARsbGwEDEQoRCgoKEQoRCgoKEQoRChEKEQoKEQoRCgYYFRUVFQEDAwMVFRUVAAQIIQ8BBwcAACEhIQEPAAM+BQEHBwcHBwcHByAHBwcHBwcHBxUHAwQHAXAB9wL3AgUHAQGAAoCAAgYJAX8BQfCzxAILB08QAWsCAAFsALMEAW0A3wgBbgCCBQFvAL0HAXAAiwcBcQC2BgFyAKECAXMA6QEBdAEAAXUAxAgBdgDDCAF3AMIIAXgAuwgBeQC6CAF6ALkICfMFAQBBAQv2ApUErwiuCK0IrAizCLIIsQjAB9wErQeTB4UH6wbmAr8GtQbIBKEGkAaPBo4GjQbdCIgGygjHCMEIwAjsBbgItwi2CLUItAjrBYQEqwiwCIkImwWICOYB3wfWB6oIiwiRBekH0gfRB9AHzgfKB8gHkAeyBqkIqAinCKYIpQinBaQIowiiCKEIoAifCJ4InQicCJsImgiZCJgIlwiWCPEDlQjxA5QIkwiSCJEIigiGCIUIhAiHCKUFkAiPCPMH8gfxB/AH7wfuB+0H7AfrB94H3QfcB/ED2wenBdoH2QfYB9cHjgiNCIwIgwiCCIEIgAj/B/4H/Qf8B/sH+gf5B/gH9wf2B/UH9AfqB+gH5wfmB+UH5AfjB+IH4QfgB9UH1AfTB4wCzwfNB8wHywfJB8cHqQXGB8UHxAfDB/4EwgfBB78HqgW+B7wHuwe6B7kHuAe3B7YHtQeyBbQHswfYBLIHsQewB9YErweuB6wH1wSrB6oHqQeoB6cHpgelB6QHoweiB5oDoQegB58HngedB5wHmweaB5kHmAeXB5YH/QOVB5QHsQWzBZIHkQePB44HjQeMB4oHiQeIB4cH0gTRBIYHhAeDB4IHgQeAB/8G/gb9BvwG+wb6BvkG+Ab3BvYG9Qb0BvMG8gbxBvAG7wbuBu0G7AbqBukG6AbnBuYG5QbkBuMG4gbhBuAG3wbeBt0G3AbbBto
 
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
 
CNgIMIAMoAgQiA0F/RgRAIAAgBDYCFAwJCyADIARGDQgMCQsgBCAFai8AACEEIAggA0EIaiICNgIMIAMoAgQiA0F/RgRAIAAgBDYCFAwICyADIARGDQcMCAsgACAEIAVqKAAANgIYDAYLIAAgBCAFaiIDKAAANgIYIAAgAy8ABDYCHAwFCyAAIAQgBWooAAA2AiAMBAsgACAEIAVqIgMoAAA2AiAgACADLQAENgIcDAMLIAAgBCAFaiIDKAAANgIgIAAgAy8ABDYCHAwCCyAAIAQgBWoiAygAADYCICAAIAMoAAQ2AhggACADLQAINgIcDAELCyAAIAk2AgwgACABNgIIQQEhDQsgCEEQaiQAIA0LCwAgACABQQAQoAQLvwEDAn8BfgF8QX8hAgJAAkACQAJAAkACQCABQiCIpyIDQQdqDg4CBAQEBAQDAAEBAQQEBQQLIAGnQQBHDwsgAacPCyABpykCBCEEIAAgARAKIARC/////weDQgBSDwsgAactAAUhAiAAIAEQCiACQX9zQYABcUEHdg8LIANBC2pBEk8EQCABEEkiBb1C////////////AINCgYCAgICAgPj/AFQgBUQAAAAAAAAAAGJxDwsgACABEApBASECCyACCxkAIAAoAhAgARDnASIBRQRAIAAQxgELIAELPwEBfyMAQRBrIgIkAAJ/IAEgACgCEEcEQCACIAE2AgAgAEH91gAgAhATQX8MAQsgABAPCyEAIAJBEGokACAACyEAIAAoAgRBf0wEQCAAIAFBAXRqLwEQDwsgACABai0AEAsoAQF/IwBBEGsiAiQAIAIgATsBDiAAIAJBDmpBAhCHARogAkEQaiQACwsAIAAgAUEBEOMFC5oLAgV/D34jAEHgAGsiBSQAIAJCIIYgAUIgiIQhDyAEQi+GIANCEYiEIQwgBEL///////8/gyINQg+GIANCMYiEIRAgAiAEhUKAgICAgICAgIB/gyEKIAJC////
 
////P4MiC0IgiCERIA1CEYghEiAEQjCIp0H//wFxIQcCQAJ/IAJCMIinQf//AXEiCUEBa0H9/wFNBEBBACAHQQFrQf7/AUkNARoLIAFQIAJC////////////AIMiDkKAgICAgIDA//8AVCAOQoCAgICAgMD//wBRG0UEQCACQoCAgICAgCCEIQoMAgsgA1AgBEL///////////8AgyICQoCAgICAgMD//wBUIAJCgICAgICAwP//AFEbRQRAIARCgICAgICAIIQhCiADIQEMAgsgASAOQoCAgICAgMD//wCFhFAEQCACIAOEUARAQoCAgICAgOD//wAhCkIAIQEMAwsgCkKAgICAgIDA//8AhCEKQgAhAQwCCyADIAJCgICAgICAwP//AIWEUARAIAEgDoQhAkIAIQEgAlAEQEKAgICAgIDg//8AIQoMAwsgCkKAgICAgIDA//8AhCEKDAILIAEgDoRQBEBCACEBDAILIAIgA4RQBEBCACEBDAILIA5C////////P1gEQCAFQdAAaiABIAsgASALIAtQIgYbeSAGQQZ0rXynIgZBD2sQciAFKQNYIgtCIIYgBSkDUCIBQiCIhCEPIAtCIIghEUEQIAZrIQYLIAYgAkL///////8/Vg0AGiAFQUBrIAMgDSADIA0gDVAiCBt5IAhBBnStfKciCEEPaxByIAUpA0giAkIPhiAFKQNAIgNCMYiEIRAgAkIvhiADQhGIhCEMIAJCEYghEiAGIAhrQRBqCyEGIAxC/////w+DIgIgAUL/////D4MiAX4iEyADQg+GQoCA/v8PgyIDIA9C/////w+DIg5+fCIEQiCGIg0gASADfnwiDCANVK0gAiAOfiIVIAMgC0L/////D4MiC358IhQgEEL/////D4MiDSABfnwiECAEIBNUrUIghiAEQiCIhHwiEyACIAt+IhYgAyARQoCABIQiD358IgMgDSAOfnwiESABIBJC/////weDQoCAg
 
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
 
CADKAIMIQUgAUGAATYCCCABIAFBEGo2AgwgAUEQaiEGAn8DQCABKAIIQQZrIQgCQANAIAQgBmogAjoAACAEQQFqIQQgBSwAACICQQBIDQEgAkH/AXEiAkEDdkEccUHg3wFqKAIAIAJ2QQFxRQ0BIAVBAWohBSAEIAhJDQALQQAgACgCACABQQxqIAFBCGogAUEQahCOBQ0CGiABKAIMIQYMAQsLIAAoAgAgBiAEEKwDCyECIAEoAgwiBCABQRBqRwRAIAAoAgAgBBAYCyADIAU2AgwgAUGQAWokACACRQ0CIABBg382AhAgAEIANwIkIAAgAjYCIAsgACADKAIMNgI4QQAMAwsgAUECaiEBA0AgAyABNgIMA0ACQAJAIAEtAAAiAgRAIAJBCmsOBAYBAQYBCyABIAAoAjxPDQUMAQsgAkEYdEEYdUF/Sg0AIAFBBiADQQxqEF8iAkF+cUGowABGBEAgAygCDCEBDAULIAMoAgwhASACQX9HDQELCyABQQFqIQEMAAsACwsgB0GofzYCAEF/CyEAIANBEGokACAACxEAIAAgASABIAIgA0ECEIwEC6wBAgJ/An4CfyACRQRAQoCAgIAwIQZBAAwBCyAAKAIQIgMpA4ABIQYgA0KAgICAIDcDgAFBfwshA0F/IQQCQCAAIAFBBiABQQAQEiIFEAsNAAJAIAUQEA0AIAUQJg0AIAAgBSABQQBBABA1IQECfyADIAINABpBfyABEAsNABogAyABECANABogABAoQX8LIQQgACABEAoMAQsgAyEECyACBEAgACAGEJIBCyAECwwAIAAgASAAIAFIGwsdACAAQoCAgIBwWgR/IACnLQAFQQR2QQFxBUEACwuuAQEBfyMAQRBrIgMkAAJAAkAgAhBcBEAgASACEHk2AgBBASECDAELIAAoAhAiACgCLCACTQ0BAn8CQCAAKAI4IAJBAnRqKAIAIgApAgRCgICAgICAgIBAg0KAgICAgI
 
CAgMAAUg0AIANBDGogABDoBUUNAEEBIAMoAgwiAEF/Rw0BGgtBACEAQQALIQIgASAANgIACyADQRBqJAAgAg8LQcovQaENQb8YQcI/EAAAC0UAIAAoAhAgASACEOYBIgEgAkVyRQRAIAAQxgEgAQ8LIAMEQCADQQAgACgCECABEKMEIgAgAmsiAiAAIAJJGzYCAAsgAQtpAQN+IAAgAkIgiCIDIAFCIIgiBH4gAkL/////D4MiAiABQv////8PgyIBfiIFQiCIIAIgBH58IgJCIIh8IAEgA34gAkL/////D4N8IgFCIIh8NwMIIAAgBUL/////D4MgAUIghoQ3AwAL+QECA34CfyMAQRBrIgUkAAJ+IAG9IgNC////////////AIMiAkKAgICAgICACH1C/////////+//AFgEQCACQjyGIQQgAkIEiEKAgICAgICAgDx8DAELIAJCgICAgICAgPj/AFoEQCADQjyGIQQgA0IEiEKAgICAgIDA//8AhAwBCyACUARAQgAMAQsgBSACQgAgA6dnQSBqIAJCIIinZyACQoCAgIAQVBsiBkExahByIAUpAwAhBCAFKQMIQoCAgICAgMAAhUGM+AAgBmutQjCGhAshAiAAIAQ3AwAgACACIANCgICAgICAgICAf4OENwMIIAVBEGokAAsqAQF/IwBBEGsiAyQAIAMgAjYCDCAAIAEgAkHuAkEAEK0EGiADQRBqJAALDQAgAEEAIAFBABChBAsbACAAIAFB/wFxEA4gACgCBCEBIAAgAhAcIAELlwwBB38jAEEgayICJAACQAJAAkACQAJAAn8gACgCECIDQYN/RwRAQQAgA0FXRw0BGiAAKAJAIgMtAGxBAXFFBEAgAEHjhgFBABATDAMLIAMoAmRFBEAgAEH+hgFBABATDAMLQX8hBSAAEA8NBQJ/AkACQAJAIAAoAhAiA0Epaw4EAgEBAgALIANB3QBGIANBOmtBAklyIANB/QB
 
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
 
CQRBqIAEQhgEFQcE8CzYCACAAQas8IAIQzwIgAkHQAGokAAvIogEDIH8FfgJ8IwBB4ABrIgchECAHJAAgACgCECEXQoCAgIDgACEoAkAgABB/DQACfwJ/AkACQAJAAkACQCABQv////9vWARAIAZBBHFFDQEgAaciCCIKKAI8IQcgCCgCGCIZKAIkIRMgGSgCICIRKAIwIQYgES8BKiEJIApBADYCPCAIIBcoAowBNgIQIAgoAiAhFSAIKAIwIQwgCCgCJCESIBcgCEEQaiIUNgKMASAVIRggDCEKIBIgCUEDdGoiGyAIKAIMRQ0GGgwECyABpyIZLwEGIghBDUYNAiAXKAJEIAhBGGxqKAIQIgcNAQsgAEGPxABBABAUDAYLIAAgASACIAQgBSAGIAcRFQAhKAwFCyAZKAIgIhEvAS4hDCARLwEqIRUgES8BKCEIIBAgES0AEDYCWCAQIAE3AzggECAENgJUIBBByABqEG4gGSgCJCETIAcgCEEAIAZBAXZBAXEgBCAISHIbIgYgDCAVampBA3RBD2pB8P//AXFrIhgkACAFIRUgBkUNASAEIBEvASgQsAEiB0EAIAdBAEobIQcDQCAHIBJGBEAgByARLwEoIgggByAISxshDANAIAcgDEcEQCAYIAdBA3RqQoCAgIAwNwMAIAdBAWohBwwBCwsgECAINgJUIBghFQwDBSAYIBJBA3QiCGogBSAIaikDABANNwMAIBJBAWohEgwBCwALAAtBAQwCCyAQIBU2AkAgECAYIAZBA3RqIhI2AkQgES8BKiEIQQAhBwNAIAcgCEcEQCASIAdBA3RqQoCAgIAwNwMAIAdBAWohBwwBCwsgESgCFCEMIBAgFygCjAE2AjAgFyAQQTBqNgKMASARKAIwIQYgEEEwaiEUIBIgCEEDdGoiBwshG0EACyEIA0ACQAJAAkACQCAIRQRAIBJBCGohHCASQRBqIR0gEkEYaiEeIBVBCGohHyAV
 
QRBqISAgFUEYaiEhIBtBGGohIyACQiCIpyIkQX5xISUgEEEwaiEmIBBBIGohIiAHIQgCQANAAkAgDEEBaiEKQgAhKEKAgICAMCEBAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAwtAAAiDkEBaw7zAdQBACQIkQEJCgsMDQ4PEBESExQXFRYYGRobICEiIxwfHR4oJiYpKSor2AHjASwtLi/XATAxMjM0NTY3ODg5OTqeAaEBPDs9jgGPAZABkgGTAZQBnAGdAaABnwGiAZUBlgGXAZgBmQGjAaQBpQGaAZoBmwGbAT4/QEFCQ2tsbXFyc3Rub3B1fHt4f4ABgQHIAckBygHLAcsBywHLAcsBywF2dnZ3ggGEAYYBgwGFAYgBhwGJAYoBiwGMAdcB1QHWAdYB4gGuAa0BsAGvAbEBsQGzAbIBpwG0A
 
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
 
wwBCwsgACABKQPAASACECEgACABKQPIASACECEgACABKQOwASACECEgACABKQO4ASACECEgACABKQOoASACECFBACEDA0AgA0EIRgRAQQAhAwNAIAAoAkAgA0oEQCAAIAEoAiggA0EDdGopAwAgAhAhIANBAWohAwwBCwsgACABKQOYASACECEgACABKQOgASACECEgACABKQNQIAIQISAAIAEpA0AgAhAhIAAgASkDSCACECEgACABKQM4IAIQISAAIAEpAzAgAhAhIAEoAiQiAQRAIAAgASACEQMACwUgACABIANBA3RqKQNYIAIQISADQQFqIQMMAQsLCw8LQbM5QaENQY4sQcg5EAAAC4kCAgF+An8jAEEwayIEJABBoRkhBUKAgICA4AAhAwJAAkACQAJAAkACQAJAAkACQAJAAkACQCABEFRBCGoOEAUGCQkJCQoEAAECAwkJCwgJCyAEIAE+AgAgBEEQakEgQZ4ZIAQQVRogBEEQaiEFDAkLIABBA0ECIAGnGxAxIQMMCQsgAEEBEDEhAwwICyAAQcUAEDEhAwwHCyAAIAFBABCbAyIBEAsEQCABIQMMBwsgACABIAIQoAQhAyAAIAEQCgwGCyACRQ0BCyABEA0hAwwECyAAQbUZQQAQFAwDCyAAIAEQSUEKQQBBABDJAiEDDAILQdUZIQULIAAgBRBxIQMLIARBMGokACADC6YEAQl/AkACQAJAIAJCgICAgHCDQoCAgICQf1IEQCAAIAIQKyICEAtFDQEMAgsgAhANIQILIAKnIgooAgQiBUH/////B3EhBgJAIAVBAE4EQCAKQRBqIQVBACEDA0AgBCAGRkUEQCADIAQgBWotAABBB3ZqIQMgBEEBaiEEDAELCyADRQRAIAFFDQQgASAGNgIAIAUPCyAAIAMgBmpBABD8ASIHRQ0CQQAhAyAHQRBqIgshBANAIAMgBkYNAgJ/IAMgBWosAAAiCEEATgRAIAQgCD
 
oAACAEQQFqDAELIAQgCEE/cUGAAXI6AAEgBCAIQcABcUEGdkHAAXI6AAAgBEECagshBCADQQFqIQMMAAsACyAAIAZBA2xBABD8ASIHRQ0BQQAhBSAHQRBqIgshBANAIAUiCCAGTg0BIAhBAWohBSAKIAhBAXRqLwEQIglB/wBNBEAgBCAJOgAAIARBAWohBAUCQCADIAUgBk5yIAlBgPgDcUGAsANHcg0AIAogBUEBdGovARAiDEGA+ANxQYC4A0cNACAJQQp0QYD4P3EgDEH/B3FyQYCABGohCSAIQQJqIQULIAQgCRDjAiAEaiEECwwACwALIARBADoAACAHIAQgB2tBEGtB/////wdxrSAHKQIEQoCAgIB4g4Q3AgQgACACEAogAQRAIAEgBygCBEH/////B3E2AgALIAsPCyABRQRAQQAPC0EAIQUgAUEANgIACyAFCyUCAX8BfiAAIAEQMSIDEAtFBEAgACADELcBIQIgACADEAoLIAILDAAgASAAKAIMEQQACz0BAX8gASABKAIAIgJBAWs2AgAgAkEBTARAIAEpAgRCgICAgICAgIDAAFoEQCAAIAEQqwMPCyAAIAEQHwsLVQECfyMAQRBrIgIkACAAKAIQIQACfwJAIAJBDGogARDoBUUNACACKAIMIgNBAEgNACAAIAEQpAQgAxCTAQwBCyAAIAFBARDUAgshASACQRBqJAAgAQtcAQN/IABB4AFqIQQgACgC5AEhAwNAIAQgAyICRwRAIAIoAgQhAwJAAkACQCABDgMCAAEECyACLABMDQMMAQsgAikCTEIghkI4h6cNAgsgACACQQhrEOoFDAELCwu8AQEDfwJAIAEgAigCECIDBH8gAwVBACEDIAIQ8AUNASACKAIQCyACKAIUIgVrSwRAIAIgACABIAIoAiQRAQAPCwJ/IAIsAEtBf0oEQCABIQMDQCABIAMiBEUNAhogACAEQQFrIgNqLQAAQQpHDQALIAI
 
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
 
EQjCIp0H//wFxIgetQjCGhCIJEIACQQBMBEAgASAKIAMgCRCAAgRAIAEhBAwCCyAFQfAAaiABIAJCAEIAEDIgBSkDeCECIAUpA3AhBAwBCyAGBH4gAQUgBUHgAGogASAKQgBCgICAgICAwLvAABAyIAUpA2giCkIwiKdB+ABrIQYgBSkDYAshBCAHRQRAIAVB0ABqIAMgCUIAQoCAgICAgMC7wAAQMiAFKQNYIglCMIinQfgAayEHIAUpA1AhAwsgCUL///////8/g0KAgICAgIDAAIQhCSAKQv///////z+DQoCAgICAgMAAhCEKIAYgB0oEQANAAn4gCiAJfSADIARWrX0iC0IAWQRAIAsgBCADfSIEhFAEQCAFQSBqIAEgAkIAQgAQMiAFKQMoIQIgBSkDICEEDAULIAtCAYYgBEI/iIQMAQsgCkIBhiAEQj+IhAshCiAEQgGGIQQgBkEBayIGIAdKDQALIAchBgsCQCAKIAl9IAMgBFatfSIJQgBTBEAgCiEJDAELIAkgBCADfSIEhEIAUg0AIAVBMGogASACQgBCABAyIAUpAzghAiAFKQMwIQQMAQsgCUL///////8/WARAA0AgBEI/iCEBIAZBAWshBiAEQgGGIQQgASAJQgGGhCIJQoCAgICAgMAAVA0ACwsgCEGAgAJxIQcgBkEATARAIAVBQGsgBCAJQv///////z+DIAZB+ABqIAdyrUIwhoRCAEKAgICAgIDAwz8QMiAFKQNIIQIgBSkDQCEEDAELIAlC////////P4MgBiAHcq1CMIaEIQILIAAgBDcDACAAIAI3AwggBUGAAWokAAuhBAIEfgJ/AkAgAb0iBEIBhiIDUCAEQv///////////wCDQoCAgICAgID4/wBWckUEQCAAvSIFQjSIp0H/D3EiBkH/D0cNAQsgACABoiIAIACjDwsCfgJAIAMgBUIBhiICVARAIARCNIinQf8PcSEHIAZFBEAgBUIM
 
hiICQgBTBEBBACEGDAMLQX8hBgNAIAJCAYYiAkIAUw0DIAZBAWshBgwACwALIAVC/////////weDQoCAgICAgIAIhAwCCyAARAAAAAAAAAAAoiAAIAIgA1EbDwsgBUEBIAZrrYYLIQICfgJAIAdFBEAgBEIMhiIDQgBTBEBBACEHDAILQX8hBwNAIANCAYYiA0IAUw0CIAdBAWshBwwACwALIARC/////////weDQoCAgICAgIAIhAwBCyAEQQEgB2uthgshBCAGIAdKBEADQAJAIAIgBH0iA0IAUw0AIAMiAkIAUg0AIABEAAAAAAAAAACiDwsgAkIBhiECIAZBAWsiBiAHSg0ACyAHIQYLAkAgAiAEfSIDQgBTDQAgAyICQgBSDQAgAEQAAAAAAAAAAKIPCwJAIAJC/////////wdWBEAgAiEDDAELA0AgBkEBayEGIAJCgICAgICAgARUIQcgAkIBhiIDIQIgBw0ACwsgBUKAgICAgICAgIB/gyECIAZBAU4EfiADQoCAgICAgIAIfSAGrUI0hoQFIANBASAGa62ICyAChL8LiwwBBn8gACABaiEFAkACQCAAKAIEIgJBAXENACACQQNxRQ0BIAAoAgAiAiABaiEBAkAgACACayIAQfinBCgCAEcEQCACQf8BTQRAIAAoAggiBCACQQN2IgJBA3RBjKgEakYaIAAoAgwiAyAERw0CQeSnBEHkpwQoAgBBfiACd3E2AgAMAwsgACgCGCEGAkAgACAAKAIMIgNHBEAgACgCCCICQfSnBCgCAEkaIAIgAzYCDCADIAI2AggMAQsCQCAAQRRqIgIoAgAiBA0AIABBEGoiAigCACIEDQBBACEDDAELA0AgAiEHIAQiA0EUaiICKAIAIgQNACADQRBqIQIgAygCECIEDQALIAdBADYCAAsgBkUNAgJAIAAgACgCHCIEQQJ0QZSqBGoiAigCAEYEQCACIAM2AgAgAw0BQeinBEHop
 
wQoAgBBfiAEd3E2AgAMBAsgBkEQQRQgBigCECAARhtqIAM2AgAgA0UNAwsgAyAGNgIYIAAoAhAiAgRAIAMgAjYCECACIAM2AhgLIAAoAhQiAkUNAiADIAI2AhQgAiADNgIYDAILIAUoAgQiAkEDcUEDRw0BQeynBCABNgIAIAUgAkF+cTYCBCAAIAFBAXI2AgQgBSABNgIADwsgBCADNgIMIAMgBDYCCAsCQCAFKAIEIgJBAnFFBEAgBUH8pwQoAgBGBEBB/KcEIAA2AgBB8KcEQfCnBCgCACABaiIBNgIAIAAgAUEBcjYCBCAAQfinBCgCAEcNA0HspwRBADYCAEH4pwRBADYCAA8LIAVB+KcEKAIARgRAQfinBCAANgIAQeynBEHspwQoAgAgAWoiATYCACAAIAFBAXI2AgQgACABaiABNgIADwsgAkF4cSABaiEBAkAgAkH/AU0EQCAFKAIIIgQgAkEDdiICQQN0QYyoBGpGGiAEIAUoAgwiA0YEQEHkpwRB5KcEKAIAQX4gAndxNgIADAILIAQgAzYCDCADIAQ2AggMAQsgBSgCGCEGAkAgBSAFKAIMIgNHBEAgBSgCCCICQfSnBCgCAEkaIAIgAzYCDCADIAI2AggMAQsCQCAFQRRqIgQoAgAiAg0AIAVBEGoiBCgCACICDQBBACEDDAELA0AgBCEHIAIiA0EUaiIEKAIAIgINACADQRBqIQQgAygCECICDQALIAdBADYCAAsgBkUNAAJAIAUgBSgCHCIEQQJ0QZSqBGoiAigCAEYEQCACIAM2AgAgAw0BQeinBEHopwQoAgBBfiAEd3E2AgAMAgsgBkEQQRQgBigCECAFRhtqIAM2AgAgA0UNAQsgAyAGNgIYIAUoAhAiAgRAIAMgAjYCECACIAM2AhgLIAUoAhQiAkUNACADIAI2AhQgAiADNgIYCyAAIAFBAXI2AgQgACABaiABNgIAIABB+KcEKAIARw0BQeynBC
 
ABNgIADwsgBSACQX5xNgIEIAAgAUEBcjYCBCAAIAFqIAE2AgALIAFB/wFNBEAgAUEDdiICQQN0QYyoBGohAQJ/QeSnBCgCACIDQQEgAnQiAnFFBEBB5KcEIAIgA3I2AgAgAQwBCyABKAIICyECIAEgADYCCCACIAA2AgwgACABNgIMIAAgAjYCCA8LQR8hAiAAQgA3AhAgAUH///8HTQRAIAFBCHYiAiACQYD+P2pBEHZBCHEiBHQiAiACQYDgH2pBEHZBBHEiA3QiAiACQYCAD2pBEHZBAnEiAnRBD3YgAyAEciACcmsiAkEBdCABIAJBFWp2QQFxckEcaiECCyAAIAI2AhwgAkECdEGUqgRqIQcCQAJAQeinBCgCACIEQQEgAnQiA3FFBEBB6KcEIAMgBHI2AgAgByAANgIAIAAgBzYCGAwBCyABQQBBGSACQQF2ayACQR9GG3QhAiAHKAIAIQMDQCADIgQoAgRBeHEgAUYNAiACQR12IQMgAkEBdCECIAQgA0EEcWoiB0EQaigCACIDDQALIAcgADYCECAAIAQ2AhgLIAAgADYCDCAAIAA2AggPCyAEKAIIIgEgADYCDCAEIAA2AgggAEEANgIYIAAgBDYCDCAAIAE2AggLC58IAQt/IABFBEAgARChAg8LIAFBQE8EQEGEpwRBMDYCAEEADwsCf0EQIAFBC2pBeHEgAUELSRshBiAAQQhrIgUoAgQiCUF4cSEEAkAgCUEDcUUEQEEAIAZBgAJJDQIaIAZBBGogBE0EQCAFIQIgBCAGa0HEqwQoAgBBAXRNDQILQQAMAgsgBCAFaiEHAkAgBCAGTwRAIAQgBmsiA0EQSQ0BIAUgCUEBcSAGckECcjYCBCAFIAZqIgIgA0EDcjYCBCAHIAcoAgRBAXI2AgQgAiADEPQFDAELIAdB/KcEKAIARgRAQfCnBCgCACAEaiIEIAZNDQIgBSAJQQFxIAZyQQJyNgIEIAUgBmoiAyA
 
EIAZrIgJBAXI2AgRB8KcEIAI2AgBB/KcEIAM2AgAMAQsgB0H4pwQoAgBGBEBB7KcEKAIAIARqIgMgBkkNAgJAIAMgBmsiAkEQTwRAIAUgCUEBcSAGckECcjYCBCAFIAZqIgQgAkEBcjYCBCADIAVqIgMgAjYCACADIAMoAgRBfnE2AgQMAQsgBSAJQQFxIANyQQJyNgIEIAMgBWoiAiACKAIEQQFyNgIEQQAhAkEAIQQLQfinBCAENgIAQeynBCACNgIADAELIAcoAgQiA0ECcQ0BIANBeHEgBGoiCiAGSQ0BIAogBmshDAJAIANB/wFNBEAgBygCCCIEIANBA3YiAkEDdEGMqARqRhogBCAHKAIMIgNGBEBB5KcEQeSnBCgCAEF+IAJ3cTYCAAwCCyAEIAM2AgwgAyAENgIIDAELIAcoAhghCwJAIAcgBygCDCIIRwRAIAcoAggiAkH0pwQoAgBJGiACIAg2AgwgCCACNgIIDAELAkAgB0EUaiIEKAIAIgINACAHQRBqIgQoAgAiAg0AQQAhCAwBCwNAIAQhAyACIghBFGoiBCgCACICDQAgCEEQaiEEIAgoAhAiAg0ACyADQQA2AgALIAtFDQACQCAHIAcoAhwiA0ECdEGUqgRqIgIoAgBGBEAgAiAINgIAIAgNAUHopwRB6KcEKAIAQX4gA3dxNgIADAILIAtBEEEUIAsoAhAgB0YbaiAINgIAIAhFDQELIAggCzYCGCAHKAIQIgIEQCAIIAI2AhAgAiAINgIYCyAHKAIUIgJFDQAgCCACNgIUIAIgCDYCGAsgDEEPTQRAIAUgCUEBcSAKckECcjYCBCAFIApqIgIgAigCBEEBcjYCBAwBCyAFIAlBAXEgBnJBAnI2AgQgBSAGaiIDIAxBA3I2AgQgBSAKaiICIAIoAgRBAXI2AgQgAyAMEPQFCyAFIQILIAILIgIEQCACQQhqDwsgARChAiIFRQRAQQAPCyAFIABBfEF4
 
IABBBGsoAgAiAkEDcRsgAkF4cWoiAiABIAEgAksbECMaIAAQ6QEgBQvYAwICfgJ/IwBBIGsiBCQAAkAgAUL///////////8AgyIDQoCAgICAgMCAPH0gA0KAgICAgIDA/8MAfVQEQCABQgSGIABCPIiEIQMgAEL//////////w+DIgBCgYCAgICAgIAIWgRAIANCgYCAgICAgIDAAHwhAgwCCyADQoCAgICAgICAQH0hAiAAQoCAgICAgICACIVCAFINASACIANCAYN8IQIMAQsgAFAgA0KAgICAgIDA//8AVCADQoCAgICAgMD//wBRG0UEQCABQgSGIABCPIiEQv////////8Dg0KAgICAgICA/P8AhCECDAELQoCAgICAgID4/wAhAiADQv///////7//wwBWDQBCACECIANCMIinIgVBkfcASQ0AIARBEGogACABQv///////z+DQoCAgICAgMAAhCICIAVBgfcAaxByIAQgACACQYH4ACAFaxDWAiAEKQMIQgSGIAQpAwAiAEI8iIQhAiAEKQMQIAQpAxiEQgBSrSAAQv//////////D4OEIgBCgYCAgICAgIAIWgRAIAJCAXwhAgwBCyAAQoCAgICAgICACIVCAFINACACQgGDIAJ8IQILIARBIGokACACIAFCgICAgICAgICAf4OEvwuCEQIFfwt+IwBBwAFrIgUkACAEQv///////z+DIRIgAkL///////8/gyEMIAIgBIVCgICAgICAgICAf4MhESAEQjCIp0H//wFxIQcCQAJAAkAgAkIwiKdB//8BcSIJQQFrQf3/AU0EQCAHQQFrQf7/AUkNAQsgAVAgAkL///////////8AgyIKQoCAgICAgMD//wBUIApCgICAgICAwP//AFEbRQRAIAJCgICAgICAIIQhEQwCCyADUCAEQv///////////wCDIgJCgICAgICAwP//AFQgAkKAgICAgIDA//8AURtFBEAgB
 
EKAgICAgIAghCERIAMhAQwCCyABIApCgICAgICAwP//AIWEUARAIAMgAkKAgICAgIDA//8AhYRQBEBCACEBQoCAgICAgOD//wAhEQwDCyARQoCAgICAgMD//wCEIRFCACEBDAILIAMgAkKAgICAgIDA//8AhYRQBEBCACEBDAILIAEgCoRQDQIgAiADhFAEQCARQoCAgICAgMD//wCEIRFCACEBDAILIApC////////P1gEQCAFQbABaiABIAwgASAMIAxQIgYbeSAGQQZ0rXynIgZBD2sQckEQIAZrIQYgBSkDuAEhDCAFKQOwASEBCyACQv///////z9WDQAgBUGgAWogAyASIAMgEiASUCIIG3kgCEEGdK18pyIIQQ9rEHIgBiAIakEQayEGIAUpA6gBIRIgBSkDoAEhAwsgBUGQAWogEkKAgICAgIDAAIQiFEIPhiADQjGIhCICQoTJ+c6/5ryC9QAgAn0iBBC0ASAFQYABakIAIAUpA5gBfSAEELQBIAVB8ABqIAUpA4gBQgGGIAUpA4ABQj+IhCIEIAIQtAEgBUHgAGogBEIAIAUpA3h9ELQBIAVB0ABqIAUpA2hCAYYgBSkDYEI/iIQiBCACELQBIAVBQGsgBEIAIAUpA1h9ELQBIAVBMGogBSkDSEIBhiAFKQNAQj+IhCIEIAIQtAEgBUEgaiAEQgAgBSkDOH0QtAEgBUEQaiAFKQMoQgGGIAUpAyBCP4iEIgQgAhC0ASAFIARCACAFKQMYfRC0ASAGIAkgB2tqIQYCfkIAIAUpAwhCAYYgBSkDAEI/iIRCAX0iCkL/////D4MiBCACQiCIIgt+Ig4gCkIgiCIKIAJC/////w+DIg9+fCICQiCIIAIgDlStQiCGhCAKIAt+fCACQiCGIgsgBCAPfnwiAiALVK0gAiACIAQgA0IRiEL/////D4MiDn4iDyAKIANCD4ZCgID+/w+DIg1+fCILQiCGIhAgBCANfnwgEF
 
StIAogDn4gCyAPVK1CIIYgC0IgiIR8fHwiAlatfHwgAkIAUq18fSILQv////8PgyIOIAR+Ig8gCiAOfiINIAQgC0IgiCIQfnwiC0IghnwiDiAPVK0gCiAQfiALIA1UrUIghiALQiCIhHx8IA5CACACfSICQiCIIgsgBH4iDyACQv////8PgyINIAp+fCICQiCGIhAgBCANfnwgEFStIAogC34gAiAPVK1CIIYgAkIgiIR8fHwiAiAOVK18IAJCAn0iDyACVK18QgF9IgtC/////w+DIgIgDEIChiABQj6IhEL/////D4MiBH4iDiABQh6IQv////8PgyIKIAtCIIgiC358Ig0gDlStIA0gDSAPQiCIIg4gDEIeiEL//+//D4NCgIAQhCIMfnwiDVatfCALIAx+fCACIAx+IhMgBCALfnwiECATVK1CIIYgEEIgiIR8IA0gDSAQQiCGfCINVq18IA0gDSAKIA5+IhMgD0L/////D4MiDyAEfnwiECATVK0gECAQIAIgAUIChkL8////D4MiE358IhBWrXx8Ig1WrXwgDSALIBN+IgsgDCAPfnwiDCAEIA5+fCIEIAIgCn58IgJCIIggAiAEVK0gCyAMVq0gBCAMVK18fEIghoR8IgQgDVStfCAEIAQgECAOIBN+IgwgCiAPfnwiCkIgiCAKIAxUrUIghoR8IgogEFStIAogAkIghnwgClStfHwiBFatfCICQv////////8AWARAIAFCMYYgBEIgiCIBIANC/////w+DIgp+Ig0gBEL/////D4MiDCADQiCIIgt+fCIOQiCGIhAgCiAMfnwiDyAQVK19IA9CAFKtfSACQv////8PgyAKfiAMIBJC/////w+DfnwgASALfnwgDSAOVq1CIIYgDkIgiIR8IAQgFEIgiH4gAyACQiCIfnwgAiALfnwgASASfnxCIIZ8fSESIAZBAWshBkIAIA99DAELIARCIYghDCABQjCGIAJCP4Y
 
gBEIBiIQiBEL/////D4MiASADQiCIIgp+Ig8gDCACQh+GhCINQv////8PgyIQIANC/////w+DIgx+fCILQiCGIhMgASAMfnwiDiATVK19IA5CAFKtfSAEIBRCIIh+IAMgAkIhiH58IAJCAYgiAiAKfnwgDSASfnxCIIYgCiAQfiACQv////8PgyAMfnwgASASQv////8Pg358IAsgD1StQiCGIAtCIIiEfHx9IRJCACAOfQshASAGQYCAAU4EQCARQoCAgICAgMD//wCEIRFCACEBDAELIAZB//8AaiEHIAZBgYB/TARAAkAgBw0AIAQgAUIBhiADViASQgGGIAFCP4iEIgEgFFYgASAUURutfCIBIARUrSACQv///////z+DfCICQoCAgICAgMAAg1ANACACIBGEIREMAgtCACEBDAELIAQgAUIBhiADWiASQgGGIAFCP4iEIgEgFFogASAUURutfCIBIARUrSACQv///////z+DfCAHrUIwhnwgEYQhEQsgACABNwMAIAAgETcDCCAFQcABaiQADwsgAEIANwMAIABCgICAgICA4P//ACARIAIgA4RQGzcDCCAFQcABaiQAC8QBAgF/An5BfyEDAkAgAEIAUiABQv///////////wCDIgRCgICAgICAwP//AFYgBEKAgICAgIDA//8AURsNAEEAIAJC////////////AIMiBUKAgICAgIDA//8AViAFQoCAgICAgMD//wBRGw0AIAAgBCAFhIRQBEBBAA8LIAEgAoNCAFkEQEEAIAEgAlMgASACURsNASAAIAEgAoWEQgBSDwsgAEIAUiABIAJVIAEgAlEbDQAgACABIAKFhEIAUiEDCyADC9wyAxV/B34BfCMAQRBrIhEkACMAQaABayIOJAAgDkEQakEAQZABEEsaIA5BfzYCXCAOIAA2AjwgDkF/NgIYIA4gADYCFCAOQRBqEKoEIA5BEGohAiMAQTBrIg0kAEHgowQo
 
AgAhEEHUowQoAgAhDwNAAn8gAigCBCIAIAIoAmhJBEAgAiAAQQFqNgIEIAAtAAAMAQsgAhBaCyIFEP0FDQALQQEhAAJAAkAgBUEraw4DAAEAAQtBf0EBIAVBLUYbIQAgAigCBCIEIAIoAmhJBEAgAiAEQQFqNgIEIAQtAAAhBQwBCyACEFohBQsCQAJAAkADQCAGQYmjBGosAAAgBUEgckYEQAJAIAZBBksNACACKAIEIgQgAigCaEkEQCACIARBAWo2AgQgBC0AACEFDAELIAIQWiEFCyAGQQFqIgZBCEcNAQwCCwsgBkEDRwRAIAZBCEYNASAGQQRJDQIgBkEIRg0BCyACKAJoIgQEQCACIAIoAgRBAWs2AgQLIAZBBEkNAANAIAQEQCACIAIoAgRBAWs2AgQLIAZBAWsiBkEDSw0ACwsjAEEQayICJAACfiAAskMAAIB/lLwiBEH/////B3EiAEGAgIAEa0H////3B00EQCAArUIZhkKAgICAgICAwD98DAELIAStQhmGQoCAgICAgMD//wCEIABBgICA/AdPDQAaQgAgAEUNABogAiAArUIAIABnIgBB0QBqEHIgAikDACEWIAIpAwhCgICAgICAwACFQYn/ACAAa61CMIaECyEXIA0gFjcDACANIBcgBEGAgICAeHGtQiCGhDcDCCACQRBqJAAgDSkDCCEWIA0pAwAhFwwBCwJAAkACQCAGDQBBACEGA0AgBkGSowRqLAAAIAVBIHJHDQECQCAGQQFLDQAgAigCBCIEIAIoAmhJBEAgAiAEQQFqNgIEIAQtAAAhBQwBCyACEFohBQsgBkEBaiIGQQNHDQALDAELAkACQCAGDgQAAQECAQsCQCAFQTBHDQACfyACKAIEIgQgAigCaEkEQCACIARBAWo2AgQgBC0AAAwBCyACEFoLQV9xQdgARgRAIwBBsANrIgMkAAJ/IAIoAgQiBCACKAJoSQRAIAIgBEEBajYCBCAEL
 
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
 
QlLDQEgBUKuj4XXx8LrowFTDQALCyACQQpJBEADQAJ/IAAoAgQiASAAKAJoSQRAIAAgAUEBajYCBCABLQAADAELIAAQWgtBMGtBCkkNAAsLIAAoAmgEQCAAIAAoAgRBAWs2AgQLQgAgBX0gBSAEGyEFDAELQoCAgICAgICAgH8hBSAAKAJoRQ0AIAAgACgCBEEBazYCBEKAgICAgICAgIB/DwsgBQu/AgEBfyMAQdAAayIEJAACQCADQYCAAU4EQCAEQSBqIAEgAkIAQoCAgICAgID//wAQMiAEKQMoIQIgBCkDICEBIANB//8BSARAIANB//8AayEDDAILIARBEGogASACQgBCgICAgICAgP//ABAyIANB/f8CIANB/f8CSBtB/v8BayEDIAQpAxghAiAEKQMQIQEMAQsgA0GBgH9KDQAgBEFAayABIAJCAEKAgICAgIDAABAyIAQpA0ghAiAEKQNAIQEgA0GDgH5KBEAgA0H+/wBqIQMMAQsgBEEwaiABIAJCAEKAgICAgIDAABAyIANBhoB9IANBhoB9ShtB/P8BaiEDIAQpAzghAiAEKQMwIQELIAQgASACQgAgA0H//wBqrUIwhhAyIAAgBCkDCDcDCCAAIAQpAwA3AwAgBEHQAGokAAs1ACAAIAE3AwAgACACQv///////z+DIARCMIinQYCAAnEgAkIwiKdB//8BcXKtQjCGhDcDCAsQACAAQSBGIABBCWtBBUlyC9gBAQR/IAAoAlQhAwJAIAAoAhQgACgCHCIFayIGBEAgACAFNgIUIAAgBSAGEP4FIAZJDQELAkAgAygCEEHhAEcEQCADKAIAIQQMAQsgAyADKAIEIgQ2AgALIAMoAgwgBGogASADKAIIIARrIgEgAiABIAJJGyIEECMaIAMgAygCACAEaiIBNgIAIAEgAygCBE0NACADIAE2AgQgAygCCCICIAFLBEAgAygCDCABakEAOgAAIAQPCyAALQAAQQ
 
RxRSACRXINACACIAMoAgxqQQFrQQA6AAALIAQLuwIAAkAgAUEUSw0AAkACQAJAAkACQAJAAkACQAJAAkAgAUEJaw4KAAECAwQFBgcICQoLIAIgAigCACIBQQRqNgIAIAAgASgCADYCAA8LIAIgAigCACIBQQRqNgIAIAAgATQCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATIBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATMBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATAAADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATEAADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASsDADkDAA8LIAAgAiADEQMACwtQAQN/AkAgACgCACwAABBFRQRADAELA0AgACgCACICLAAAIQMgACACQQFqNgIAIAEgA2pBMGshASACLAABEEVFDQEgAUEKbCEBDAALAAsgAQt/AgF/AX4gAL0iA0I0iKdB/w9xIgJB/w9HBHwgAkUEQCABIABEAAAAAAAAAABhBH9BAAUgAEQAAAAAAADwQ6IgARCBBiEAIAEoAgBBQGoLNgIAIAAPCyABIAJB/gdrNgIAIANC/////////4eAf4NCgICAgICAgPA/hL8FIAALC5sCACAARQRAQQAPCwJ/AkAgAAR/IAFB/wBNDQECQEGcpQQoAgAoAgBFBEAgAUGAf3FBgL8DRg0DDAELIAFB/w9NBEAgACABQT9xQYABcjoAASAAIAFBBnZBwAFyOgAAQQIMBAsgAUGAsANPQQAgAUGAQHFBgMADRxtFBEAgACABQT9xQYABcjoAAiAAIAFBDHZB4AFyOgAAIAAgAUEGdkE/cUGAAXI6AAFBAwwECyABQYCABGtB//8/TQRAIAAgAUE
 
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
 
wsgAygCIDUCFAVCgICAgOAACwseACAAIAFBABCZASIARQRAQoCAgIDgAA8LIAA1AigLPQEBfkKAgICAECEBIAMpAwAiBEKAgICAcFoEfiAEpy8BBkEVa0H//wNxQQpJrUKAgICAEIQFQoCAgIAQCwuQAwIFfgF/IwBBIGsiAiQAQoCAgIDgACEIAkAgACABIAQQaCIKRQ0AIAotAAQEQCAAEHAMAQsgACACQRhqIAMpAwBCACAKNAIAIgUgBRB+DQAgAiAFNwMQIAMpAwgiBhAQBH4gBQUgACACQRBqIAZCACAFIAUQfg0BIAIpAxALIAIpAxgiCX0Q1AQhByAAIAFCgICAgDAQ8gEiBhALBEAgBiEIDAELAkAgBhAQBEAgAEKAgICAMCAHIAQQ9QMhBQwBCyACIAdCgICAgAh8Qv////8PWAR+IAdC/////w+DBSAHuRAVCzcDCCAAIAZBASACQQhqEK4BIQUgACAGEAogACACKQMIEAoLAkAgBRALDQACQCAAIAUgBBBoIgNFDQAgACAFIAEQWARAIABBoNEBQQAQFAwBCwJAIAMtAAQNACADNAIAIAdTBEAgAEHB0QFBABAUDAILIAotAAQNACADKAIIIAooAgggCadqIAenECMaDAILIAAQcAsgACAFEAoMAQsgBSEICyACQSBqJAAgCAsuACAAIAEgAhBoIgBFBEBCgICAgOAADwsgACgCACIAQQBOBEAgAK0PCyAAuBAVC/YCAQF+IAFBKBA/IQIgBEEBNgIAAkACQCACRQRAIABB0M8BQQAQFAwBCwJAAkACQAJAAkACQAJAAkAgAigCAEEBaw4EAgIHAQALIAVFDQIgACACEMADC0KAgICAMCEBIAVBAWsOAgMEBwsgAykDABANIQECQCAFQQJHDQBBASEDIAIoAgBBAUcNACAAIAEQkgEMAgsgAigCRCIDIAWtNwMAIANBCGsgATcDACACIANBCGo2AkQLQQAhAw
 
sgAkEDNgIAIAIgAzYCFCAAIAJBCGoQwAIhASACQQE2AgAgARALBEAgACACEMADIAEPCyACKAJEQQhrIgMpAwAhBiADQoCAgIAwNwMAIAFC/////w9YBEAgAadBAkYEQCACQQI2AgAgBEECNgIAIAYPCyAEQQA2AgAgBg8LIAAgARAKIAAgAhDAAyAGDwsgAykDABANDwsgACADKQMAEA0QkgEMAQsgAEHgzwFBABAUC0KAgICA4AAhAQsgAQtmAQF+IAMpAwAiARD3A0UEQCAAQeTJAEEAEBRCgICAgOAADwtCgICAgDAhBCABpykCBEKAgICAgICAgECDQoCAgICAgICAgH9RBH4gAUL/////D4NCgICAgJB/hBANBUKAgICAMAsLLwEBfkKAgICA4AAhASAAIAMpAwAQKyIEEAsEfkKAgICA4AAFIAAgBKdBAhD2AwsLSQIBfgF/IAAgARDBAyIBEAsEQCABDwtCgICAgDAhAiABpyIDKAIEQYCAgIB4RwRAIAAgACgCECADENMCEDEhAgsgACABEAogAgsJACAAIAEQwQMLTgEBfiMAQRBrIgIkACACIAAgARDBAyIBNwMIAkAgARALBEAgASEEDAELIABCgICAgDBBASACQQhqEMgEIQQgACABEAoLIAJBEGokACAECy0AQoCAgIDgACAAIAMpAwAgAykDCEEAEJsCIgBBAEetQoCAgIAQhCAAQQBIGwuGAQEDfiADKQMAIgEhBCACQQROBEAgAykDGCEECyABQv////9vWARAIAAQKEKAgICA4AAPCyADKQMQIQZCgICAgOAAIQUCQCAAIAMpAwgQOSICRQ0AIAAgASACIAYQDSAEQQAQiAQhAyAAIAIQESADQQBIDQAgA0EAR61CgICAgBCEIQULIAULKgAgAykDACIBQv////9vWARAIAAQKEKAgICA4AAPCyAAIAFBA0EAEP8CC2MBAX4gAykDACIEQv////9vWAR
 
AIAAQKEKAgICA4AAPC0KAgICA4AAhAQJAIAAgAykDCBA5IgJFDQAgACAEIAIQdyEDIAAgAhARIANBAEgNACADQQBHrUKAgICAEIQhAQsgAQtjAQJ+AkACQCADKQMAIgFC/////29YBEAgABAoDAELIAMpAwghBSABIQQgAkEDTgRAIAMpAxAhBAsgACAFEDkiAg0BC0KAgICA4AAPCyAAIAEgAiAEQQAQEiEBIAAgAhARIAELZgEBfiADKQMAIgRC/////29YBEAgABAoQoCAgIDgAA8LQoCAgIDgACEBAkAgACADKQMIEDkiAkUNACAAIAQgAkEAEN0BIQMgACACEBEgA0EASA0AIANBAEetQoCAgIAQhCEBCyABC4sBAgF/An4jAEEQayIEJAAgAykDCCEFIAMpAwAiBiEBAkACQAJAAkAgAkEDSA0AIAMpAxAiARCxAQ0AIABBycwAQQAQFAwBCyAAIARBDGogBRCLBCICDQELQoCAgIDgACEBDAELIAAgBiABIAQoAgwiAyACEI4DIQEgACACIAMQmAMLIARBEGokACABCxwAIAAgAykDAEEAIAJBAWsQSiADQQhqQQIQmgMLQwAjAEEQayICJAACfkKAgICA4AAgACACQQxqIAMpAwAQxAENABpCICACKAIMIgBFDQAaIABnrQshASACQRBqJAAgAQtQACMAQRBrIgIkAEKAgICA4AAhAQJAIAAgAkEMaiADKQMAEJMCDQAgACACQQhqIAMpAwgQkwINACACKAIIIAIoAgxsrSEBCyACQRBqJAAgAQsGACAAtrsLUwACfCAAIAApA9ABIgFCDIggAYUiAUIZhiABhSIBQhuIIAGFIgE3A9ABIAFCnbqz+5SS/aIlfkIMiEKAgICAgICA+D+Ev0QAAAAAAADwv6ALEBUL9QMDA3wFfwN+IwBBEGsiCCQAIAhCADcDCAJAAkAgAkEBSA0AQoCAgIDgACEBIAAgCEEIaiAD
 
KQMAEEcNAUEBIQkgCCsDCCEEIAJBAUcEQANAIAIgCUYNAiAAIAggAyAJQQN0aikDABBHDQMgCUEBaiEJIAgrAwAhBSMAQSBrIgckACAEvUL///////////8AgyINIAW9Qv///////////wCDIgwgDCANVhsiDr8hBAJAIA5CNIinIgpB/w9GDQAgDSAMIAwgDVQbIgy/IQUCQCAOUA0AIAxCNIinIgtB/w9GDQAgCyAKa0HBAE4EQCAFIASgIQQMAgsCfCALQf4LTwRAIAREAAAAAAAAMBSiIQQgBUQAAAAAAAAwFKIhBUQAAAAAAACwawwBC0QAAAAAAADwPyAKQbwESw0AGiAERAAAAAAAALBroiEEIAVEAAAAAAAAsGuiIQVEAAAAAAAAMBQLIQYgB0EYaiAHQRBqIAUQhgYgB0EIaiAHIAQQhgYgBiAHKwMAIAcrAxCgIAcrAwigIAcrAxign6IhBAwBCyAFIQQLIAdBIGokAAwACwALIASZIQQLIAS9An8gBJlEAAAAAAAA4EFjBEAgBKoMAQtBgICAgHgLIgC3vVEEQCAArSEBDAELIAQQFSEBCyAIQRBqJAAgAQtbAQF/AkAgAL1C////////////AINCgICAgICAgPj/AFYgAEQAAAAAAAAAAGFyDQAgAEQAAAAAAAAAAGMhAUQAAAAAAADwvyEAIAENAEQAAAAAAADwPyEACyAAC4MBAgJ+AX8gAL0iAUI0iKdB/w9xIgNB/gdNBEAgAUKAgICAgICAgIB/gyECIANB/gdHIAFCgICAgICAgPC/f1FyRQRAIAJCgICAgICAgPg/hL8PCyACvw8LIANBsghNBHwgAUI/hyABfEIBQbMIIANrrYYiAUIBiHxCACABfYO/BSAACwvjBAICfAV/IwBBEGsiCCQAAn4gAkUEQEQAAAAAAADw/0QAAAAAAADwfyAEGxAVDAELAnwgAykDACIBQv////8PWARAIAJBASACQ
 
QFKGyELIAGnIQlBASEHA0AgByALRwRAIAm3IAMgB0EDdGopAwAiAUKAgICAEFoNAxogAachCgJ/IAQEQCAJIAoQSgwBCyAJIAoQsAELIQkgB0EBaiEHDAELCyAJrQwCC0KAgICA4AAgACAIQQhqIAEQRw0BGkEBIQcgCCsDCAshBSAHIAIgAiAHSBshAgNAIAIgB0cEQEKAgICA4AAgACAIIAMgB0EDdGopAwAQRw0CGgJAIAW9Qv///////////wCDQoCAgICAgID4/wBWDQAgCCsDACIGvUL///////////8Ag0KAgICAgICA+P8AVgRAIAYhBQwBCyAEBEAgBb1C////////////AINCgICAgICAgPj/AFgEfCAFIAUgBqUgBr1C////////////AINCgICAgICAgPj/AFYbBSAGCyAGvSAFvYO/IAVEAAAAAAAAAABiIAZEAAAAAAAAAABichshBQwBCyAFvUL///////////8Ag0KAgICAgICA+P8AWAR8IAUgBSAGpCAGvUL///////////8Ag0KAgICAgICA+P8AVhsFIAYLIAa9IAW9hL8gBUQAAAAAAAAAAGIgBkQAAAAAAAAAAGJyGyEFCyAHQQFqIQcMAQsLIAW9An8gBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLIgC3vVEEQCAArQwBCyAFEBULIQEgCEEQaiQAIAEL0AEBAn8jAEEQayICJAACfiAAIAFBJhBoIgNFBEAgBEEANgIAQoCAgIDgAAwBCwJAIAMpAwAiARAQRQRAIAIgAygCDCIFNgIMIAUgAaciBigCBEH/////B3FJDQEgACABEAogA0KAgICAMDcDAAsgBEEBNgIAQoCAgIAwDAELIAYgAkEMahDZASEHIAMgAigCDDYCDCAEQQA2AgAgB0H//wNNBEAgACAHQf//A3EQpgMMAQsgACAGIAVBAXRqQRBqQQIQnAQLIQEgAkEQaiQAIA
 
EL2QICAn8CfiMAQSBrIgIkAEKAgICA4AAhBwJAIAAgARBhIgEQCw0AIAAgAkEIakEHEEIaIAJBCGpBPBA7GiACQQhqIARBA3QiBUHAwgFqKAIAIgYQiwEaQZ49IAR2QQFxRQRAIAJBCGpBIBA7GiACQQhqIAVBxMIBaigCABCLARogAkEIakHBwwEQiwEaIAAgAykDABBhIggQCwRAIAAgARAKIAJBCGoQRAwCCyAIpyEDQQAhBANAIAQgAygCBEH/////B3FPRQRAAkAgAyAEEC8iBUEiRgRAIAJBCGpBxMMBEIsBGgwBCyACQQhqIAUQlAEaCyAEQQFqIQQMAQsLIAAgCBAKIAJBCGpBIhA7GgsgAkEIakE+EDsaIAJBCGogARCNARogAkEIakHLwwEQiwEaIAJBCGogBhCLARogAkEIakE+EDsaIAJBCGoQNyEHCyACQSBqJAAgBwu1BAEIfyMAQTBrIgIkAAJAIAAgARBhIgEQCw0AIAGnIgcoAgRB/////wdxIgNFDQACQCAAIAJBGGogAxBCDQBBACEDIAJBADYCFANAAkAgBygCBEH/////B3EgA0oEQEEAIQMCfwJAIARFIAcgAkEUahDZASILQaMHR3INACACKAIUQQFrIQojAEEQayIIJAAgCCAKNgIMA0ACf0EAIAgoAgwiBUEBSA0AGiAFQQFrIQYCQAJAIAcoAgRBf0wEQCAHIAZBAXRqLwEQIglBgPgDcUGAuANHIAVBAkhyDQEgByAFQQJrIgVBAXRqLwEQIgxBgNAAakH//wNxQYAISw0BIAlB/wdxQYCABHIgDEH/B3FBCnRqIQkMAgsgBiAHai0AECEJCyAGIQULIAggBTYCDCAJCyIGELoEDQALAkAgBhC8BEUEQEEAIQYMAQtBASEGIAggCkEBaiIFNgIMA0AgBSAHKAIEQf////8HcU4NASAHIAhBDGoQ2QEiBRC6BARAIAgoAgwhBQwBCwsgBRC
 
8BEUhBgsgCEEQaiQAIAZFDQAgAkHCBzYCCEEBDAELIAJBCGogCyAEELcDCyIGQQAgBkEAShshBgNAIAMgBkYNAiADQQJ0IQUgA0EBaiEDIAJBGGogBSACQQhqaigCABC+AUUNAAsMAwsgACABEAogAkEYahA3IQEMAwsgAigCFCEDDAALAAsgACABEAogAkEYahBEQoCAgIDgACEBCyACQTBqJAAgAQtaAQF+QoCAgIDgACEEIAAgARBhIgEQCwR+QoCAgIDgAAUgACADKQMAECsiBBALBEAgACABEApCgICAgOAADwsgAacgBKcQlQIhAiAAIAEQCiAAIAQQCiACrQsLCQAgACABEI0FC18AAn4CQCABQiCIpyICQX9HBEAgAkF5Rw0BIAEQDQwCCyABpyICLwEGQQVHDQAgAikDICIBQoCAgIBwg0KAgICAkH9SDQAgARANDAELIABBwNMAQQAQFEKAgICA4AALC6ABAgF/AX4gACABEGEiARALBEAgAQ8LIAGnIgUoAgRB/////wdxIQJBACEDAkAgBEEBcUUNAANAIAIgA0YEQCACIQMMAgsgBSADEC8Q4gJFDQEgA0EBaiEDDAALAAsCQCAEQQJxRQRAIAIhBAwBCwNAIAIiBCADTA0BIAUgBEEBayICEC8Q4gINAAsLIAAgBSADIAQQmgEhBiAAIAEQCiAGC5oDAgZ/A34jAEEgayIFJABCgICAgOAAIQwCQCAAIAEQYSIBEAsNAAJAAkAgACAFQQRqIAMpAwAQwgENACAFKAIEIgcgAaciCSgCBEH/////B3EiCEwNAUEgIQpCgICAgDAhCwJAIAJBAkgNACADKQMIIg0QEA0AIAAgDRArIgsQCw0BAkACQCALpyIGKAIEQf////8HcQ4CAAECCyAAIAsQCgwDCyAGQQAQLyEKQQAhBgsgB0GAgICABE4EQCAAQfQNQQAQQQwBCyAAIAVBCGogBxBCRQRAIAUgByAI
 
ayIDNgIEAkAgBARAIAVBCGogCUEAIAgQVw0BCwJAIAYEQANAIANBAUgNAiAFQQhqIAZBACADIAYoAgRB/////wdxELABIgIQVw0DIAUgAyACayIDNgIEDAALAAsgBUEIaiAKIAMQywQNAQsgBEUEQCAFQQhqIAlBACAIEFcNAQsgACALEAogACABEAogBUEIahA3IQwMBAsgBUEIahBECyAAIAsQCgsgACABEAoMAQsgASEMCyAFQSBqJAAgDAv3BAIEfgV/IwBB0ABrIgIkACADKQMIIQggAykDACEFAkACQAJAIAEQEEUEQCABECZFDQELIABBk84AQQAQFAwBCwJAIAUQEA0AIAUQJg0AIAQEQCAAIAUQzQRBAEgNAgtCgICAgOAAIQYgACAFQcYBIAVBABASIgcQCw0CIAcQEA0AIAcQJg0AIAIgCDcDKCACIAE3AyAgACAHIAVBAiACQSBqEDUhBgwCCyAAIAJBCGpBABBCGkKAgICAMCEHAkAgACABECsiBhALBEBCgICAgDAhBQwBCyAAIAUQKyIFEAsNACAAIAgQOiINRQRAIAAgCBArIgcQCw0BCyAGpyEKIAWnIgwpAgQhAQNAAkACQCABQv////8Hg1AEQEEAIQMgC0UNASAJIAooAgRB/////wdxTg0CIAlBAWohAwwBCyAKIAwgCRDMBCIDQX9KDQAgCw0BIAJBCGoQRCAAIAUQCiAAIAcQCgwFCyACIAU3AyACfiANBEAgAiAGNwMwIAIgA603AyggACAAIAhCgICAgDBBAyACQSBqECIQPgwBCyACIAc3A0ggAkKAgICAMDcDQCACQoCAgIAwNwM4IAIgBjcDKCACIAOtNwMwIAAgAkEgahCQBQsiARALDQIgAkEIaiAKIAkgAxBXGiACQQhqIAEQjQEaIAwpAgQiAadB/////wdxIANqIQlBASELIAQNAQsLIAJBCGogCiAJIAooAgRB/////wdxEFcaI
 
AAgBRAKIAAgBxAKIAAgBhAKIAJBCGoQNyEGDAILIAJBCGoQRCAAIAUQCiAAIAcQCiAAIAYQCgtCgICAgOAAIQYLIAJB0ABqJAAgBguDAgIDfwF+IwBBIGsiAiQAAkACQCAAIAEQYSIBEAsNACAAIAIgAykDABCOBA0AIAIpAwAiB0KAgICACFoEQCAAQaTCARBpDAELIAenIgNBAUYNASABpyIFKQIEpyIGQf////8HcSIERQ0BIAcgBK1+QoCAgIAEWQRAIABB9A1BABBBDAELIAAgAkEIaiADIARsIAZBH3YQqgMNAAJAIARBAUcEQANAIANBAUgNAiACQQhqIAVBACAEEFcaIANBAWshAwwACwALIAJBCGogBUEAEC8gAxDLBBoLIAAgARAKIAJBCGoQNyEBDAELIAAgARAKQoCAgIDgACEBCyACQSBqJAAgAQulAQICfwJ+IwBBEGsiAiQAAkAgACABEGEiARALBEAgASEGDAELQoCAgIDgACEGAkAgACACQQxqIAMpAwAgAaciBSgCBEH/////B3EiBCAEEGMNACACIAQ2AgggAykDCCIHEBBFBEAgACACQQhqIAcgBCAEEGMNASACKAIIIQQLIAAgBSACKAIMIgMgBCADEEoQmgEhBgsgACABEAoLIAJBEGokACAGC6cBAgN/An4jAEEQayICJAACQCAAIAEQYSIBEAsEQCABIQcMAQtCgICAgOAAIQcCQCAAIAJBDGogAykDACABpyIGKAIEQf////8HcSIEIAQQYw0AIAIgBCACKAIMIgVrIgQ2AgggACAGIAUgAykDCCIIEBAEfyAEBSAAIAJBCGogCCAEQQAQYw0BIAIoAggLIAVqEJoBIQcLIAAgARAKCyACQRBqJAAgBwu6AQICfwJ+IwBBEGsiAiQAAkAgACABEGEiARALBEAgASEGDAELQoCAgIDgACEGAkAgACACQQxqIAMpAwAgAaciBSgCBEH/////B3
 
FBABBjDQAgAiAFKAIEQf////8HcSIENgIIIAMpAwgiBxAQRQRAIAAgAkEIaiAHIARBABBjDQEgAigCCCEECyAAIAUgAigCDCIDIAQgAyAESCIFGyAEIAMgBRsQmgEhBgsgACABEAoLIAJBEGokACAGC5gEAgl+A38jAEEQayINJAAgAykDCCEHIAMpAwAhBAJAAkACQCABEBBFBEAgARAmRQ0BCyAAQZPOAEEAEBQMAQsCQCAEEBAiAg0AIAQQJg0AQoCAgIDgACEFIAAgBEHIASAEQQAQEiIIEAsNAiAIEBANACAIECYNACANIAc3AwggDSABNwMAIAAgCCAEQQIgDRA1IQUMAgtCgICAgDAhCQJAIAAgARArIgwQCwRAQoCAgIAwIQUMAQsgABBOIgUQCw0AAkAgBxAQBEAgDUF/NgIADAELIAAgDSAHEMQBQQBIDQELIAynIg4pAgQhASAAIAQQKyIJEAsNAAJAIA0oAgAiA0UNACABp0H/////B3EhDyAAIA4CfwJAIAINACAJpyICKQIEQv////8HgyEKAkAgDwRAIAFC/////weDIAp9IApQrSIEfSEHIAOtIQgDQCAEIAt8IgEgB1UNAiAOIAIgAacQzAQiA0EASA0CIAAgDiALpyADEJoBIgEQCw0GIAAgBSAGIAFBABCqAUEASA0GIAogA6x8IQsgBkIBfCIGIAhSDQALDAQLIApQRQ0BDAMLIAZC/////w+DIQYgC6cMAQtBAAsgDxCaASIBEAsNASAAIAUgBiABQQAQqgFBAEgNAQsgACAMEAogACAJEAoMAgsgACAFEAogACAMEAogACAJEAoLQoCAgIDgACEFCyANQRBqJAAgBQvTAgEDfiMAQTBrIgIkACACIAE3AyggAykDACEFAkACQCABEBBFBEAgARAmRQ0BCyAAQZPOAEEAEBRCgICAgOAAIQcMAQsCQCAFEBANACAFECYNAEKAgICA4AAhByAAIAU
 
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
 
UEAQQAQNQshBCAAIAEQCgsgBAvWAgICfwR+IwBBIGsiBSQAAn4CQCAAIAUgACABECkiCRBADQBBLCEGQoCAgIAwIQgCQCACQQFIIARyRQRAQQAhAiADKQMAIgEQEA0BIAAgARArIggQCw0CQX8hBiAIpyICKAIEQQFHDQEgAi0AECEGDAELQQAhAgsgACAFQQhqQQAQQhpCACEBIAUpAwAiB0IAIAdCAFUbIQoCQANAIAEgClIEQAJAIAFQDQAgBkEATgRAIAVBCGogBhA7GgwBCyAFQQhqIAJBACACKAIEQf////8HcRBXGgsgACAJIAGnEHgiBxALDQICQCAHECYNACAHEBANACAFQQhqIAQEfiAAIAcQ1QQFIAcLEI0BDQMLIAFCAXwhAQwBCwsgACAIEAogACAJEAogBUEIahA3DAILIAVBCGoQRCAAIAgQCgsgACAJEApCgICAgOAACyEBIAVBIGokACABC/MBAgF/An4jAEEgayIEJAACfgJAAkACQCAAIARBEGogACABECkiBRBADQAgBCkDECIGQgFTDQEgBCAGQgF9IgE3AwggAkECTgRAIAAgBEEIaiADKQMIQn8gASAGEH4NASAEKQMIIQELA0AgAUIAUw0CIAAgBSABIARBGGoQiQEiAkEASA0BIAIEQCAAIAMpAwAQDSAEKQMYQQAQ3gENBAsgAUIBfSEBDAALAAsgACAFEApCgICAgOAADAILQn8hAQsgACAFEAogAUL/////D4MgAUKAgICACHxC/////w9YDQAaIAG5EBULIQEgBEEgaiQAIAEL9QICAX8EfiMAQSBrIgQkAAJ+AkACQCAAIARBEGogACABECkiBxBADQBCfyEGIAQpAxAiCEIBUw0BIARCADcDCCACQQJOBEAgACAEQQhqIAMpAwhCACAIIAgQfg0BCwJAIAcgBEEEaiAEEI4CRQRAIAQpAwghAQwBCyAEKQMIIgUgBDUCACIBIAEgBV
 
MbIQEgBCgCBCECA0AgASAFUgRAIAAgAykDABANIAIgBadBA3RqKQMAEA1BABDeAQRAIAUhBgwFBSAFQgF8IQUMAgsACwsgBCABNwMICyABIAggASAIVRshBQNAIAEgBVENAiAAIAcgASAEQRhqEIkBIgJBAEgNAQJAIAJFDQAgACADKQMAEA0gBCkDGEEAEN4BRQ0AIAEhBgwDCyABQgF8IQEMAAsACyAAIAcQCkKAgICA4AAMAQsgACAHEAogBkL/////D4MgBkKAgICACHxC/////w9YDQAaIAa5EBULIQEgBEEgaiQAIAEL3AICCH4BfyMAQTBrIg0kAEKAgICAMCEGAkACQCAAIA1BCGogACABECkiBxBABEBCgICAgDAhBQwBC0KAgICAMCEFIAAgAykDACIKEGcNAEKAgICAMCEJIAJBAk4EQCADKQMIIQkLIA0pAwgiBUIAIAVCAFUbIQsDQCAIIAtSBEACfiAIIgVCgICAgAhaBEAgCLkQFSEFCyAFCxALDQIgACAHIAUQngEiBhALDQIgDSABNwMgIA0gBTcDGCANIAY3AxAgACAKIAlBAyANQRBqECIiDBALDQIgACAMECwEQCAEBEAgACAGEAogACAHEAoMBQsgACAFEAogACAHEAogBiEFDAQFIAAgBhAKIAAgBRAKIAhCAXwhCAwCCwALCyAAIAcQCkL/////D0KAgICAMCAEGyEFDAELIAAgBRAKIAAgBhAKIAAgBxAKQoCAgIDgACEFCyANQTBqJAAgBQv1AQIBfwJ+IwBBIGsiBCQAAkACQCAAIARBGGogACABECkiBhBADQAgBEIANwMQAkAgAkEBTARAIAQgBCkDGCIFNwMIDAELIAQpAxghBSADKQMIIgEQEEUEQCAAIARBEGogAUIAIAUgBRB+DQILIAQgBTcDCCACQQNIDQAgAykDECIBEBANACAAIARBCGogAUIAIAUgBRB+DQEgBCkDCCEFCyA
 
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
 
RApIgEQCw0CIAAgBCABQoCAgIAwQQEQxgUNAiAAIAEQCgsgAkEBaiECDAALAAsgACAEEAogACABEApCgICAgOAAIQQLIAQLGwAgACADKQMAIAMpAwgQWEEAR61CgICAgBCEC5sCAgN+A38jAEEgayICJABCgICAgOAAIQQgACADKQMAECkiBRALRQRAQoCAgIAwIQECfgJAIAAgAkEcaiACQRhqIAWnQQMQkAENACAAED0iARALDQAgAigCHCEHIAIoAhghCEEAIQMDQCADIAhHBEAgACAHIANBA3RqIgkoAgQQXiIGEAsNAiACIAY3AwggAiAFNwMAIABCgICAgDBBAiACQQAQ2AQhBCAAIAYQCiAEEAsNAiAEEBBFBEAgACABIAkoAgQgBEGHgAEQGUF/TA0DCyADQQFqIQMMAQsLIAAgByAIEGQgAQwBCyAAIAIoAhwgAigCGBBkIAAgBRAKIAEhBUKAgICA4AALIQQgACAFEAoLIAJBIGokACAEC20AAn4CQCADKQMAIgFC/////29YBEAgBEUNASAAEChCgICAgOAADwtCgICAgOAAIAAgARCZBCICQQBIDQEaIAQEQCACQQBHrUKAgICAEIQPCyACDQAgAEGrnAFBABAUQoCAgIDgAA8LIAEQDQsLTwACQAJAIAMpAwAiAUL/////b1gEQCAERQRAQoCAgIAQDwsgABAoDAELIAAgARCfASIAQQBODQELQoCAgIDgAA8LIABBAEetQoCAgIAQhAsQACAAIAMpAwBBAkEAEP8CCxAAIAAgAykDAEEBQQAQ/wILLQEBfkKAgICA4AAhASAAIAMpAwAiBCADKQMIENoEBH5CgICAgOAABSAEEA0LC30BAn4gAykDACIBQv////9vWARAIAAQKEKAgICA4AAPCyADKQMQIQZCgICAgOAAIQUCQCAAIAMpAwgQOSICRQ0AIAAgASACIAYgBEVBDnQQ2QQhAyAAIAIQESADQQ
 
BIDQAgBARAIANBAEetQoCAgIAQhA8LIAEQDSEFCyAFCycAIAAgAykDACIBIAMpAwhBARCbAkEASARAQoCAgIDgAA8LIAEQDQs4ACADKQMAIgFCIIinIgJBf0YgBEVBACACQX5xQQJHG3JFBEAgABAoQoCAgIDgAA8LIAAgARD7AQtiAQF+AkAgAykDACIBECANACABECYNACAAQcChAUEAEBRCgICAgOAADwsCQCAAIAEQUiIBEAtFBEAgAykDCCIEEBANASAAIAEgBBDaBEUNASAAIAEQCgtCgICAgOAADwsgAQu4AQECfiABECBFBEAgABAoQoCAgIDgAA8LQoCAgIDgACEFAn4gACABQTYgAUEAEBIiBBAQBEAgAEGOARAxDAELIAAgBBA+CyIEEAsEfkKAgICA4AAFAn4gACABQTMgAUEAEBIiARAQBEAgAEEvEDEMAQsgACABED4LIgEQCwRAIAAgBBAKQoCAgIDgAA8LAkAgBBD2AQ0AIAEQ9gENACAAQb4VIARBkJwBEL0BIQQLIAAgBCABEMYCCwtpAgF/AX5B8KYEKAIABEAQggULQfCmBBDXBSICNgIAIAIQ4AQhAkGApwQgATYCAEH0pgQgAjYCACACIAAgABBDQY0IELYFIgMgARCnAwRAQfSmBCgCACADEApBAA8LQfimBCADNwMAQQELvgICA38BfCMAQdAAayIEJAAgBEEQakEAQTgQSxogBEKAgICAgICA+D83AyBCgICAgMB+IQECQCACRQ0AIAJBByACQQdIGyICQQAgAkEAShshAgNAIAIgBUcEQCAAIARBCGogAyAFQQN0IgZqKQMAEEcEQEKAgICA4AAhAQwDCyAEKwMIIge9QoCAgICAgID4/wCDQoCAgICAgID4/wBRDQIgBEEQaiAGaiAHnTkDAAJAIAUNACAEKwMQIgdEAAAAAAAAAABmRSAHRAAAAAAAAFlAY0VyDQAgBCAHRAAAAAAAsJ1
 
AoDkDEAsgBUEBaiEFDAELCyAEQRBqQQAQjAMiB70CfyAHmUQAAAAAAADgQWMEQCAHqgwBC0GAgICAeAsiALe9UQRAIACtIQEMAQsgBxAVIQELIARB0ABqJAAgAQsnABCrBSIBQoCAgIAIfEL/////D1gEQCABQv////8Pgw8LIAG5EBULCABCgICAgDALwAEBAn4jAEEQayICJAACfgJAIAAgACABECkiAUEBEJsDIgUQCw0AIAUQjgEEQCAAIAJBCGogBRBHQQBIDQFCgICAgCAgAisDCL1CgICAgICAgPj/AINCgICAgICAgPj/AFENAhoLIAAgAUGl6wAQzAIiBBALDQAgACAEEDpFBEAgAEH99wBBABAUIAAgBBAKDAELIAAgBCABQQBBABA1DAELQoCAgIDgAAshBCAAIAEQCiAAIAUQCiACQRBqJAAgBAvgAQIBfAF+IwBBEGsiAiQAQoCAgIDgACEFAkAgACACQQhqIAEQuAINACAAIAJBCGogAykDABBHDQAgAgJ+An8gAisDCCIEvUKAgICAgICA+P8Ag0KAgICAgICA+P8AUgRAIASdIgREAAAAAACwnUCgIAQgBEQAAAAAAABZQGMbIAQgBEQAAAAAAAAAAGYbIQQLIAS9An8gBJlEAAAAAAAA4EFjBEAgBKoMAQtBgICAgHgLIgO3vVELBEAgA60MAQsgBBAVCzcDACAAIAFBASACQREQ/gQhBQsgAkEQaiQAIAULUQEBfiMAQRBrIgIkAEKAgICA4AAhBAJAIAAgAkEIaiABELgCDQAgACACQQhqIAMpAwAQRw0AIAAgASACKwMIEPkDEP8EIQQLIAJBEGokACAEC6kBAQF8IwBB0ABrIgIkAAJ+QoCAgIDgACAAIAEgAiAEQQ9xQQAQ3QMiAEEASA0AGkKAgICAwH4gAEUNABogBEGAAnEEQCACIAIrAwBEAAAAAACwncCgOQMACyACIARBBHZBD3FBA3Rq
 
KwMAIgW9An8gBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLIgS3vVEEQCAErQwBCyAFEBULIQEgAkHQAGokACABC4UBAQF8IwBBEGsiAiQAAn5CgICAgOAAIAAgAkEIaiABELgCDQAaQoCAgIDAfiACKwMIIgS9Qv///////////wCDQoCAgICAgID4/wBWDQAaAn4gBJ0iBJlEAAAAAAAA4ENjBEAgBLAMAQtCgICAgICAgICAfwsQ3AOtCyEBIAJBEGokACABC3UBAX4CQCABECBFBEAgABAoDAELAkAgAykDACIEEJsBRQ0AIAAgBBA5IgJFDQEgACACEBFBESEDAkACQAJAIAJBxgBrDgMCAwEACyACQRZHDQILQRAhAwsgACABIAMQmwMPCyAAQfD3AEEAEBQLQoCAgIDgAAtoAQF8IwBBEGsiAiQAAn5CgICAgOAAIAAgAkEIaiABELgCDQAaIAIrAwgiBL0CfyAEmUQAAAAAAADgQWMEQCAEqgwBC0GAgICAeAsiALe9UQRAIACtDAELIAQQFQshASACQRBqJAAgAQvFAQEBfyAEQQFxIQYgBSkDAEEyED8iAigCBCEFIAMpAwAhAQJAAkACQCAEQQJOBEAgBUF+cUEERw0CIAJBBTYCBCAGBEAgACACIAEQ3gMMAgsgACACIAFBARD8AgwBCyAFQQNHDQIgAiAGNgIUIAEQDSEBAkAgBgRAIAAgARCSAQwBCyACKAJEQQhrIAE3AwALIAAgAhCDBQtCgICAgDAPC0Gl6QBBoQ1B05kBQYzqABAAAAtBsOoAQaENQdyZAUGM6gAQAAALhAICAn8CfiMAQSBrIgIkACABQTIQPyEGAkAgACACQRBqEI8DIgEQC0UEQCAGRQRAIABB0OgAQQAQFCACIAAQkQE3AwggACACKQMYIgdCgICAgDBBASACQQhqECIhCCAAIAIpAwgQCiAAIAgQCiAAIAIpAxAQCiAAIAcQC
 
gwCCyAAQTAQaiIFBEAgBSAENgIIIAUgAykDABANNwMQIAUgARANIgE3AxggBSACKQMQNwMgIAUgAikDGDcDKCAFIAZByABqEEwgBigCBEEDRg0CIAAgBhCDBQwCCyAAIAIpAxAQCiAAIAIpAxgQCiAAIAEQCgtCgICAgOAAIQELIAJBIGokACABCxgAIAAgAykDABANIAAgBSkDABD4ARCSAwvWBAICfwJ+IwBBMGsiBSQAAkAgAAJ/AkAgACAFQSBqEI8DIggQC0UEQCABQTAQPyIGRQRAIABB4OcAQQAQFAwCCwJAIARFBEAgBikDCBANIQEMAQsgACAGKQMAIgFBBkEXIARBAUYbIAFBABASIgEQCw0CIAEQEEUEQCABECZFDQELIAMpAwAQDSEBIARBAUYEQCAFIAAgAUEBEJIDNwMAIAVBIGoMBAsgBSABNwMAIAVBIGpBCHIMAwsgBSAAIAYpAwAgASACQQBKIAMgBUEUahCWBSIHNwMYIAAgARAKIAcQCw0BIAUoAhRBAkYEQCAFIAAgByAFQRRqEKAFNwMYIAAgBxAKIAUpAxgiBxALDQILIAcQCw0BIAAgACkDUEEBIAVBGGpBABCMAiIBEAsEQCAAIAUpAxgQCgwCCyAFKAIUIQMjAEEQayICJAAgAiADQQBHrUKAgICAEIQ3AwggAEE2QQFBAEEBIAJBCGoQ5QEhByACQRBqJAAgBSAHNwMAAkAgBxALRQRAIAAgBSkDGBAKIAVCgICAgDA3AwggACABIAUgBUEgahC6AiECIAAgBxAKIAAgARAKIAAgBSkDIBAKIAAgBSkDKBAKIAINAQwFCyAAIAEQCiAAIAUpAxgQCiAAIAUpAyAQCiAAIAUpAygQCgsgACAIEAoLQoCAgIDgACEIDAILIAUgABCRATcDACAFQSBqQQhyCykDAEKAgICAMEEBIAUQIiEBIAAgBSkDABAKIAAgARAKIAAgBSkDIBAKIAAgBS
 
kDKBAKCyAFQTBqJAAgCAsGACABEA0L8QIBBX4jAEEwayICJAACQCABECBFBEAgABAoQoCAgIDgACEFDAELIAAgAkEgaiABEMECIgUQCw0AQoCAgIAwIQZCgICAgDAhBAJAAkAgACABQYABIAFBABASIggQCw0AIAAgCBBnDQAgACADKQMAQQAQ9QEiBBALBEAMAQsgACAEQeoAIARBABASIgYQCw0AA0AgAiAAIAQgBiACQRRqEKsBIgc3AxggBxALDQEgAigCFA0CIAAgCCABQQEgAkEYahAiIQcgACACKQMYEAogBxALRQRAIAAgACAHQf8AQQIgAkEgahC5AhCNAkUNAQsLIAAgBEEBEK8BGgsgAiAAEJEBNwMIIAAgAikDKEKAgICAMEEBIAJBCGoQIiEBIAAgAikDCBAKIAAgBSABIAEQCyIDGxAKQoCAgIDgACAFIAMbIQULIAAgCBAKIAAgBhAKIAAgBBAKIAAgAikDIBAKIAAgAikDKBAKCyACQTBqJAAgBQv2AgIFfgF/IwBBIGsiAiQAIAAgBSkDABD4ASELIAIgBSkDECIHNwMYIAUpAyAhCSAFKQMYIQhCgICAgOAAIQECQCAAIAJBFGogBSkDCBCTAg0AAkAgCw0AIAVCgYCAgBA3AwACQCAEQQNxIgVBAUYEQCAAED0iBhALDQMCQCAAQaDmAEGp5gAgBEEEcSIEGxBxIgoQCw0AIAAgBkGIASAKQQcQGUEASA0AIAAgBkGJAUHAACAEGyADKQMAEA1BBxAZQX9KDQILIAAgBhAKDAMLIAMpAwAQDSEGCyAAIAcgAigCFCAGQQcQnAFBAEgNASAAIAlBfxDgAyIDQQBIDQEgA0UNAAJAIAVBAkYEQCACIAAgBxCEBSIGNwMIIAYQCw0DIAAgCEKAgICAMEEBIAJBCGoQIiEBIAAgAikDCBAKDAELIAAgCEKAgICAMEEBIAJBGGoQIiEBCyABEAsNASAAIAE
 
QCgtCgICAgDAhAQsgAkEgaiQAIAELyQYCDX4BfyMAQfAAayICJAAgAkKAgICAMDcDUAJAIAEQIEUEQCAAEChCgICAgOAAIQkMAQsgACACQeAAaiABEMECIgkQCw0AQoCAgIAwIQhCgICAgDAhBkKAgICAMCEHAkACQCAAIAFBgAEgAUEAEBIiDhALDQAgACAOEGcNAAJAIAAgAykDAEEAEPUBIgcQCwRADAELIAAgB0HqACAHQQAQEiIIEAsNACACIAAQTiIFNwNQIAUQCw0AIAAQTiIGEAsNASAAIAZBAEIBQQcQnAFBAEgNASACQeAAaiAEQQJGQQN0ciEDIAIpA2AhESACKQNoIQ8CQAJAA0AgAiAAIAcgCCACQQxqEKsBIgU3A1ggBRALDQQgAigCDEUEQCAAIA4gAUEBIAJB2ABqECIhCyAAIAIpA1gQCiALEAsNAyACIAo3AxggAkKAgICAEDcDECACIAIpA1A3AyAgAiADKQMANwMoIAIgBjcDMCAAQTVBASAEQQUgAkEQahDlASIFEAsNAgJAIARBAUYEQCAAQTVBAUEFQQUgAkEQahDlASIMEAsNBAwBCwJAIARBAkcEQCAFIRAgDyINIQUMAQsgESINIRAgACACKQNQIAqnQoCAgIAwQQcQnAFBAEgNBQsgBSEMIA0QDRogECEFCyAAIAZBARDgA0F/TARAIAAgCxAKIAAgBRAKIAAgDBAKDAQLIAIgDDcDSCACIAU3A0AgACALQf8AQQIgAkFAaxC5AiENIAAgBRAKIAAgDBAKIApCAXwhCiAAIA0QjQJFDQEMAwsLIAAgBkF/EOADIhJBAEgNAyASRQ0EIARBAkYEQCAAIAIpA1AQhAUiARALDQQgACACKQNQEAogAiABNwNQCyAAIAAgAykDAEKAgICAMEEBIAJB0ABqECIQjQINAwwECyAAIAsQCgsgACAHQQEQrwEaDAELCyACIAAQkQE3AwAgACACKQNo
 
Ig9CgICAgDBBASACECIhASAAIAIpAwAQCiABEAtFBEAgACABEAoMAQsgACAJEApCgICAgOAAIQkLIAAgDhAKIAAgBhAKIAAgAikDUBAKIAAgCBAKIAAgBxAKIAAgAikDYBAKIAAgDxAKCyACQfAAaiQAIAkLCQAgBSkDABANCxUAIAAgBSkDABANEJIBQoCAgIDgAAurAQEBfiMAQRBrIgIkACAFKQMAIQYgAiAAIAUpAwhCgICAgDBBAEEAECIiATcDCAJAIAEQCw0AIAAgBkEBIAJBCGpBABCMAiEBIAAgAikDCBAKIAEQCw0AIAIgAEEzQTQgBBtBAEEAQQEgAxDlASIGNwMAIAYQCwRAIAAgARAKIAIpAwAhAQwBCyAAIAFB/wBBASACELkCIQEgACACKQMAEAoLIAJBEGokACABC/EBAQJ+IwBBIGsiAiQAIAMpAwAhBAJAIAAgAUKAgICAMBDyASIFEAsNAAJAIAAgBBA6RQRAIAIgBBANIgQ3AxAgAiAEEA03AxgMAQsgAiAENwMIIAIgBTcDAEEAIQMDQCADQQJGDQEgAkEQaiADQQN0aiAAQTJBASADQQIgAhDlASIENwMAIAQQCwRAIANBAUYEQCAAIAIpAxAQCgsgACAFEApCgICAgOAAIQUMAwUgA0EBaiEDDAELAAsACyAAIAUQCiAAIAFB/wBBAiACQRBqEMMCIQUgACACKQMQEAogACACKQMYEAoLIAJBIGokACAFCzkAIwBBEGsiAiQAIAJCgICAgDA3AwAgAiADKQMANwMIIAAgAUH/AEECIAIQwwIhASACQRBqJAAgAQulAQIBfwN+IwBBEGsiAiQAQoCAgIDgACEFAkAgACABQSoQaEUNACAAIAFCgICAgDAQ8gEiBhALBEAgBiEFDAELIAAgAiAGEMECIQcgACAGEAoCQCAHEAsNACAAIAEgAyACELoCIQMDQCAEQQJGRQRAIAAgAiAEQQN0aikDA
 
BAKIARBAWohBAwBCwsgA0UNACAAIAcQCgwBCyAHIQULIAJBEGokACAFC98BAgN+AX8jAEEQayIGJAAgAUEFRgRAIAIpAxAhAyAAIAIpAxgQ+AEhASAGIAIpAyAiBDcDCCAGAn4gAxAQBEAgBBANIgMgAUUNARogACADEJIBQoCAgIDgAAwBCyAAIANCgICAgDBBASAGQQhqECILIgM3AwAgAxALIgEEQCAGIAAQkQEiAzcDAAtCgICAgDAhBCAAIAIgAUEDdGopAwAiBRAQBH4gAwUgACAFQoCAgIAwQQEgBhAiIQQgBikDAAsQCiAGQRBqJAAgBA8LQdfjAEGhDUHX6QJB4eMAEAAAC4EBAQN/AkAgAUEyED8iBEUNACAEQcwAaiEDIARByABqIQUDQCADKAIAIgMgBUZFBEAgACADKQMQIAIQISAAIAMpAxggAhAhIAAgAykDICACECEgACADKQMoIAIQISADQQRqIQMMAQsLIAQoAgRBfnFBBEYNACAAIARBCGogAhDwAwsLFgEBfyABQTIQPyICBEAgACACEK0FCwslAQF/IAFBMBA/IgMEQCAAIAMpAwAgAhAhIAAgAykDCCACECELCycBAX8gAUEwED8iAgRAIAAgAikDABAlIAAgAikDCBAlIAAgAhAfCwsWAQF/IAGnKAIgIgIEQCAAIAIQrgULCygBAX8gAacoAiAiAgRAIAAgAigCCBCGBSAAIAIpAwAQJSAAIAIQHwsLgAEBBX8gAUEqED8iBQRAIAVBBGohBgNAIARBAkZFBEAgBiAEQQN0aiIHQQRqIQMDQCADKAIAIgMgB0ZFBEAgACADKQMIIAIQISAAIAMpAxAgAhAhIAAgAykDGCACECEgA0EEaiEDDAELCyAEQQFqIQQMAQsLIAAgBSkDGCACECELC2kBBn8gAUEqED8iBARAIARBBGohBQNAIAJBAkZFBEAgBSACQQN0aiIGKAIEIQMDQCADIAZGRQ
 
RAIAMoAgQhByAAIAMQuwIgByEDDAELCyACQQFqIQIMAQsLIAAgBCkDGBAlIAAgBBAfCwtYAQF/QQAhAgN+IAJBAkYEQEKAgICAMA8LIAUgAkEDdCIEaiIGKQMAEBAEfiAGIAMgBGopAwAQDTcDACACQQFqIQIMAQUgAEGg4wBBABAUQoCAgIDgAAsLC88CAQN/IwBBEGsiByQAAn4gACABIAVBI2oQaCIDRQRAIARBADYCAEKAgICA4AAMAQsCQCADKQMAIgEQEA0AIAEgBUEfahA/IgYEQAJAIAMoAgwiCEUEQCAGKAIIIQIMAQsgCCgCFCECIAAoAhAgCBDyAwsgBkEEaiEGA0AgAiAGRgRAIANBADYCDCAAIAMpAwAQCiADQoCAgIAwNwMADAMLIAJBDGsoAgAEQCACKAIEIQIMAQsLIAJBEGsiBiAGKAIAQQFqNgIAIAMgBjYCDCAEQQA2AgAgAygCCCIDRQRAIAIpAxAQDQwDCyAHIAIpAxAiATcDACAFRQRAIAIpAxghAQsgByABNwMIIANBAUYEQCABEA0MAwsgAEECIAcQkAMMAgtBoOIAQaENQf3nAkGq4gAQAAALIARBATYCAEKAgICAMAshASAHQRBqJAAgAQt4AQJ+QoCAgIDgACEGAkAgACABIARBA3EiAkEfahBoRQ0AIAAgAkEjahChASIFEAsNACAAQRAQLSICRQRAIAAgBRAKQoCAgIDgAA8LIAEQDSEBIAJBADYCDCACIARBAnU2AgggAiABNwMAIAUgAhCKASAFIQYLIAYLkwICA34CfyMAQSBrIggkAEKAgICA4AAhBQJAIAAgASAEQR9qEGgiCUUNACADKQMAIQdCgICAgDAhBiACQQJOBEAgAykDCCEGCyAAIAcQZw0AIAlBBGohAiAJKAIIIQMDQCACIANGBEBCgICAgDAhBQwCCyADQQxrKAIABEAgAygCBCEDBSADQRBrIgkgCSgCAEEBajY
 
CACAIIAMpAxAQDSIFNwMIIARFBEAgAykDGBANIQULIAggATcDECAIIAU3AwAgACAHIAZBAyAIECIhBSAAIAgpAwAQCiAERQRAIAAgCCkDCBAKCyADKAIEIQMgACgCECAJEPIDIAUQCw0CIAAgBRAKCwwACwALIAhBIGokACAFCzEAIAAgASACQR9qEGgiAEUEQEKAgICA4AAPCyAAKAIMIgBBAE4EQCAArQ8LIAC4EBULWQEBfyAAIAEgBEEfahBoIgJFBEBCgICAgOAADwsgAkEEaiEDIAIoAgghBAN+IAMgBEYEfkKAgICAMAUgBEEQayEFIAQoAgQhBCAAKAIQIAIgBRCIBQwBCwsLSQAgACABIARBH2oQaCICRQRAQoCAgIDgAA8LIAAgAiADKQMAEP4CEP0CIgNFBEBCgICAgBAPCyAAKAIQIAIgAxCIBUKBgICAEAs1ACAAIAEgBEEfahBoIgJFBEBCgICAgOAADwsgACACIAMpAwAQ/gIQ/QJBAEetQoCAgIAQhAs+ACAAIAEgBEEfahBoIgJFBEBCgICAgOAADwsgACACIAMpAwAQ/gIQ/QIiAEUEQEKAgICAMA8LIAApAygQDQv5AwIDfgR/QoCAgIDgACEHAkAgACABIARBH2oQaCICRQ0AIAMpAwAQ/gIhBQJAIAIoAgBFDQAgBRAgDQAgABAoQoCAgIDgAA8LQoCAgIAwIQYgBEEBcUUEQCADKQMIIQYLAkAgACACIAUQ/QIiBARAIAAgBCkDKBAKDAELAn9BACAAQTAQLSIDRQ0AGiADIAI2AgggA0IBNwMAAkAgAigCAARAIAMgBaciBCgCGDYCDCAEIAM2AhgMAQsgBRANGgsgAyAFNwMgIANBGGogAigCECACKAIUQQFrIAUQ4gNxQQN0ahBMIANBEGogAkEEahBMIAIgAigCDEEBaiIENgIMIAIoAhggBE0EQCMAQRBrIggkACAAIAIoAhBBBCACKAIU
 
IgBBAXQgAEEBRhsiAEEDdCAIQQxqELMBIgkEQCAIKAIMQQN2IABqIQRBACEAA0AgACAERwRAIAkgAEEDdGoQbiAAQQFqIQAMAQsLIARBAWshCiACQQhqIQAgAkEEaiELA0AgCyAAKAIAIgBHBEAgAEEMaygCAEUEQCAAQQhqIAkgACkDEBDiAyAKcUEDdGoQTAsgAEEEaiEADAELCyACIAQ2AhQgAiAJNgIQIAIgBEEBdDYCGAsgCEEQaiQACyADCyIERQ0BCyAEIAYQDTcDKCABEA0hBwsgBwswACAFKQMAIgFBKRA/IgIEQCACQQE6ABEgACABEAogBUKAgICAIDcDAAtCgICAgDALlAEBAn5CgICAgDAhAQJAIABCgICAgDAgAiADEIgGIgQQCw0AAn4jAEEQayICJAAgAiAENwMIIABBMUEAQQBBASACQQhqEOUBIQEgAkEQaiQAIAELEAsNACAAED0iBRALDQAgACAFQYMBIARBBxAZGiAAIAVBhAEgAUEHEBkaIAUPCyAAIAQQCiAAIAEQCkKAgICA4AAL2gICA38CfiMAQdAAayIGJABBfyEHAkAgACAGQcgAaiABQcIAEIQBIghFDQAgBikDSCIBEBAEQCAAIAgpAwAgAiADEA0gBCAFEIgEIQcMAQsCQAJAIAAgAhBeIgkQCwRAIAAgARAKDAELIAgpAwAhCiAGIAQ3AzggBiADNwMwIAYgCTcDKCAGIAo3AyAgACABIAgpAwhBBCAGQSBqEDUhASAAIAkQCiABEAsNAiAAIAEQLCIHBEAgACAGIAgoAgAgAhBTIgJBAEgNASACRQ0DAkAgBigCACICQRNxRQRAIAAgBikDCCADEFhFDQEMBAsgAkERcUEQRw0DIAYpAxgQEEUNAwsgACAGEE0gAEGj3ABBABAUDAELIAVBgIABcUUEQEEAIQcgBUGAgAJxRQ0DIAAQ+gFFDQMLIABBu9wAQQAQFAtBfyEHDAELI
 
AAgBhBNCyAGQdAAaiQAIAcLogICAn8CfiMAQUBqIgQkAAJAAkAgACAEQThqIAFBwQAQhAEiBUUNACAEKQM4IgEQEARAIAAgBSkDACACIANBABASIQEMAgsgACACEF4iBhALBEAgACABEAoMAQsgBSkDACEHIAQgAzcDMCAEIAY3AyggBCAHNwMgIAAgASAFKQMIQQMgBEEgahA1IQEgACAGEAogARALDQAgACAEIAUoAgAgAhBTIgJBAEgNACACRQ0BAkACQCAEKAIAIgJBE3FFBEAgACAEKQMIIAEQWEUNAQwCCyACQRFxQRBHDQEgBCkDEBAQRQ0BIAEQEA0BCyAAIAQQTSAAIAEQCiAAQYvcAEEAEBQMAQsgACAEEE0MAQtCgICAgOAAIQELIARBQGskACABC/YBAgN/An4jAEFAaiIDJABBfyEEAkAgACADQThqIAFB4wAQhAEiBUUNACADKQM4IgEQEARAIAAgBSkDACACEHchBAwBCwJAAkAgACACEF4iBhALBEAgACABEAoMAQsgBSkDACEHIAMgBjcDKCADIAc3AyAgACABIAUpAwhBAiADQSBqEDUhASAAIAYQCiABEAsNAiAAIAEQLCIEDQIgACADIAUoAgAiBCACEFMiAkEASA0AIAJFDQEgAygCACECIAAgAxBNIAJBAXEEQCAELQAFQQFxDQILIABB89sAQQAQFAtBfyEEDAELQQAhBAsgA0FAayQAIAQLuwUCA38DfiMAQUBqIgckAEF/IQgCQCAAIAdBOGogAUHlABCEASIJRQ0AIAcpAzgiChAQBEAgACAJKQMAIAIgAyAEIAUgBhB1IQgMAQsCQCAAIAIQXiILEAsNAAJ+AkAgABA9IgEQCw0AIAZBgBBxBEAgACABQcEAIAQQDUEHEBkaCyAGQYAgcQRAIAAgAUHCACAFEA1BBxAZGgsgBkGAwABxBEAgACABQcAAIAMQDUEHEBkaCyAGQYAEcQRAIA
 
AgAUE+IAZBAXZBAXGtQoCAgIAQhEEHEBkaCyAGQYAIcQRAIAAgAUE/IAZBAnZBAXGtQoCAgIAQhEEHEBkaCyAGQYACcUUNACAAIAFBPSAGQQFxrUKAgICAEIRBBxAZGgsgAQsQCwRAIAAgCxAKDAELIAkpAwAhDCAHIAE3AzAgByALNwMoIAcgDDcDICAAIAogCSkDCEEDIAdBIGoQNSEKIAAgCxAKIAAgARAKIAoQCw0BIAAgChAsRQRAQQAhCCAGQYCAAXFFDQIgAEGw2wBBABAUQX8hCAwCCyAAIAcgCSgCACIJIAIQUyICQQBIDQEgBkGBAnEhCAJAAkAgAkUEQCAIQYACRg0BQQEhCCAJLQAFQQFxRQ0BDAQLAkAgBygCACICIAYQoQNFIAhBgAJGQQAgAkEBcRtyDQACQCAGQYAwcQRAIAJBEXFBEEcNASAGQYAQcQRAIAAgBCAHKQMQEFhFDQMLIAZBgCBxRQ0BIAAgBSAHKQMYEFgNAQwCCyAGQYDAAHFFDQAgBkECcUVBACACQQNxIgJBAkYbDQEgAg0AIAAgAyAHKQMIEFhFDQELIAZBgARxRQ0CIAcoAgBBE3FBAkcNAgsgACAHEE0LIABB0NsAQQAQFEF/IQgMAgsgACAHEE1BASEIDAELIAAgChAKCyAHQUBrJAAgCAuIAgIEfwJ+IwBBQGoiAyQAQX8hBQJAIAAgA0E4aiABQeQAEIQBIgRFDQAgAykDOCIBEBAEQCAAIAQpAwAgAkEAEN0BIQUMAQsgACACEF4iBxALBEAgACABEAoMAQsgBCkDACEIIAMgBzcDKCADIAg3AyAgACABIAQpAwhBAiADQSBqEDUhASAAIAcQCiABEAsNACAAIAEQLCIGRQRAQQAhBQwBCyAAIAMgBCgCACACEFMiAkEASA0AIAIEQAJAAkAgAy0AAEEBcQRAIAAgBCkDABCfASICQQBIDQEgAg0CCyAAQY3bAEEAEBQLIAA
 
gAxBNDAILIAAgAxBNCyAGIQULIANBQGskACAFC+QFAgt/AX4jAEFAaiIFJABBfyELAkAgACAFQThqIANB5wAQhAEiBkUNACAFKQM4IgMQEARAIAAgASACIAYoAgBBAxCQASELDAELIAAgAyAGKQMIQQEgBhA1Ig8QCw0AIAVBADYCLCAFQQA2AjQgBUEANgIwIAAgBUE0aiAPENoBIQcgBSgCNCEKAkAgBw0AAkAgCkUNACAAIApBA3QQaiIJDQBBACEJDAELAn8CQANAAkAgBCAKRgRAIApBASAKQQFLGyEIQQEhBANAIAQgCEYNAiAJIAQgCSAEQQN0aigCBBCKBSEHIARBAWohBCAHQQBIDQALIABB79kAQQAQFEEADAQLIAAgDyAEEHgiAxALDQICQCADEJsBDQAgAxD3Aw0AIAAgAxAKIABBwtkAQQAQFEEADAQLIAAgAxA5IQggACADEAogCEUNAiAJIARBA3RqIgdBADYCACAHIAg2AgQgBEEBaiEEDAELC0EAIAAgBikDABCfASIMQQBIDQEaIAYtABEEQCAAEMgCDAELIAAgBUEsaiAFQTBqIAYoAgBBAxCQAQRAIAUoAjAhBCAFKAIsIQgMAwsgBSgCLCEIIAUoAjAhBEEAIQcDQCAEIAdHBEAgBi0AEQRAIAAQyAIMBQsgACAFQQhqIAYoAgAgCCAHQQN0aiINKAIEEFMiDkEASA0EAkAgDkUNACAAIAVBCGoQTSAFLQAIQQFxQQAgDBsNACAJIAogDSgCBBCKBSINQX9MBEAgAEGJ2gBBABAUDAYLIAwNACAJIA1BA3RqQQE2AgALIAdBAWohBwwBCwsCQCAMDQBBACEGA0AgBiAKRg0BIAZBA3QhByAGQQFqIQYgByAJaigCAA0ACyAAQcHaAEEAEBQMAwsgACAIIAQQZCAAIA8QCiABIAk2AgAgAiAKNgIAQQAhCwwDC0EACyEEQQAhCAsgACAIIAQQZCAA
 
IAkgChBkIAAgDxAKCyAFQUBrJAAgCwvrAwIEfwJ+IwBB4ABrIgQkAEF/IQUCQCAAIARB2ABqIAJB5gAQhAEiBkUNACAGKAIAIQcgBCkDWCICEBAEQCAAIAEgByADEFMhBQwBCyAAIAMQXiIIEAsEQCAAIAIQCgwBCyAGKQMAIQkgBCAINwNIIAQgCTcDQCAAIAIgBikDCEECIARBQGsQNSECIAAgCBAKIAIQCw0AAkACQAJAAkAgAhAgDQAgAhAQDQAgACACEAoMAQsgACAEIAcgAxBTIgNBf0wNAiADBEAgACAEEE0LIAIQEARAQQAhBSADRQ0EIAQtAABBAXFFDQEgBy0ABUEBcUUNAQwECyAAIAYpAwAQnwEiBkF/TA0CIAAgBEEgaiACEIsFIQcgACACEAogB0EASA0DAkAgAwRAIAQoAgBBgDpBgM4AIAQoAiAiA0EQcRsgA3IQoQNFDQEgA0EBcQ0DIAQoAgAiBUEBcQ0BIANBEnENAyAFQQJxDQEMAwsgBkUNACAELQAgQQFxDQILIAAgBEEgahBNCyAAQcfYAEEAEBRBfyEFDAILAkAgAQRAIAEgBCkDIDcDACABIAQpAzg3AxggASAEKQMwNwMQIAEgBCkDKDcDCAwBCyAAIARBIGoQTQtBASEFDAELIAAgAhAKCyAEQeAAaiQAIAULJQEBfyABQSkQPyIDBEAgACADKQMAIAIQISAAIAMpAwggAhAhCwsnAQF/IAFBKRA/IgIEQCAAIAIpAwAQJSAAIAIpAwgQJSAAIAIQHwsLFgAgACADKQMAIAMpAwggAykDEBD+AwurAQIDfgJ/IwBBEGsiByQAQoCAgIDgACEEAkAgACAHQQxqIAMpAwAQkAIiCEUNACAAIAggBygCDEGQyAAQ/wMhASAAIAgQNgJAIAEQCyACQQJIcg0AIAAgAykDCCIGEDpFDQAgABA9IgUQCwRAIAAgARAKDAILIAAgBUEvIAFBBxAZQ
 
X9KBEAgACAFQS8gBhCMBSEECyAAIAUQCgwBCyABIQQLIAdBEGokACAEC70CAQN+IwBBEGsiAyQAIAQCfwJAAkAgACABQScQaCICRQRAQoCAgIAwIQFCgICAgDAhBgwBCyACKAIYBEBCgICAgDAhAUEBDAMLQoCAgIAwIQYgACACKQMAIgggAikDCCIHENgBIgEQCw0AIAEQJgRAIAJBATYCGEKAgICAMCEBQQEMAwsgAigCEARAIAAgACABQgAQYhA+IgYQCw0BIAYQ9gEEQCAAIANBCGogACAIQdUAIAhBABASEKwBQQBIDQIgACAIQdUAAn4gB6cgAykDCCACKAIUEIEDIgdCgICAgAh8Qv////8PWARAIAdC/////w+DDAELIAe5EBULEEhBf0wNAgsgACAGEAoMAgsgAkEBNgIYDAELIAAgARAKIAAgBhAKQoCAgIDgACEBC0EACzYCACADQRBqJAAgAQsGACABEA0LqAYCBH8LfiMAQTBrIgQkAAJAIAEQIEUEQCAAEChCgICAgOAAIQEMAQtCgICAgDAhCQJAAkAgACADKQMAECsiDxALBEBCgICAgDAhCkKAgICAMCEBQoCAgIAwIQxCgICAgDAhEAwBCyAAIAEgACkDSBDyASIQEAsEQEKAgICAMCEKQoCAgIAwIQFCgICAgDAhDAwBCwJAAkAgACAAIAFB7QAgAUEAEBIQPiIMEAsNACAMpyICQfUAQQAQ1wEhBiACQfkAQQAQ1wFBf0wEQCAAQb4VIAxBzdMAEL0BIgwQCw0BCyAEIAw3AyggBCABNwMgIAAgEEECIARBIGoQrgEiChALDQEgABBOIgEQCw0CAkAgAykDCCIIEBAEQEF/IQMgBEF/NgIcDAELIAAgBEEcaiAIEMQBQQBIDQMgBCgCHCIDDQAMBAsCQCAPpyIHKAIEQf////8HcSIFBEAgBkF/c0EfdiEGIAOtIRIgBa0hEUEAIQIDQCACrSELIA
 
IhAwNAIAMgBU8NAyAAIApB1QAgA60iDhBIQQBIDQYgACAJEAogACAKIA8Q2AEiCRALDQYCQCAJECYNACAAIARBEGogACAKQdUAIApBABASEKwBDQcgESAEKQMQIghTBEAgBCARNwMQIBEhCAsgCCALUQ0AIAAgByACIAMQmgEiCxALDQcgACABIA0gCxBtQQBIDQcgDUIBfCILIBJRDQggACAEQQhqIAkQQA0HIAinIQJCASEIIA0gBCkDCCIOQgEgDkIBVRt8IQ0DQCALIA1RDQMgACAAIAkgCBBiED4iDhALDQggACABIAsgDhBtQQBIDQggCEIBfCEIIAtCAXwiCyASUg0ACwwICyAHIA4gBhCBA6chAwwACwALAAsgACAKIA8Q2AEiCRALDQMgCRAmRQ0EQQAhAgsgACAHIAUgAiACIAVLGyAFEJoBIggQCw0CIAAgASANIAgQbUF/Sg0DDAILQoCAgIAwIQoLQoCAgIAwIQELIAAgARAKQoCAgIDgACEBCyAAIA8QCiAAIBAQCiAAIAoQCiAAIAwQCiAAIAkQCgsgBEEwaiQAIAELmQIBBH4CfgJAIAEQIEUEQCAAECgMAQtCgICAgDAhBgJAAkAgACADKQMAECsiBxALBEBCgICAgDAhBAwBCyAAIAFB1QAgAUEAEBIiBBALDQAgACAEQgAQWEUEQCAAIAFB1QBCABBIQQBIDQELIAAgASAHENgBIgUQCw0BIAAgAUHVACABQQAQEiIGEAsNAQJAIAAgBiAEEFgEQCAAIAQQCgwBCyAAIAFB1QAgBBBIQQBODQBCgICAgDAhBAwCCyAAIAcQCiAAIAYQCkL/////DyAFECYNAxogACAFQdcAIAVBABASIQEgACAFEAogAQ8LQoCAgIAwIQULIAAgBRAKIAAgBxAKIAAgBhAKIAAgBBAKC0KAgICA4AALC7QDAgV+AX8jAEEgayICJAACQAJAIAEQIEUEQCAAECgMAQt
 
CgICAgDAhBQJAIAAgAykDABArIggQCwRAQoCAgIAwIQRCgICAgDAhBkKAgICAMCEHDAELAkACQCAAIAEgACkDSBDyASIHEAsEQEKAgICAMCEEDAELIAAgACABQe0AIAFBABASED4iBBALRQ0BC0KAgICAMCEGDAELIAIgBDcDGCACIAE3AxAgACAHQQIgAkEQahCuASIGEAsNACAAIAJBCGogACABQdUAIAFBABASEKwBDQAgACAGQdUAAn4gAikDCCIBQoCAgIAIfEL/////D1gEQCABQv////8PgwwBCyABuRAVCxBIQQBIDQAgAEEnEKEBIgUQCw0AIABBIBAtIgNFDQAgAyAINwMIIAMgBjcDACADIASnIglB5wBBABDXAUF/c0EfdjYCECAJQfUAQQAQ1wEhCSADQQA2AhggAyAJQX9zQR92NgIUIAUgAxCKASAAIAcQCiAAIAQQCgwCCyAAIAgQCiAAIAcQCiAAIAQQCiAAIAYQCiAAIAUQCgtCgICAgOAAIQULIAJBIGokACAFC6UDAgV+An8jAEEQayICJAACQAJAIAEQIEUEQCAAECgMAQtCgICAgDAhBAJAAkAgACADKQMAECsiBhALDQAgACAAIAFB7gAgAUEAEBIQLCIDQQBIDQACQCADRQRAIAAgASAGENgBIQUMAQsgACAAIAFB7wAgAUEAEBIQLCIDQQBIDQEgACABQdUAQgAQSEEASA0BIAAQTiIFEAsNAiAGpyEJA0AgACAEEAogACABIAYQ2AEiBBALDQMgBBAmRQRAIAAgACAEQgAQYhA+IgcQCw0EIAcQ9gEhCiAAIAUgCCAHEI8BQQBIDQQgCEIBfCEIIApFDQEgACACQQhqIAAgAUHVACABQQAQEhCsAUEASA0EIAAgAUHVAAJ+IAkgAikDCCADEIEDIgdCgICAgAh8Qv////8PWARAIAdC/////w+DDAELIAe5EBULEEhBf0wNBAwBCwsgCKcN
 
ACAAIAUQCkKAgICAICEFCyAAIAQQCiAAIAYQCgwDC0KAgICAMCEFCyAAIAUQCiAAIAQQCiAAIAYQCgtCgICAgOAAIQULIAJBEGokACAFC6sSAgt/DH4jAEGQAWsiAiQAIAMpAwghGQJAIAEQIEUEQCAAEChCgICAgOAAIRQMAQsgACACQcgAakEAEEIaIAJBEGoiBkEANgIwIAZCgICAgMAANwMoIAYgADYCACAGIAZBCGo2AgRCgICAgDAhE0KAgICA4AAhFAJAAkAgACADKQMAECsiFRALBEBCgICAgDAhD0KAgICAMCEQQoCAgIAwIRFCgICAgDAhFwwBC0KAgICAMCEXAkAgACAZEDoiCkUEQCAAIBkQKyIXEAsNASAXpyEECyAAIAAgAUHuACABQQAQEhAsIgNBAEgNACADBEAgACAAIAFB7wAgAUEAEBIQLCIFQQBIDQEgACABQdUAQgAQSEEASA0BCwJAIARFDQAgA0UgBCgCBEH/////B3FyDQACf0EAIQRBfyAAIAFBPCABQQAQEiIPEAsNABogACAPIAApA0gQWCEGIAAgDxAKAkAgBkUNAEF/IQQgACABQYYBIAFBABASIg8QCw0AIA9BMEEAEI8EIQQgACAPEAoLIAQLRQ0AQQAhBiMAQTBrIgUkAEKAgICA4AAhDwJAIAAgAUEBENsBIgNFDQAgACAFQQhqQQAQQhoCQCAAIBUQKyISEAsNAAJAIAMoAgRBEGoiCy0AACIEQSFxIgxFBEAgBUIANwMgDAELIAAgAUHVACABQQAQEiIUEAsNASAAIAVBIGogFBCsAQ0BC0EAIQMCQCALLQABIgdBAUkNACAAIAdBA3QQLSIGDQBBACEGDAELIARBEHEhDSAEQQFxIQ4gEqciB0EQaiEJIAcpAgQiEKdBH3YhCiAFKQMgIRECQANAIBEgEEL/////B4NVDQECQCAGIAsgCSARpyAQp0H/////B3EgCiAAEMQEI
 
gRBAUcEQCAEQQBIDQEgDEVBACAEQQJHGw0DIAAgAUHVAEIAEEhBAEgNBAwDCyAGKAIAIQggBSAGKAIEIAlrIAp1IgQ2AiwgBSAErDcDICAIIAlrIAp1IgggA0oEQCAFQQhqIAcgAyAIEFcNBAsgDkUEQCAAIAFB1QAgBCIDrRBIQQBODQMMBAsCQCAIIAQiA0cNAAJAAkAgDUUNACAHKAIEIgNBf0oNACAIIANB/////wdxSQ0BCyAFIAhBAWoiAzYCLAwBCyAHIAVBLGoQ2QEaIAUoAiwhAwsgBSADrCIRNwMgIAcpAgQhECAEIQMMAQsLIABB1dIAQQAQQQwBCyAFQQhqIAcgAyAHKAIEQf////8HcRBXDQAgACASEAogACAGEBggBUEIahA3IQ8MAQsgACASEAogACAGEBggBUEIahBECyAFQTBqJAAgDyEUDAELIBWnIQYgA0UhC0KAgICAMCERA0ACQAJ/AkACQAJAIAAgASAVENgBIg8QCw0AIA8QJg0EAn8jAEEQayIHJAACf0F/IAJBEGoiAygCMA0AGgJAIAMoAigiBCADKAIsSARAIAMoAgQhBAwBCyAEIARBAXVqQR9qQW9xIQkgAygCACEEAkACQCADKAIEIgggA0EIakYEQCAEQQAgCUEDdCAHQQxqELMBIgRFDQEgBCAIKQMANwMAIAQgCCkDGDcDGCAEIAgpAxA3AxAgBCAIKQMINwMIIAcoAgwhCCADIAQ2AgQgAyAIQQN2IAlqNgIsDAMLIAQgCCAJQQN0IAdBDGoQswEiBA0BCyADEI8FIAMoAgAgDxAKIANBfzYCMEF/DAILIAcoAgwhCCADIAQ2AgQgAyAIQQN2IAlqNgIsCyADIAMoAigiA0EBajYCKCAEIANBA3RqIA83AwBBAAshAyAHQRBqJAAgCyADQQBIIgNyCwRAQQJBBCADGwwECyAAIBEQCiAAIAAgD0IAEGIQPiIREAsNACAREPYBRQ
 
0CIAAgAkHgAGogACABQdUAIAFBABASEKwBQX9KDQELQoCAgIAwIQ9CgICAgDAhEAwGCyAAIAFB1QACfiAGIAIpA2AgBRCBAyIPQoCAgIAIfEL/////D1gEQCAPQv////8PgwwBCyAPuRAVCxBIIgNBAE4NACADQR52QQJxDAELQQALIQNCgICAgDAhD0KAgICAMCEQIAMOBQEFAwUABQsLQQAhBUEAIQRCgICAgDAhD0KAgICAMCEQA0AgAigCOCAESgRAIAAgAkEMaiACKAIUIARBA3RqKQMAIhYQ2gFBAEgNAyAAIBEQCiAAIAAgFkIAEGIQPiIREAsNAyAAIAIgACAWQdcAIBZBABASEKwBDQMCQCACKQMAIhIgBikCBEL/////B4MiAVUEQCACIAE3AwAgASESDAELIBJCf1UNAEIAIRIgAkIANwMACyAAIBAQCiAAEE4iEBALDQMgACAQQgAgERANIhEQbUEASA0DIAIoAgwiA0EBIANBAUsbIgOtIRpCASEBA0AgASAaUgRAIAAgFiABEGIiGBALDQUgGBAQRQRAIAAgGBA+IhgQCw0GCyAAIBAgASAYEG0hByABQgF8IQEgB0EATg0BDAULCyAAIBMQCiAAIBZBhwEgFkEAEBIiExALDQMCQCAKBEAgACAQIBogEkL/////D4MQbUEASA0FIAAgECADQQFqrSAVEA0QbUEASA0FAkAgExAQDQAgACAQIANBAmqtIBMQDSIBEG1BAE4NACABIRMMBgsgAiAQNwNoIAJCgICAgDA3A2AgACAPEAogACAAIBlBAiACQeAAakEAEJoDED4hDwwBC0KAgICAMCEBIBMQEEUEQCAAIBMQKSIBEAsNBQsgAiAXNwOIASACIAE3A4ABIAIgEDcDeCACIBU3A2ggAiARNwNgIAIgEkL/////D4M3A3AgACAPEAogACACQeAAahCQBSEPIAAgARAKCyAPEAsNAyAFrCASVwRAIAJ
 
ByABqIAYgBSASpxBXGiACQcgAaiAPEIwBGiARpykCBEL/////B4MgEnynIQULIARBAWohBAwBCwsgAkHIAGogBiAFIAYoAgRB/////wdxEFcaIAJByABqEDchFAwCC0KAgICAMCEPQoCAgIAwIRBCgICAgDAhEQsgAkHIAGoQRAsgAkEQahCPBSAAIBcQCiAAIBEQCiAAIBAQCiAAIA8QCiAAIBMQCiAAIBUQCgsgAkGQAWokACAUC5IBACMAQSBrIgIkAAJ+AkAgARAgRQRAIAAQKAwBCyAAIAJBCGpBABBCGiACQQhqQS8QOxoCQCACQQhqIAAgAUHsACABQQAQEhCNAQ0AIAJBCGpBLxA7GiACQQhqIAAgAUHtACABQQAQEhCNAQ0AIAJBCGoQNwwCCyACQQhqEEQLQoCAgIDgAAshASACQSBqJAAgAQs/AQF+QoCAgIDgACEEIAAgASADKQMAENgBIgEQCwR+QoCAgIDgAAUgARAmIQIgACABEAogAkWtQoCAgIAQhAsLgAIBA34CQCAAIAFBARDbASICRQ0AIAMpAwghBgJAAkAgACADKQMAIgRBABDbASIDBEAgBhAQRQRAIABB99IAQQAQFEKAgICA4AAPCyADNQIAQoCAgICQf4QQDSEEIAM1AgRCgICAgJB/hBANIQUMAQtCgICAgDAhBQJ+IAQQEARAIABBLxAxDAELIAAgBBArCyIEEAsNASAAIAQgBhCEBCIFEAsNAQsgACACNQIAQoCAgICQf4QQCiAAIAI1AgRCgICAgJB/hBAKIAIgBT4CBCACIAQ+AgAgACABQdUAQgAQSEEASA0BIAEQDQ8LIAAgBBAKIAAgBRAKC0KAgICA4AALawEBfyABQv////9vWARAIAAQKEKAgICA4AAPCwJ+IAAgAUEAENsBIgNFBEBCgICAgDAgACABIAAoAigpA5ABEFgNARogAEESEJwDQoCAgIDgAA8LIAIgAygCBC0A
 
EHFBAEetQoCAgIAQhAsLxwMBB38jAEEgayIFJAACQAJAAkACQAJAIAFC/////29YBEAgABAoDAELIAAgASAAKAIoKQOQARBYDQIgACABQQEQ2wEiAg0BC0KAgICA4AAhAQwDCyACKAIAIgcpAgSnIgJB/////wdxIgMNAQsgAEHQ0gAQcSEBDAELIAAgBUEIaiADIAJBH3YQqgMaIAcoAgRB/////wdxIQhBACEAA0ACQAJAIAAgCEgEQCAAQQFqIQJBfyEGAkACfwJAAkACQAJAAkACQAJAIAcgABAvIgNB2wBrDgMDAQIACyACIQACQCADQQprDgQECwsFAAsgA0EvRw0HIARFDQVBASEEQS8hAwwHC0HcACEDIAIgCE4NBiAAQQJqIQAgByACEC8hBgwJC0EAIQRB3QAhAwwFC0HbACEDIAQgAiAITnINBiAAQQJqIAIgByACEC9B3QBGIgIbIQBB3QBBfyACGyEGQQEhBAwHC0HuAAwCC0HyAAwBC0EAIQRBLwshBkHcACEDCyACIQAMAgsgBUEIahA3IQEMAwsgAiEAQQEhBAsgBUEIaiADEJQBGiAGQQBIDQAgBUEIaiAGEJQBGgwACwALIAVBIGokACABC9gCAgN/AX4jAEEQayIEJAACQCABQv////9vWARAIAAQKEKAgICA4AAhBQwBC0KAgICA4AAhBSAAIAAgAUHuACABQQAQEhAsIgJBAEgNACACBH8gBEHnADoACCAEQQlqBSAEQQhqCyECIAAgACABQZ/PABDMAhAsIgNBAEgNACADBEAgAkHpADoAACACQQFqIQILIAAgACABQarPABDMAhAsIgNBAEgNACADBEAgAkHtADoAACACQQFqIQILIAAgACABQbTPABDMAhAsIgNBAEgNACADBEAgAkHzADoAACACQQFqIQILIAAgACABQe8AIAFBABASECwiA0EASA0AIAMEQCACQfUAOgAAIAJBAWohAgsgA
 
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
 
QwDCyACRQRAIAAgACgCAEEBazYCACAAIAAoAgRBCGs2AgQgARDpAQwDC0EAIAAoAgggACgCBCACakkNARogASACEPUFDwsgACACEKUFCw8LQQALJgAgAQRAIAAgACgCAEEBazYCACAAIAAoAgRBCGs2AgQgARDpAQsLKAEBfwJAIAGnKAIgIgNFDQAgAygCAEEERg0AIAAgA0EIaiACEPADCwscAQF/IAFBKBA/IgIEQCAAIAIQ7gMgACACEB8LCyUBAX8gAacoAiAiAwRAIAAgAykDACACECEgACADKQMIIAIQIQsLJwEBfyABpygCICICBEAgACACKQMAECUgACACKQMIECUgACACEB8LCx4BAX8gAacoAiAiAgRAIAAgAikDABAlIAAgAhAfCwtDAQJ/IAGnKAIgIgIEQAJAIAIpAwAiARDeBUUNACACKAIMIgNFDQAgACADEPIDIAIpAwAhAQsgACABECUgACACEB8LC1gBA38CQCABpygCICIERQ0AIARBCGohAyAEQQRqIQUDQCADKAIAIgMgBUYNASAEKAIARQRAIAAgAykDECACECELIAAgAykDGCACECEgA0EEaiEDDAALAAsLgQEBBX8gAacoAiAiAwRAIANBBGohBSADKAIIIQIDQCACIAVHBEAgAigCBCEGIAJBEGshBCACQQxrKAIARQRAAkAgAygCAARAIAQQpgUMAQsgACACKQMQECULIAAgAikDGBAlCyAAIAQQHyAGIQIMAQsLIAAgAygCEBAfIAAgAxAfCwshAQF/IAGnKAIgIgMEQCAAIAM1AgxCgICAgHCEIAIQIQsLQAEBfyABpygCICICBEAgACACNQIMQoCAgIBwhCIBEN4FBH4gAhBGIAI1AgxCgICAgHCEBSABCxAlIAAgAhAfCwtbAQJ/IAGnKAIgIgIEQAJAAkAgAi0ABUUNACAAKAK8ASIDRQ0AIAAoAsQBIAIoAgggAxEDAAwBCyACKA
 
IYIgNFDQAgACACKAIUIAIoAgggAxEGAAsgACACEB8LCykBAX8gACABpyICNQIkQoCAgICQf4QQJSAAIAI1AiBCgICAgJB/hBAlCxEAIAAgAacoAiApAwAgAhAhCxkBAX8gACABpygCICICKQMAECUgACACEB8LQQEDfwJAIAFBDxA/IgRFDQAgBEEIaiEFA0AgAyAELQAFTw0BIAAgBSADQQN0aikDACACECEgA0EBaiEDDAALAAsLQwEDfyABQQ8QPyIDBEAgA0EIaiEEA0AgAiADLQAFT0UEQCAAIAQgAkEDdGopAwAQJSACQQFqIQIMAQsLIAAgAxAfCwtJAQJ/IAAgAacoAiAiBCkDACACECEgACAEKQMIIAIQIQNAIAMgBCgCEE5FBEAgACAEIANBA3RqKQMYIAIQISADQQFqIQMMAQsLC0kBAn8gACABpygCICICKQMAECUgACACKQMIECUDQCADIAIoAhBORQRAIAAgAiADQQN0aikDGBAlIANBAWohAwwBCwsgACACEB8LjgEBBH8gAaciAygCJCEFIAMoAiAhBCADKAIoIgMEQCAAIAOtQoCAgIBwhCACECELIAQEQAJAIAVFDQBBACEDA0AgAyAEKAI8Tg0BAkAgBSADQQJ0aigCACIGRQ0AIAYtAAVBAXFFDQAgACAGIAIRAwALIANBAWohAwwACwALIAAgBK1CgICAgGCEIAIQIQsLcwEDfyABpyICKAIoIgMEQCAAIAOtQoCAgIBwhBAlCyACKAIgIgMEQCACKAIkIgQEQEEAIQIDQCACIAMoAjxORQRAIAAgBCACQQJ0aigCABD5ASACQQFqIQIMAQsLIAAgBBAfCyAAIAOtQoCAgIBghBAlCwsSACABpygCICIABEAgABCtAwsLDgAgACABpykDICACECELGQAgACABpyIAKQMgECUgAEKAgICAMDcDIAs1AQJ/IAGnIQQDQCADIAQoAihPRQRAIAAgBCg
 
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
 
HByb3BlcnR5ICclcycgb2YgdW5kZWZpbmVkAGNhbm5vdCBzZXQgcHJvcGVydHkgJyVzJyBvZiBudWxsAGNhbm5vdCBzZXQgcHJvcGVydHkgJyVzJyBvZiB1bmRlZmluZWQAcC0+Y2xhc3NfaWQgPT0gSlNfQ0xBU1NfQVJSQVkASlNfU2V0UHJvcGVydHlJbnRlcm5hbABwcm9wID09IEpTX0FUT01fbGVuZ3RoAG91dC1vZi1ib3VuZCBudW1lcmljIGluZGV4AG5vdCBhbiBvYmplY3QAb2JqZWN0IGlzIG5vdCBleHRlbnNpYmxlAHBycyAhPSBOVUxMAEpTX0RlZmluZVByb3BlcnR5AHByb3BlcnR5IGlzIG5vdCBjb25maWd1cmFibGUAbm9uIGludGVnZXIgaW5kZXggaW4gdHlwZWQgYXJyYXkAbmVnYXRpdmUgaW5kZXggaW4gdHlwZWQgYXJyYXkAb3V0LW9mLWJvdW5kIGluZGV4IGluIHR5cGVkIGFycmF5AGludmFsaWQgZGVzY3JpcHRvciBmbGFncwBjb3VsZCBub3QgZGVsZXRlIHByb3BlcnR5AGludmFsaWQgYXJyYXkgaW5kZXgAJWQAW2Z1bmN0aW9uIGJ5dGVjb2RlXQBjYW5ub3QgY29udmVydCBzeW1ib2wgdG8gc3RyaW5nAFt1bnN1cHBvcnRlZCB0eXBlXQBldmFsX3R5cGUgPT0gSlNfRVZBTF9UWVBFX0dMT0JBTCB8fCBldmFsX3R5cGUgPT0gSlNfRVZBTF9UWVBFX01PRFVMRQBKU19FdmFsVGhpcwBSZWdFeHAAdW5leHBlY3RlZCBkYXRhIGF0IHRoZSBlbmQAICAgICAgICAgIAAAAIwAAABeAAAAXwAAAGAAAABhAAAAYgAAAGMAAABkAAAAZQAAAGYAAABQcm94eQBBoBsL0wHALgAAkC8AAFAwAACwMAAAADEAAFAxAAAMCw
 
UEAgIAALIAAABnAAAAaAAAALMAAABpAAAAagAAALQAAABpAAAAagAAALUAAABAAAAAQQAAALYAAABrAAAAbAAAALcAAABrAAAAbAAAAC8AAABtAAAAbgAAALgAAABAAAAAQQAAALkAAABvAAAAcAAAAFByb21pc2UAQXN5bmNGdW5jdGlvbgBBc3luY0dlbmVyYXRvckZ1bmN0aW9uAERhdGUAT2JqZWN0AEZ1bmN0aW9uAEVycm9yAEGAHQslJlMAADBTAAA7UwAASlMAAFZTAABgUwAAaVMAAHdTAABBcnJheQBBsB0LhTFjb3B5V2l0aGluAGVudHJpZXMAZmlsbABmaW5kAGZpbmRJbmRleABmbGF0AGZsYXRNYXAAaW5jbHVkZXMAa2V5cwB2YWx1ZXMAAE51bWJlcgBCb29sZWFuAFN0cmluZwBTeW1ib2wAR2VuZXJhdG9yRnVuY3Rpb24AZXZhbAAAAAABAQICAgNBcnJheUJ1ZmZlcgBTaGFyZWRBcnJheUJ1ZmZlcgBUeXBlZEFycmF5AEJZVEVTX1BFUl9FTEVNRU5UAERhdGFWaWV3AG1yMSAhPSBOVUxMAGRlbGV0ZV93ZWFrX3JlZgBtci0+ZW1wdHkAbWFwX2RlY3JlZl9yZWNvcmQAc2YtPmN1cl9zcCAhPSBOVUxMAGFzeW5jX2Z1bmNfZnJlZQBzaXplICE9IDAAanNfZGVmX21hbGxvYwAAAG51bGwAZmFsc2UAdHJ1ZQBpZgBlbHNlAHJldHVybgB2YXIAdGhpcwBkZWxldGUAdm9pZAB0eXBlb2YAbmV3AGluAGluc3RhbmNlb2YAZG8Ad2hpbGUAZm9yAGJyZWFrAGNvbnRpbnVlAHN3aXRjaABjYXNlAGRlZmF1bHQAdGhyb3cAdHJ5AGNhdGNoAGZpbmFsbHkAZnVuY3Rpb24AZGVidWdnZXIAd2l0aABjbGFzcwBjb25zdABlbnVtAGV4cG9
 
ydABleHRlbmRzAGltcG9ydABzdXBlcgBpbXBsZW1lbnRzAGludGVyZmFjZQBsZXQAcGFja2FnZQBwcml2YXRlAHByb3RlY3RlZABwdWJsaWMAc3RhdGljAHlpZWxkAGF3YWl0AABsZW5ndGgAZmlsZU5hbWUAbGluZU51bWJlcgBtZXNzYWdlAGVycm9ycwBzdGFjawBuYW1lAHRvU3RyaW5nAHRvTG9jYWxlU3RyaW5nAHZhbHVlT2YAZXZhbABwcm90b3R5cGUAY29uc3RydWN0b3IAY29uZmlndXJhYmxlAHdyaXRhYmxlAGVudW1lcmFibGUAdmFsdWUAZ2V0AHNldABvZgBfX3Byb3RvX18AdW5kZWZpbmVkAG51bWJlcgBib29sZWFuAHN0cmluZwBvYmplY3QAc3ltYm9sAGludGVnZXIAdW5rbm93bgBhcmd1bWVudHMAY2FsbGVlAGNhbGxlcgA8ZXZhbD4APHJldD4APHZhcj4APGFyZ192YXI+ADx3aXRoPgBsYXN0SW5kZXgAdGFyZ2V0AGluZGV4AGlucHV0AGRlZmluZVByb3BlcnRpZXMAYXBwbHkAam9pbgBjb25jYXQAc3BsaXQAY29uc3RydWN0AGdldFByb3RvdHlwZU9mAHNldFByb3RvdHlwZU9mAGlzRXh0ZW5zaWJsZQBwcmV2ZW50RXh0ZW5zaW9ucwBoYXMAZGVsZXRlUHJvcGVydHkAZGVmaW5lUHJvcGVydHkAZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yAG93bktleXMAYWRkAGRvbmUAbmV4dAB2YWx1ZXMAc291cmNlAGZsYWdzAGdsb2JhbAB1bmljb2RlAHJhdwBuZXcudGFyZ2V0AHRoaXMuYWN0aXZlX2Z1bmMAPGhvbWVfb2JqZWN0PgA8Y29tcHV0ZWRfZmllbGQ+ADxzdGF0aWNfY29tcHV0ZWRfZmllbGQ+ADxjbGFzc19m
 
aWVsZHNfaW5pdD4APGJyYW5kPgAjY29uc3RydWN0b3IAYXMAZnJvbQBtZXRhACpkZWZhdWx0KgAqAE1vZHVsZQB0aGVuAHJlc29sdmUAcmVqZWN0AHByb21pc2UAcHJveHkAcmV2b2tlAGFzeW5jAGV4ZWMAZ3JvdXBzAHN0YXR1cwByZWFzb24AZ2xvYmFsVGhpcwB0b0pTT04AT2JqZWN0AEFycmF5AEVycm9yAE51bWJlcgBTdHJpbmcAQm9vbGVhbgBTeW1ib2wAQXJndW1lbnRzAE1hdGgASlNPTgBEYXRlAEZ1bmN0aW9uAEdlbmVyYXRvckZ1bmN0aW9uAEZvckluSXRlcmF0b3IAUmVnRXhwAEFycmF5QnVmZmVyAFNoYXJlZEFycmF5QnVmZmVyAFVpbnQ4Q2xhbXBlZEFycmF5AEludDhBcnJheQBVaW50OEFycmF5AEludDE2QXJyYXkAVWludDE2QXJyYXkASW50MzJBcnJheQBVaW50MzJBcnJheQBGbG9hdDMyQXJyYXkARmxvYXQ2NEFycmF5AERhdGFWaWV3AE1hcABTZXQAV2Vha01hcABXZWFrU2V0AE1hcCBJdGVyYXRvcgBTZXQgSXRlcmF0b3IAQXJyYXkgSXRlcmF0b3IAU3RyaW5nIEl0ZXJhdG9yAFJlZ0V4cCBTdHJpbmcgSXRlcmF0b3IAR2VuZXJhdG9yAFByb3h5AFByb21pc2UAUHJvbWlzZVJlc29sdmVGdW5jdGlvbgBQcm9taXNlUmVqZWN0RnVuY3Rpb24AQXN5bmNGdW5jdGlvbgBBc3luY0Z1bmN0aW9uUmVzb2x2ZQBBc3luY0Z1bmN0aW9uUmVqZWN0AEFzeW5jR2VuZXJhdG9yRnVuY3Rpb24AQXN5bmNHZW5lcmF0b3IARXZhbEVycm9yAFJhbmdlRXJyb3IAUmVmZXJlbmNlRXJyb3IAU3ludGF4RXJyb3IAVHlwZUVyc
 
m9yAFVSSUVycm9yAEludGVybmFsRXJyb3IAPGJyYW5kPgBTeW1ib2wudG9QcmltaXRpdmUAU3ltYm9sLml0ZXJhdG9yAFN5bWJvbC5tYXRjaABTeW1ib2wubWF0Y2hBbGwAU3ltYm9sLnJlcGxhY2UAU3ltYm9sLnNlYXJjaABTeW1ib2wuc3BsaXQAU3ltYm9sLnRvU3RyaW5nVGFnAFN5bWJvbC5pc0NvbmNhdFNwcmVhZGFibGUAU3ltYm9sLmhhc0luc3RhbmNlAFN5bWJvbC5zcGVjaWVzAFN5bWJvbC51bnNjb3BhYmxlcwBTeW1ib2wuYXN5bmNJdGVyYXRvcgAAKG5ld19oYXNoX3NpemUgJiAobmV3X2hhc2hfc2l6ZSAtIDEpKSA9PSAwAEpTX1Jlc2l6ZUF0b21IYXNoAGF0b20gPCBydC0+YXRvbV9zaXplAF9fSlNfQXRvbVRvVmFsdWUAc2gtPmhlYWRlci5yZWZfY291bnQgPT0gMABqc19mcmVlX3NoYXBlMABpICE9IDAASlNfRnJlZUF0b21TdHJ1Y3QAcnQtPmF0b21fY291bnQgPj0gMABwLT5yZWZfY291bnQgPT0gMABmcmVlX3plcm9fcmVmY291bnQAcy0+aXNfd2VhawByZXNldF93ZWFrX3JlZgAhbXItPmVtcHR5AAEAAAAFAAEUBQABFQUAARUFAAEXBQABFwEAAQABAAEAAQABAAEAAQABAAEAAQABAAIAAQUDAAEKAQEAAAECAQABAwIAAQECAAECAwABAgQAAQMGAAECAwABAwQAAQQFAAEDAwABBAQAAQUFAAECAgABBAQAAQMDAAEDAwABBAQAAQUFAAMCAQ0DAQENAwEADQMCAQ0DAgANAwABDQMDAQoBAQAAAQAAAAEBAgABAAAAAQICAAECAAABAQAAAQEAAAYAABgFAQEPAwIBCgECAQABAQEAAQEBAAUAARcFAAEXBQABFw
 
UBABcFAQAXBQIAFwECAwABAwAABgAAGAYAABgGAQAYBQEBFwUBAhcFAgAXAQIBAAEDAAABAwEAAQIBAAECAgABAwAAAQMBAAEEAAAFAgEXBQEBFwECAgABAgEAAQICAAEDAgABAwIAAgMDBQYCARgCAwEFBgICGAYDAxgDAAEQAwEAEAMBARADAAERAwEAEQMBAREDAAESAwEAEgMBARIDAAAQAwABEAMBABADAQAQAwABEgMBABIDAQASAwAAEAUBABYFAQAWBQAAFgUAARYFAAAWAQEAAAEBAQABAQEAAQICAAoBABoKAgEaCgEAGgoBABoKAQAaCgEAGgcAAhkHAAIZBwACGQUAAhcBAQEAAQEDAAEBAwABAQMAAgMFBQEBAQABAQIAAQMAAAEEBAABBAQAAgQFBQEAAAABAQIAAQECAAEBAgABAQEAAQEBAAEBAQABAQEAAQEBAAEBAgABAQIAAgAABwIAAAcCAQAHAQEBAAEBAQABAQEAAQIBAAUAARcBAgEAAQIBAAECAQABAgEAAQIBAAECAQABAgEAAQIBAAECAQABAgEAAQIBAAECAQABAgEAAQIBAAECAQABAgEAAQIBAAECAQABAgEAAQIBAAECAQABAgEAAQEBAAEAAAADAAAKAwAACgUAABYHAAEZBwABGQcBABkHAAEZCwACGwcAAhkHAAIZBwEBGQcBAhkHAQEZBQEBEwUAABMBAAEBAQABAQEAAQEBAAEBAQABAQEAAQEBAAEBAQABAQEAAQECAAEGAwABCwIAAQgCAAEIAQABAAIAAQcCAQAHAgEBBwEAAQIBAAECAQABAgEAAQIBAQACAQEAAgEBAAIBAQACAQEBAgEBAQIBAQECAQEBAgEAAQMBAAEDAQABAwEAAQMBAQADAQEAAwEBAAMBAQADAQEBAwEBAQMBAQEDAQEBAwEAAQQBAAEEAQABBAEAAQQBAQAEAQEABAEBAAQBAQAEAQEBBAEBAQQ
 
BAQEEAQEBBAEBAQACAQAJAgEACQIAAAkDAAAMAQEBDgEBAQ4BAQEOAQEBDgEBAQABAQEAAQEBAAEBAQBwLT5tYXJrID09IDAAZ2NfZGVjcmVmAHZhcl9yZWYtPmlzX2RldGFjaGVkAG1hcmtfY2hpbGRyZW4AcC0+cmVmX2NvdW50ID4gMABnY19kZWNyZWZfY2hpbGQAZ2Nfc2NhbgBwLT5nY19vYmpfdHlwZSA9PSBKU19HQ19PQkpfVFlQRV9KU19PQkpFQ1QgfHwgcC0+Z2Nfb2JqX3R5cGUgPT0gSlNfR0NfT0JKX1RZUEVfRlVOQ1RJT05fQllURUNPREUAZ2NfZnJlZV9jeWNsZXMASlNfQXRvbUdldFN0clJUADxudWxsPgAhYXRvbV9pc19mcmVlKHApAGNpcmN1bGFyIHByb3RvdHlwZSBjaGFpbgBwcm94eTogYmFkIHByb3RvdHlwZQBwcm94eTogaW5jb25zaXN0ZW50IHByb3RvdHlwZQByZXZva2VkIHByb3h5AG9wZXJhbmQgJ3Byb3RvdHlwZScgcHJvcGVydHkgaXMgbm90IGFuIG9iamVjdABpbnRlcnJ1cHRlZAAlcyBpcyBub3QgaW5pdGlhbGl6ZWQAbGV4aWNhbCB2YXJpYWJsZQAAAHEAAAByAAAAcwAAAENvdWxkIG5vdCBmaW5kIGV4cG9ydCAnJXMnIGluIG1vZHVsZSAnJXMnAGNpcmN1bGFyIHJlZmVyZW5jZSB3aGVuIGxvb2tpbmcgZm9yIGV4cG9ydCAnJXMnIGluIG1vZHVsZSAnJXMnAGV4cG9ydCAnJXMnIGluIG1vZHVsZSAnJXMnIGlzIGFtYmlndW91cwAocHItPnUuaW5pdC5yZWFsbV9hbmRfaWQgJiAzKSA9PSAwAEpTX0RlZmluZUF1dG9Jbml0UHJvcGVydHkAJyVzJyBpcyBub3QgZGVmaW5lZABudW1faW5kZXgg
 
PT0gbnVtX2tleXNfY291bnQASlNfR2V0T3duUHJvcGVydHlOYW1lc0ludGVybmFsAHN0cl9pbmRleCA9PSBudW1fa2V5c19jb3VudCArIHN0cl9rZXlzX2NvdW50AHN5bV9pbmRleCA9PSBhdG9tX2NvdW50AEpTX0F0b21Jc0FycmF5SW5kZXgAYXRvbTFfaXNfaW50ZWdlciAmJiBhdG9tMl9pc19pbnRlZ2VyAG51bV9rZXlzX2NtcABqc19nZXRfYXRvbV9pbmRleABub3QgY29uZmlndXJhYmxlAG5vIHNldHRlciBmb3IgcHJvcGVydHkAJyVzJyBpcyByZWFkLW9ubHkAcC0+c2hhcGUtPmhlYWRlci5yZWZfY291bnQgPT0gMQBhZGRfcHJvcGVydHkAJWxsZABjYW5ub3QgY3JlYXRlIG51bWVyaWMgaW5kZXggaW4gdHlwZWQgYXJyYXkAdmFyX3JlZi0+aGVhZGVyLnJlZl9jb3VudCA+IDAAZnJlZV92YXJfcmVmAEpTX0F0b21Jc051bWVyaWNJbmRleDEAAG4AZgBpAG4AaQB0AHkAbmZpbml0eQAhc2gtPmlzX2hhc2hlZABjb21wYWN0X3Byb3BlcnRpZXMAbmV3X3NpemUgPD0gc2gtPnByb3Bfc2l6ZQBqID09IChzaC0+cHJvcF9jb3VudCAtIHNoLT5kZWxldGVkX3Byb3BfY291bnQpACVzIG9iamVjdCBleHBlY3RlZABjYW5ub3QgY29udmVydCBzeW1ib2wgdG8gbnVtYmVyAHRvUHJpbWl0aXZlAEluZmluaXR5AGludmFsaWQgYXJyYXkgbGVuZ3RoAE5hTgAlLipmAG4gPCBidWZfc2l6ZQBqc19mY3Z0MQAlKy4qZQBtdXN0IGJlIGNhbGxlZCB3aXRoIG5ldwBub3QgYSBmdW5jdGlvbgBkZXJpdmVkIGNsYXNzIGNvbnN0cnVjdG9yI
 
G11c3QgcmV0dXJuIGFuIG9iamVjdCBvciB1bmRlZmluZWQAY2xhc3MgY29uc3RydWN0b3JzIG11c3QgYmUgaW52b2tlZCB3aXRoICduZXcnAHVuc3VwcG9ydGVkIHJlZmVyZW5jZSB0byAnc3VwZXInAGl0ZXJhdG9yIGRvZXMgbm90IGhhdmUgYSB0aHJvdyBtZXRob2QAaW52YWxpZCB0aHJvdyB2YXIgdHlwZSAlZAAndGhpcycgY2FuIGJlIGluaXRpYWxpemVkIG9ubHkgb25jZQBpbnZhbGlkIHJldCB2YWx1ZQBpdGVyYXRvciBtdXN0IHJldHVybiBhbiBvYmplY3QAaXRlcmF0b3JfY2xvc2VfcmV0dXJuAHZhbHVlIGhhcyBubyBwcm9wZXJ0eQBpbnZhbGlkIG9wY29kZTogcGM9JXUgb3Bjb2RlPTB4JTAyeAAADQAQAC0AMQBpbXBvcnQubWV0YSBub3Qgc3VwcG9ydGVkIGluIHRoaXMgY29udGV4dABleHBlY3RpbmcgPGJyYW5kPiBwcml2YXRlIGZpZWxkAGludmFsaWQgYnJhbmQgb24gb2JqZWN0AHJlZGVjbGFyYXRpb24gb2YgJyVzJwA8aW5wdXQ+AG5vdCBhIG9iamVjdAB0b28gbWFueSBhcmd1bWVudHMAc3RyaW5nIGV4cGVjdGVkAG5vIGZ1bmN0aW9uIGZpbGVuYW1lIGZvciBpbXBvcnQoKQBjYW5ub3QgZGVmaW5lIHZhcmlhYmxlICclcycAdmFsdWUgaXMgbm90IGl0ZXJhYmxlACFfX0pTX0F0b21Jc1RhZ2dlZEludChkZXNjcikASlNfTmV3U3ltYm9sRnJvbUF0b20AZGVzY3IgPCBydC0+YXRvbV9zaXplAG5vdCBhIHN5bWJvbABwcml2YXRlIGNsYXNzIGZpZWxkICclcycgZG9lcyBub3QgZXhpc3QAcHJpdmF0ZSBjbG
 
FzcyBmaWVsZCAnJXMnIGFscmVhZHkgZXhpc3RzAFsAXQBnZXQgAHNldCAAcGFyZW50IGNsYXNzIG11c3QgYmUgY29uc3RydWN0b3IAcGFyZW50IHByb3RvdHlwZSBtdXN0IGJlIGFuIG9iamVjdCBvciBudWxsAGItPmZ1bmNfa2luZCA9PSBKU19GVU5DX05PUk1BTABqc19vcF9kZWZpbmVfY2xhc3MAcmVjZWl2ZXIgaXMgbm90IGFuIG9iamVjdABzZXR0ZXIgaXMgZm9yYmlkZGVuAGludmFsaWQgaW5kZXggZm9yIGFwcGVuZABudWxsIG9yIHVuZGVmaW5lZCBhcmUgZm9yYmlkZGVuAGludmFsaWQgJ2luJyBvcGVyYW5kAG5vdCBhIGNvbnN0cnVjdG9yACAgICBhdCAlcwA6JWQAPGFub255bW91cz4AICglcwAgKG5hdGl2ZSkAZHVwbGljYXRlIGV4cG9ydGVkIG5hbWUgJyVzJwBjb3VsZCBub3QgbG9hZCBtb2R1bGUgJyVzJwAuAC4uAGJ5dGVjb2RlIGZ1bmN0aW9uIGV4cGVjdGVkAGV2YWwgaXMgbm90IHN1cHBvcnRlZABjaXJjdWxhciByZWZlcmVuY2UAZ2V0ICVzAHNldCAlcwBjYW5ub3QgY29udmVydCB0byBvYmplY3QAbm9ybWFsaXplAEHAzgAL9QEsJwAAAwAAAAAAAAB0AAAAYmFkIG5vcm1hbGl6YXRpb24gZm9ybQBpbnZhbGlkIHJlZ3VsYXIgZXhwcmVzc2lvbiBmbGFncwAlcwBmbGFncwBzb3VyY2UAZ2xvYmFsAGlnbm9yZUNhc2UAbXVsdGlsaW5lAGRvdEFsbAB1bmljb2RlAHN0aWNreQBleGVjAGNvbXBpbGUAdGVzdAB0b1N0cmluZwBbU3ltYm9sLnJlcGxhY2VdAFtTeW1ib2wubWF0Y2hdAFtTeW1ib2wubWF0Y2h
 
BbGxdAFtTeW1ib2wuc2VhcmNoXQBbU3ltYm9sLnNwbGl0XQBBwNAAC+ADiycAAAEBAAB1AAAAAAAAAJEnAAABAQAAdgAAAAAAAACYJwAAAQIBAHcAAAAAAAAAnycAAAECAgB3AAAAAAAAAKonAAABAgQAdwAAAAAAAAC0JwAAAQIIAHcAAAAAAAAAuycAAAECEAB3AAAAAAAAAMMnAAABAiAAdwAAAAAAAADKJwAAAwAAAAEAAAAwAAAAzycAAAMAAAACAAAAeAAAANcnAAADAAAAAQAAAHkAAADcJwAAAwAAAAAAAAB6AAAA5ScAAAMAAAACAAAAewAAAPYnAAADAAAAAQAAAHwAAAAFKAAAAwAAAAEAAAB9AAAAFygAAAMAAAABAAAAfgAAACcoAAADAAAAAgAAAH8AAAAoPzopAG91dCBvZiBtZW1vcnkgaW4gcmVnZXhwIGV4ZWN1dGlvbgBmbGFncyBtdXN0IGJlIHVuZGVmaW5lZABSZWdFeHAgZXhlYyBtZXRob2QgbXVzdCByZXR1cm4gYW4gb2JqZWN0IG9yIG51bGwAbm90IGEgc3RyaW5nAHkAW1N5bWJvbC5zcGVjaWVzXQDPKQAAAQEAAIAAAAAAAAAAbmV4dABbU3ltYm9sLnRvU3RyaW5nVGFnXQBSZWdFeHAgU3RyaW5nIEl0ZXJhdG9yAEGw1AAL1wrwKQAAAwAAAAAMAACBAAAA9SkAAAEDAAAKKgAAAAAAAHVuZXhwZWN0ZWQgZW5kIG9mIGNvbW1lbnQAdW5leHBlY3RlZCBjaGFyYWN0ZXIAaW52YWxpZCBjaGFyYWN0ZXIgaW4gYSBKU09OIHN0cmluZwBvY3RhbCBlc2NhcGUgc2VxdWVuY2VzIGFyZSBub3QgYWxsb3dlZCBpbiBzdHJpY3QgbW9kZQBtYWxmb3JtZWQgZXNjYXBlIHNlcXVlbmNlIGluIHN0cmluZyBsaXRlcmFsAGludmFs
 
aWQgVVRGLTggc2VxdWVuY2UAdW5leHBlY3RlZCBlbmQgb2Ygc3RyaW5nAGV4cGVjdGluZyBwcm9wZXJ0eSBuYW1lAHVuZXhwZWN0ZWQgZW5kIG9mIGlucHV0AHVuZXhwZWN0ZWQgdG9rZW46ICclLipzJwBleHBlY3RpbmcgJyVjJwAgAFx1JTA0eABBcnJheSBsb28gbG9uZwBKU09OAAAAAAAAAACkKwAAAwgAANArAAADAAAAcGFyc2UAc3RyaW5naWZ5AMArAAADAAAAAgAAAIIAAADGKwAAAwAAAAMAAACDAAAA9SkAAAEDAACkKwAAAAAAAHByb3h5OiBpbmNvbnNpc3RlbnQgaXNFeHRlbnNpYmxlAHByb3h5OiBpbmNvbnNpc3RlbnQgcHJldmVudEV4dGVuc2lvbnMAcHJveHk6IGluY29uc2lzdGVudCBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IAaW52YWxpZCBnZXR0ZXIAaW52YWxpZCBzZXR0ZXIAY2Fubm90IGhhdmUgc2V0dGVyL2dldHRlciBhbmQgdmFsdWUgb3Igd3JpdGFibGUAcHJveHk6IHByb3BlcnRpZXMgbXVzdCBiZSBzdHJpbmdzIG9yIHN5bWJvbHMAcHJveHk6IGR1cGxpY2F0ZSBwcm9wZXJ0eQBwcm94eTogdGFyZ2V0IHByb3BlcnR5IG11c3QgYmUgcHJlc2VudCBpbiBwcm94eSBvd25LZXlzAHByb3h5OiBwcm9wZXJ0eSBub3QgcHJlc2VudCBpbiB0YXJnZXQgd2VyZSByZXR1cm5lZCBieSBub24gZXh0ZW5zaWJsZSBwcm94eQBwcm94eTogaW5jb25zaXN0ZW50IGRlbGV0ZVByb3BlcnR5AHByb3h5OiBkZWZpbmVQcm9wZXJ0eSBleGNlcHRpb24AcHJveHk6IGluY29uc2lzdGVudCBkZWZpbmVQcm9wZXJ0eQBwc
 
m94eTogaW5jb25zaXN0ZW50IGhhcwBwcm94eTogaW5jb25zaXN0ZW50IGdldABwcm94eTogaW5jb25zaXN0ZW50IHNldABwcm94eTogY2Fubm90IHNldCBwcm9wZXJ0eQByZXZvY2FibGUAVi4AAAMAAAACAAAAhAAAAHNldABnZXQAaGFzAGRlbGV0ZQBjbGVhcgBzaXplAGZvckVhY2gAdmFsdWVzAGtleXMAZW50cmllcwBbU3ltYm9sLml0ZXJhdG9yXQBNYXAAcC4AAAMAAAACAQAAhQAAAHQuAAADAAAAAQEAAIYAAAB4LgAAAwAAAAEBAACHAAAAfC4AAAMAAAABAQAAiAAAAIMuAAADAAAAAAEAAIkAAACJLgAAAQIAAIoAAAAAAAAAji4AAAMAAAABAQAAiwAAAJYuAAADAAQAAAEAAIwAAACdLgAAAwAAAAABAACMAAAAoi4AAAMACAAAAQAAjAAAAKouAAADCQAAoi4AAP/////1KQAAAQMAALwuAAAAAAAAYWRkAFNldABBkN8AC7cBgC8AAAMAAQABAQAAhQAAAHguAAADAAEAAQEAAIcAAAB8LgAAAwABAAEBAACIAAAAgy4AAAMAAQAAAQAAiQAAAIkuAAABAgEAigAAAAAAAACOLgAAAwABAAEBAACLAAAAli4AAAMAAQAAAQAAjAAAAJ0uAAADCQAAli4AAP////+qLgAAAwkAAJYuAAD/////oi4AAAMACQAAAQAAjAAAAPUpAAABAwAAhC8AAAAAAABXZWFrTWFwAEHQ4AALV3AuAAADAAIAAgEAAIUAAAB0LgAAAwACAAEBAACGAAAAeC4AAAMAAgABAQAAhwAAAHwuAAADAAIAAQEAAIgAAAD1KQAAAQMAAEAwAAAAAAAAV2Vha1NldABBsOEAC4IDgC8AAAMAAwABAQAAhQAAAHguAAADAAMAAQEAAIcAAAB8LgAAAwADAAEBAACIAAAA9SkAAA
 
EDAACgMAAAAAAAAE1hcCBJdGVyYXRvcgAAAADwKQAAAwAAAAAMAACNAAAA9SkAAAEDAADwMAAAAAAAAHMgIT0gTlVMTABqc19tYXBfaXRlcmF0b3JfbmV4dABTZXQgSXRlcmF0b3IAAAAAAPApAAADAAEAAAwAAI0AAAD1KQAAAQMAAD8xAAAAAAAAc2V0L2FkZCBpcyBub3QgYSBmdW5jdGlvbgAAAAAAAADPKQAAAQEAAIAAAAAAAAAAcmVzb2x2aW5nIGZ1bmN0aW9uIGFscmVhZHkgc2V0AHByb21pc2Ugc2VsZiByZXNvbHV0aW9uAGFyZ2MgPT0gNQBwcm9taXNlX3JlYWN0aW9uX2pvYgBhcmdjID09IDMAanNfcHJvbWlzZV9yZXNvbHZlX3RoZW5hYmxlX2pvYgB0aGVuAGNhdGNoAGZpbmFsbHkAQcDkAAtmIDIAAAMAAAACAAAAjgAAACUyAAADAAAAAQAAAI8AAAArMgAAAwAAAAEAAACQAAAA9SkAAAEDAAAsDgAAAAAAAHJlc29sdmUAcmVqZWN0AGFsbABhbGxTZXR0bGVkAGFueQByYWNlAEGw5QAL1gGAMgAAAwAAAAEBAACRAAAAiDIAAAMAAQABAQAAkQAAAI8yAAADAAAAAQEAAJIAAACTMgAAAwABAAEBAACSAAAAnjIAAAMAAgABAQAAkgAAAKIyAAADAAAAAQAAAJMAAADPKQAAAQEAAIAAAAAAAAAAcmVqZWN0ZWQAZnVsZmlsbGVkAGFzeW5jIABmdW5jdGlvbgAgYW5vbnltb3VzKAAKKSB7CgAKfSkAAAAAAAAAAPUpAAABAwAANA4AAAAAAABbU3ltYm9sLmFzeW5jSXRlcmF0b3JdAEGQ5wALkwhwMwAAAwAAAAAAAACUAAAAcmV0dXJuAHRocm93AAAAAPApAAADAAAAAQEAAJUAAACgMwAAAwABAAEBAACVAAAApzMAAAMAAgABAQA
 
AlQAAAG5vdCBhbiBBc3luYy1mcm9tLVN5bmMgSXRlcmF0b3IAQXN5bmNHZW5lcmF0b3IAAPApAAADAAAAAQEAAJYAAACgMwAAAwABAAEBAACWAAAApzMAAAMAAgABAQAAlgAAAPUpAAABAwAAADQAAAAAAABub3QgYW4gQXN5bmNHZW5lcmF0b3Igb2JqZWN0AEpTX0lzVW5kZWZpbmVkKGZ1bmNfcmV0KQBqc19hc3luY19nZW5lcmF0b3JfcmVzdW1lX25leHQAcy0+c3RhdGUgPT0gSlNfQVNZTkNfR0VORVJBVE9SX1NUQVRFX0FXQUlUSU5HX1JFVFVSTiB8fCBzLT5zdGF0ZSA9PSBKU19BU1lOQ19HRU5FUkFUT1JfU1RBVEVfQ09NUExFVEVEAGpzX2FzeW5jX2dlbmVyYXRvcl9yZXNvbHZlX2Z1bmN0aW9uAHMtPnN0YXRlID09IEpTX0FTWU5DX0dFTkVSQVRPUl9TVEFURV9FWEVDVVRJTkcAAPUpAAABAwAAQg4AAAAAAAB2YWx1ZU9mAFtTeW1ib2wudG9QcmltaXRpdmVdAHRvVVRDU3RyaW5nAHRvR01UU3RyaW5nAHRvSVNPU3RyaW5nAHRvRGF0ZVN0cmluZwB0b1RpbWVTdHJpbmcAdG9Mb2NhbGVTdHJpbmcAdG9Mb2NhbGVEYXRlU3RyaW5nAHRvTG9jYWxlVGltZVN0cmluZwBnZXRUaW1lem9uZU9mZnNldABnZXRUaW1lAGdldFllYXIAZ2V0RnVsbFllYXIAZ2V0VVRDRnVsbFllYXIAZ2V0TW9udGgAZ2V0VVRDTW9udGgAZ2V0RGF0ZQBnZXRVVENEYXRlAGdldEhvdXJzAGdldFVUQ0hvdXJzAGdldE1pbnV0ZXMAZ2V0VVRDTWludXRlcwBnZXRTZWNvbmRzAGdldFVUQ1NlY29uZHMAZ2V0TWlsbGlzZWNvbmRzAGdldFVUQ01pbGxp
 
c2Vjb25kcwBnZXREYXkAZ2V0VVRDRGF5AHNldFRpbWUAc2V0TWlsbGlzZWNvbmRzAHNldFVUQ01pbGxpc2Vjb25kcwBzZXRTZWNvbmRzAHNldFVUQ1NlY29uZHMAc2V0TWludXRlcwBzZXRVVENNaW51dGVzAHNldEhvdXJzAHNldFVUQ0hvdXJzAHNldERhdGUAc2V0VVRDRGF0ZQBzZXRNb250aABzZXRVVENNb250aABzZXRZZWFyAHNldEZ1bGxZZWFyAHNldFVUQ0Z1bGxZZWFyAHRvSlNPTgBBsO8AC7YGcDUAAAMAAAAAAAAAlwAAANwnAAADABMAAAEAAJgAAAB4NQAAAwAAAAEAAACZAAAAjTUAAAMAAwAAAQAAmAAAAJk1AAADCQAAjTUAAP////+lNQAAAwAjAAABAACYAAAAsTUAAAMAEQAAAQAAmAAAAL41AAADABIAAAEAAJgAAADLNQAAAwAzAAABAACYAAAA2jUAAAMAMQAAAQAAmAAAAO01AAADADIAAAEAAJgAAAAANgAAAwAAAAAAAACaAAAAEjYAAAMAAAAAAAAAlwAAABo2AAADAAEBAAEAAJsAAAAiNgAAAwABAAABAACbAAAALjYAAAMAAAAAAQAAmwAAAD02AAADABEAAAEAAJsAAABGNgAAAwAQAAABAACbAAAAUjYAAAMAIQAAAQAAmwAAAFo2AAADACAAAAEAAJsAAABlNgAAAwAxAAABAACbAAAAbjYAAAMAMAAAAQAAmwAAAHo2AAADAEEAAAEAAJsAAACFNgAAAwBAAAABAACbAAAAkzYAAAMAUQAAAQAAmwAAAJ42AAADAFAAAAEAAJsAAACsNgAAAwBhAAABAACbAAAAvDYAAAMAYAAAAQAAmwAAAM82AAADAHEAAAEAAJsAAADWNgAAAwBwAAABAACbAAAA4DYAAAMAAAABAAAAnAAAAOg2AAADAHEGAQEAAJ0AAAD4NgAAAwBwB
 
gEBAACdAAAACzcAAAMAcQUCAQAAnQAAABY3AAADAHAFAgEAAJ0AAAAkNwAAAwBxBAMBAACdAAAALzcAAAMAcAQDAQAAnQAAAD03AAADAHEDBAEAAJ0AAABGNwAAAwBwAwQBAACdAAAAUjcAAAMAMQIBAQAAnQAAAFo3AAADADACAQEAAJ0AAABlNwAAAwAxAQIBAACdAAAAbjcAAAMAMAECAQAAnQAAAHo3AAADAAAAAQAAAJ4AAACCNwAAAwAxAAMBAACdAAAAjjcAAAMAMAADAQAAnQAAAJ03AAADAAAAAQAAAJ8AAABub3QgYSBEYXRlIG9iamVjdABEYXRlIHZhbHVlIGlzIE5hTgBJbnZhbGlkIERhdGUAJS4zcywgJTAyZCAlLjNzICUwKmQgAEHw9QALFVN1bk1vblR1ZVdlZFRodUZyaVNhdABBkPYAC6IBSmFuRmViTWFyQXByTWF5SnVuSnVsQXVnU2VwT2N0Tm92RGVjACUuM3MgJS4zcyAlMDJkICUwKmQAJTA0ZAAlKzA3ZAAtJTAyZC0lMDJkVAAlMDJkLyUwMmQvJTAqZAAlMDJkOiUwMmQ6JTAyZCBHTVQAJTAyZCUwMmQAJTAyZDolMDJkOiUwMmQuJTAzZFoAJTAyZDolMDJkOiUwMmQgJWNNAEHA9wALZB8AAAAcAAAAHwAAAB4AAAAfAAAAHgAAAB8AAAAfAAAAHgAAAB8AAAAeAAAAHwAAAGludmFsaWQgaGludABvYmplY3QgbmVlZHMgdG9JU09TdHJpbmcgbWV0aG9kAG5vdwBVVEMAQbD4AAugLB08AAADAAAAAAAAAKAAAADAKwAAAwAAAAEAAAChAAAAITwAAAMAAAAHAAAAogAAAHNmICE9IE5VTEwAX19KU19FdmFsSW50ZXJuYWwASlNfVkFMVUVfR0VUX1RBRyhzZi0+Y3VyX2Z1bmMpID09IEpTX1RBR19PQkpFQ1QAanNfY2xhc3
 
NfaGFzX2J5dGVjb2RlKHAtPmNsYXNzX2lkKQBpbnZhbGlkIGZpcnN0IGNoYXJhY3RlciBvZiBwcml2YXRlIG5hbWUAb2N0YWwgbGl0ZXJhbHMgYXJlIGRlcHJlY2F0ZWQgaW4gc3RyaWN0IG1vZGUAaW52YWxpZCBudW1iZXIgbGl0ZXJhbAAlLipzAHVzZSBzdHJpY3QAdXNlIHN0cmlwAHRvbyBtYW55IGxvY2FsIHZhcmlhYmxlcwBmdW5jdGlvbiBuYW1lIGV4cGVjdGVkAGludmFsaWQgcmVkZWZpbml0aW9uIG9mIGdsb2JhbCBpZGVudGlmaWVyIGluIG1vZHVsZSBjb2RlAGludmFsaWQgcmVkZWZpbml0aW9uIG9mIGdsb2JhbCBpZGVudGlmaWVyAG1pc3NpbmcgZm9ybWFsIHBhcmFtZXRlcgBpbnZhbGlkIG51bWJlciBvZiBhcmd1bWVudHMgZm9yIGdldHRlciBvciBzZXR0ZXIAJyVzJyBpcyBhIHJlc2VydmVkIGlkZW50aWZpZXIAaW52YWxpZCByZWRlZmluaXRpb24gb2YgbGV4aWNhbCBpZGVudGlmaWVyAGludmFsaWQgcmVkZWZpbml0aW9uIG9mIHBhcmFtZXRlciBuYW1lAGludmFsaWQgcmVkZWZpbml0aW9uIG9mIGEgdmFyaWFibGUAdW5leHBlY3RlZCBlbmQgb2YgcmVnZXhwAHVuZXhwZWN0ZWQgbGluZSB0ZXJtaW5hdG9yIGluIHJlZ2V4cAB1bmV4cGVjdGVkIGVsbGlwc2lzIHRva2VuAGFzc2lnbm1lbnQgcmVzdCBwcm9wZXJ0eSBtdXN0IGJlIGxhc3QAaW52YWxpZCBkZXN0cnVjdHVyaW5nIHRhcmdldABtaXNzaW5nIGJpbmRpbmcgcGF0dGVybi4uLgByZXN0IGVsZW1lbnQgY2Fubm90IGhhdmUgYSBkZWZhdWx0IHZ
 
hbHVlAHJlc3QgZWxlbWVudCBtdXN0IGJlIHRoZSBsYXN0IG9uZQBpbnZhbGlkIGFzc2lnbm1lbnQgc3ludGF4AHRvbyBjb21wbGljYXRlZCBkZXN0cnVjdHVyaW5nIGV4cHJlc3Npb24AUmVnRXhwIGFyZSBub3Qgc3VwcG9ydGVkACdhcmd1bWVudHMnIGlkZW50aWZpZXIgaXMgbm90IGFsbG93ZWQgaW4gY2xhc3MgZmllbGQgaW5pdGlhbGl6ZXIAZXhwZWN0aW5nIHRhcmdldABuZXcudGFyZ2V0IG9ubHkgYWxsb3dlZCB3aXRoaW4gZnVuY3Rpb25zAHN1cGVyKCkgaXMgb25seSB2YWxpZCBpbiBhIGRlcml2ZWQgY2xhc3MgY29uc3RydWN0b3IAJ3N1cGVyJyBpcyBvbmx5IHZhbGlkIGluIGEgbWV0aG9kAGludmFsaWQgdXNlIG9mICdzdXBlcicAbWV0YSBleHBlY3RlZABpbXBvcnQubWV0YSBvbmx5IHZhbGlkIGluIG1vZHVsZSBjb2RlAGludmFsaWQgdXNlIG9mICdpbXBvcnQoKScAdW5leHBlY3RlZCB0b2tlbiBpbiBleHByZXNzaW9uOiAnJS4qcycAdGVtcGxhdGUgbGl0ZXJhbCBjYW5ub3QgYXBwZWFyIGluIGFuIG9wdGlvbmFsIGNoYWluAFRvbyBtYW55IGNhbGwgYXJndW1lbnRzAHByaXZhdGUgY2xhc3MgZmllbGQgZm9yYmlkZGVuIGFmdGVyIHN1cGVyAGV4cGVjdGluZyBmaWVsZCBuYW1lAGV4cGVjdGVkICd9JyBhZnRlciB0ZW1wbGF0ZSBleHByZXNzaW9uAGNsYXNzIHN0YXRlbWVudCByZXF1aXJlcyBhIG5hbWUAaW52YWxpZCBtZXRob2QgbmFtZQBpbnZhbGlkIGZpZWxkIG5hbWUAcHJvcGVydHkgY29uc3RydWN0
 
b3IgYXBwZWFycyBtb3JlIHRoYW4gb25jZQBwcml2YXRlIGNsYXNzIGZpZWxkIGlzIGFscmVhZHkgZGVmaW5lZAA8c2V0PgBmZC0+Ynl0ZV9jb2RlLmJ1ZltkZWZpbmVfY2xhc3NfcG9zXSA9PSBPUF9kZWZpbmVfY2xhc3MAc2V0X29iamVjdF9uYW1lX2NvbXB1dGVkACgpe3N1cGVyKC4uLmFyZ3VtZW50cyk7fQAoKXt9AGR1cGxpY2F0ZSBfX3Byb3RvX18gcHJvcGVydHkgbmFtZQB1bmV4cGVjdGVkICd5aWVsZCcga2V5d29yZAB5aWVsZCBpbiBkZWZhdWx0IGV4cHJlc3Npb24AmpucnZ6goaKtrq+fY2Fubm90IG1peCA/PyB3aXRoICYmIG9yIHx8AHVuZXhwZWN0ZWQgJ2F3YWl0JyBrZXl3b3JkAGF3YWl0IGluIGRlZmF1bHQgZXhwcmVzc2lvbgB1bnBhcmVudGhlc2l6ZWQgdW5hcnkgZXhwcmVzc2lvbiBjYW4ndCBhcHBlYXIgb24gdGhlIGxlZnQtaGFuZCBzaWRlIG9mICcqKicAY2Fubm90IGRlbGV0ZSBhIGRpcmVjdCByZWZlcmVuY2UgaW4gc3RyaWN0IG1vZGUAY2Fubm90IGRlbGV0ZSBhIHByaXZhdGUgY2xhc3MgZmllbGQAaW52YWxpZCBsdmFsdWUgaW4gc3RyaWN0IG1vZGUAaW52YWxpZCBmb3IgaW4vb2YgbGVmdCBoYW5kLXNpZGUAaW52YWxpZCBpbmNyZW1lbnQvZGVjcmVtZW50IG9wZXJhbmQAaW52YWxpZCBhc3NpZ25tZW50IGxlZnQtaGFuZCBzaWRlAGxhYmVsID49IDAgJiYgbGFiZWwgPCBzLT5sYWJlbF9jb3VudAB1cGRhdGVfbGFiZWwAbHMtPnJlZl9jb3VudCA+PSAwAGludmFsaWQgcHJvcGVydHkgbmFtZ
 
QBkdXBsaWNhdGUgcGFyYW1ldGVyIG5hbWVzIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dAB5aWVsZCBpcyBhIHJlc2VydmVkIGlkZW50aWZpZXIAaW52YWxpZCB2YXJpYWJsZSBuYW1lIGluIHN0cmljdCBtb2RlAGludmFsaWQgbGV4aWNhbCB2YXJpYWJsZSBuYW1lAHNwZWNpYWwgPT0gUFVUX0xWQUxVRV9OT0tFRVAgfHwgc3BlY2lhbCA9PSBQVVRfTFZBTFVFX05PS0VFUF9ERVBUSABwdXRfbHZhbHVlAHNldF9vYmplY3RfbmFtZQAidXNlIHN0cmljdCIgbm90IGFsbG93ZWQgaW4gZnVuY3Rpb24gd2l0aCBkZWZhdWx0IG9yIGRlc3RydWN0dXJpbmcgcGFyYW1ldGVyAGludmFsaWQgZnVuY3Rpb24gbmFtZSBpbiBzdHJpY3QgY29kZQBpbnZhbGlkIGFyZ3VtZW50IG5hbWUgaW4gc3RyaWN0IGNvZGUAZHVwbGljYXRlIGFyZ3VtZW50IG5hbWVzIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dABpZGVudGlmaWVyIGV4cGVjdGVkAGludmFsaWQgZXhwb3J0IHN5bnRheABmcm9tIGNsYXVzZSBleHBlY3RlZAAnbGV0JyBpcyBub3QgYSB2YWxpZCBsZXhpY2FsIGlkZW50aWZpZXIAbWlzc2luZyBpbml0aWFsaXplciBmb3IgY29uc3QgdmFyaWFibGUAdmFyaWFibGUgbmFtZSBleHBlY3RlZABleHBlY3RpbmcgJ2FzJwBpbnZhbGlkIGltcG9ydCBiaW5kaW5nAGR1cGxpY2F0ZSBpbXBvcnQgYmluZGluZwB0b28gbWFueSBjbG9zdXJlIHZhcmlhYmxlcwBkdXBsaWNhdGUgbGFiZWwgbmFtZQByZXR1cm4gbm90IGluIGEgZnVuY3
 
Rpb24AbGluZSB0ZXJtaW5hdG9yIG5vdCBhbGxvd2VkIGFmdGVyIHRocm93AGxleGljYWwgZGVjbGFyYXRpb25zIGNhbid0IGFwcGVhciBpbiBzaW5nbGUtc3RhdGVtZW50IGNvbnRleHQAZm9yIGF3YWl0IGlzIG9ubHkgdmFsaWQgaW4gYXN5bmNocm9ub3VzIGZ1bmN0aW9ucwBkdXBsaWNhdGUgZGVmYXVsdABpbnZhbGlkIHN3aXRjaCBzdGF0ZW1lbnQAZXhwZWN0aW5nIGNhdGNoIG9yIGZpbmFsbHkAaW52YWxpZCBrZXl3b3JkOiB3aXRoAGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBjYW4ndCBhcHBlYXIgaW4gc2luZ2xlLXN0YXRlbWVudCBjb250ZXh0AGNsYXNzIGRlY2xhcmF0aW9ucyBjYW4ndCBhcHBlYXIgaW4gc2luZ2xlLXN0YXRlbWVudCBjb250ZXh0ACdmb3IgYXdhaXQnIGxvb3Agc2hvdWxkIGJlIHVzZWQgd2l0aCAnb2YnAGEgZGVjbGFyYXRpb24gaW4gdGhlIGhlYWQgb2YgYSBmb3ItJXMgbG9vcCBjYW4ndCBoYXZlIGFuIGluaXRpYWxpemVyAG9mAGluAGV4cGVjdGVkICdvZicgb3IgJ2luJyBpbiBmb3IgY29udHJvbCBleHByZXNzaW9uAGNvbnRpbnVlIG11c3QgYmUgaW5zaWRlIGxvb3AAYnJlYWsgbXVzdCBiZSBpbnNpZGUgbG9vcCBvciBzd2l0Y2gAYnJlYWsvY29udGludWUgbGFiZWwgbm90IGZvdW5kAHVuc3VwcG9ydGVkIGtleXdvcmQ6ICVzAGNwb29sX2lkeCA+PSAwAGpzX2NyZWF0ZV9mdW5jdGlvbgBzLT5pc19ldmFsIHx8IHMtPmNsb3N1cmVfdmFyX2NvdW50ID09IDAAYWRkX2V2YWxfdmFyaWFibGV
 
zAGV4cG9ydGVkIHZhcmlhYmxlICclcycgZG9lcyBub3QgZXhpc3QAcmVzb2x2ZV92YXJpYWJsZXMAbGFiMSA+PSAwICYmIGxhYjEgPCBzLT5sYWJlbF9jb3VudABiY19idWZbcG9zXSA9PSBPUF9sYWJlbABvcHRpbWl6ZV9zY29wZV9tYWtlX3JlZgBvcHRpbWl6ZV9zY29wZV9tYWtlX2dsb2JhbF9yZWYAdmFyX2tpbmQgIT0gSlNfVkFSX05PUk1BTAByZXNvbHZlX3Njb3BlX3ByaXZhdGVfZmllbGQAdmFyX2tpbmQgPT0gSlNfVkFSX1BSSVZBVEVfU0VUVEVSAHVuZGVmaW5lZCBwcml2YXRlIGZpZWxkICclcycAcy0+bGFiZWxfc2xvdHNbbGFiZWxdLmZpcnN0X3JlbG9jID09IE5VTEwAc2tpcF9kZWFkX2NvZGUAcmVzb2x2ZV9sYWJlbHMAbHMtPmFkZHIgPT0gLTEAZGlmZiA9PSAoaW50MTZfdClkaWZmAGRpZmYgPT0gKGludDhfdClkaWZmAGxhYmVsX3Nsb3RzW2ldLmZpcnN0X3JlbG9jID09IE5VTEwAZmluZF9qdW1wX3RhcmdldABpbnZhbGlkIG9wY29kZSAob3A9JWQsIHBjPSVkKQBieXRlY29kZSBidWZmZXIgb3ZlcmZsb3cgKG9wPSVkLCBwYz0lZCkAc3RhY2sgdW5kZXJmbG93IChvcD0lZCwgcGM9JWQpAHN0YWNrIG92ZXJmbG93IChvcD0lZCwgcGM9JWQpAHVuY29uc2lzdGVudCBzdGFjayBzaXplOiAlZCAlZCAocGM9JWQpAG5hbWUAbWVzc2FnZQAAAADcJwAAAwAAAAAAAACjAAAA0E0AAAMDAABuDgAAAAAAANVNAAADAwAAvgoAAAAAAAA6IABpbnZhbGlkIHByb3BlcnR5IGFjY2VzcwBwcm94eSBwcmV2ZW50RXh0
 
ZW5zaW9ucyBoYW5kbGVyIHJldHVybmVkIGZhbHNlAGNyZWF0ZQBnZXRQcm90b3R5cGVPZgBzZXRQcm90b3R5cGVPZgBkZWZpbmVQcm9wZXJ0eQBkZWZpbmVQcm9wZXJ0aWVzAGdldE93blByb3BlcnR5TmFtZXMAZ2V0T3duUHJvcGVydHlTeW1ib2xzAGlzRXh0ZW5zaWJsZQBwcmV2ZW50RXh0ZW5zaW9ucwBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IAZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycwBpcwBhc3NpZ24Ac2VhbABmcmVlemUAaXNTZWFsZWQAaXNGcm96ZW4AX19nZXRDbGFzcwBmcm9tRW50cmllcwAAAAAAAABaTgAAAwAAAAIAAACkAAAAYU4AAAMAAAABAQAApQAAAHBOAAADAAAAAgAAAKYAAAB/TgAAAwAAAAMBAACnAAAAjk4AAAMAAAACAAAAqAAAAJ9OAAADAAAAAQAAAKkAAACzTgAAAwAAAAEAAACqAAAAnS4AAAMAAAABAQAAqwAAAJYuAAADAAEAAQEAAKsAAACiLgAAAwACAAEBAACrAAAAyU4AAAMAAAABAQAArAAAANZOAAADAAAAAQEAAK0AAADoTgAAAwAAAAIBAACuAAAAAU8AAAMAAAABAAAArwAAABtPAAADAAAAAgAAALAAAAAeTwAAAwAAAAIAAACxAAAAJU8AAAMAAAABAQAAsgAAACpPAAADAAEAAQEAALIAAAAxTwAAAwAAAAEBAACzAAAAOk8AAAMAAQABAQAAswAAAENPAAADAAAAAQAAALQAAABOTwAAAwAAAAEAAAC1AAAAbm90IGEgcHJvdG90eXBlAGhhc093blByb3BlcnR5AGlzUHJvdG90eXBlT2YAcHJvcGVydHlJc0VudW1lcmFibGUAX19wcm90b19fAF9fZGVmaW5lR2V0dGVyX18AX19kZWZpbmVTZ
 
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
 
BAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAQAAAAEAAAABAAAAAQAAAAFAAAABQAAAAAAAAAKAAkADgAgACEAoAChAIAWgRYAIAsgKCAqIC8gMCBfIGAgADABMP/+AP8AQdTfAQuRBBAAAAD+//+H/v//BwAAAAAQAP8D/v//h/7//wdleHRyYW5lb3VzIGNoYXJhY3RlcnMgYXQgdGhlIGVuZAB0b28gbWFueSBpbWJyaWNhdGVkIHF1YW50aWZpZXJzAHN0YWNrIG92ZXJmbG93AHN5bnRheCBlcnJvcgBub3RoaW5nIHRvIHJlcGVhdABpbnZhbGlkIGdyb3VwIG5hbWUAZHVwbGljYXRlIGdyb3VwIG5hbWUAaW52YWxpZCBncm91cAB0b28gbWFueSBjYXB0dXJlcwBleHBlY3RpbmcgZ3JvdXAgbmFtZQBncm91cCBuYW1lIG5vdCBkZWZpbmVkAGludmFsaWQgZGVjaW1hbCBlc2NhcGUgaW4gcmVndWxhciBleHByZXNzaW9uAGJhY2sgcmVmZXJlbmNlIG91dCBvZiByYW5nZSBpbiByZWd1bGFyIGV4cHJlc3Npb24AaW52YWxpZCByZXBldGl0aW9uIGNvdW50AGV4cGVjdGluZyAnJWMnAGludmFsaWQgY2xhc3MgcmFuZ2UAXiRcLiorPygpW117fXwvAGludmFsaWQgZXNjYXBlIHNlcXVl
 
bmNlIGluIHJlZ3VsYXIgZXhwcmVzc2lvbgB1bmV4cGVjdGVkIGVuZABtYWxmb3JtZWQgdW5pY29kZSBjaGFyAAAA4HEAAKBvAADwcQAAAQAwADoAQfDjAQvFAwQAMAA6AEEAWwBfAGAAYQB7AGV4cGVjdGluZyAneycgYWZ0ZXIgXHAAdW5rbm93biB1bmljb2RlIHByb3BlcnR5IHZhbHVlAGV4cGVjdGluZyAnfScAU2NyaXB0AHNjAFNjcmlwdF9FeHRlbnNpb25zAHVua25vd24gdW5pY29kZSBzY3JpcHQAR2VuZXJhbF9DYXRlZ29yeQBnYwB1bmtub3duIHVuaWNvZGUgZ2VuZXJhbCBjYXRlZ29yeQB1bmtub3duIHVuaWNvZGUgcHJvcGVydHkgbmFtZQB0b28gbWFueSByYW5nZXMAAAAAAAEDBQEBAQEFBQUBAgIDBQUBAQECAgMDBQUBBQERb3V0IG9mIG1lbW9yeQBvcGNvZGUgPCBSRU9QX0NPVU5UAC90bXAvcXVpY2tqcy9saWJyZWdleHAuYwBjb21wdXRlX3N0YWNrX3NpemUAKHBvcyArIGxlbikgPD0gYmNfYnVmX2xlbgBzdGFja19zaXplID4gMAB2YWwgPCBzLT5jYXB0dXJlX2NvdW50AGxyZV9leGVjX2JhY2t0cmFjawB2YWwyIDwgcy0+Y2FwdHVyZV9jb3VudABBwOcBC6QLMJogAACaMABzgVoAMBdgADAHbACzgW8AABdwAAAHfAAAgX8AQDCAAMMBmACQgZgAQAaZAECQnAC0gaQAQC6lADABvABAhrwAcIG/AAABwAAwgcAAQATBADABwwBAgsMAMILEAECCxQAwAccAMIHHADAByABAgsgAMIHJADABygAAgcoAMAHLADCBywBAAswAAAHNADABzgAwgc4AAAHPADCBzwBABtAAMAHTAECC0wAwgdQAQALWADAB1wBAgtcAMILYA
 
ECE2QAwgdsAQALcAEAC3gAAgd8AUAPiAFCD4wBQA+UAQJDmAACB7gBAEu8AtAH4AFCD+ABAAvoAMAH7ADCB+wBAKPwAMAEQAUASEQExAR0BQIIdATCBHgExAR8BAYIfAUCCIAEwgSEBMAEiATCBIgFACiMBAQEoAQGBKAEBASkBAIEpAQABKgEAAisBAIEsAQCBLQEBAS4BAAEwAQGBMAEAgTEBAYEyAQEBMwEAATQBAIE0AQEBNQEBgTUBAQE2AQCBNwEBgTgBAAE5AQCBOgEBgT4BAAFAAQEBQQEAgUEBAYFDAQABRAEAgUQBAAJFAQABRgEAAUkBAYFOAQEBTwFzgaIBQAS4AUACuwEAg70BMIG/ATABwwEwA8QBMAHGATACxwHQAcgBMJHIATCJ0QEAAdYBAIPWAdMB2AEAkdgBcwHhAQCJ4QEAAeYBAILmATCB5wFzAegBc4HoAXOB6gFzAesBAIHrAUAY7AFzAfgBc4H4AQAB+QEAgfkBoAH6AXOB+gFAgvsBMIH8AUAC/QEwg/4BMBAAAjAgCAIAIBgCABAoAkAiMAJANkUCMAFgAkCOYAIAgWcCQGBoAjCmmAIAprACtYHDAjEmUAgxgWMIMYFmCAAraAgAg34IEVDQCRAG+AkgBvwJdAFADnSBQA50AUEOdIFBDnQBQg50gUIOdAFDDoCBQw6AAUQOMCtIDjCDXg4BgbwOAYG+DgEBxw5AfgAPQBg/D7UBSw+2gUsPtgFMD7aBTA+3AU0PgIFNDzABTw9AYFAPAAiADzAIhA8ABogPMAaMDwAIkA8wCJQPAAiYDzAInA8ABqAPMAakD7ABqA8AgagP0wGpDwCBqQ/TAaoPAIGqD9MBqw8AgasPMIGsDzCBrQ8wga4PMIGvDwAIsA8wCLQPAAK4DwAEuQ8AArsPAQK8DwECvQ8BAr4PtwjAD2cIxA+4CMgPaAjMD7gI0A9oCNQPAALYD7kB2Q+xgdkPuQHaD7EB2w
 
/XgdsPMALcDzAC3Q9hAd4PcwHfD7kB4Q+ygeEPugHiD7IB4w/YgeMPMATkD2IB5g8AAugP0AHpD9CB6Q+wAesP0IHrDzAC7A8wAu0PAQLwD9MB8Q/TgfEPugHyDwGB8g+wAfMP04HzDzAC9A8wAvUPMQH2D7oB+Q+ygfkPuwH6D7IB+w/ZgfsPMAL8DzAC/Q9iAf4PoAGTEKABlRCggZUQMQGZEAEBpxAxELAQARC4EECCwRAxGlsSARpoEjEvABYBLxgWQAIwFjABMRYwgTEWMAEyFgCBMhYAATMWQIYzFjCBNhYwATcWMIE3FjABOBZAAjkWQII6FjACPxZAZEAWQIR1FkACeRYAJoAWAIGTFgCBlhZALiBTQBxAU0AOkVNAPplTQIS8UzCBvlNACr9TQILFUzCBxlNABMhTAQHKU0AUy1MwAdVTMIHVUzAB1lMwgdZTMAHXUzAB2FMwgdhTMAHZUzGB2VNADNpTQALhUzEB4lMwgeJTMAHjU0CE41NAgvpTAYGpVSBQuFWyAYB9soGAfbIBgX3agYF92gGCfbOBgn2zAYN9u4GJfbsBin27gYp9vAGLfbuBi30xmpB/AZqgfzEoAIIBKBSCMSRYggEkbIIxM0CGATNghjEgUIwBIGCMMSAgtwEgMLcxIoD0ASKR9ABB8PIBC+MDAQCcBgdNAwQQAI8LAAARAAgAU0pRAFIAUwA6VFUAV1k/XVwARmFjQmQAZgBoAGoAbABuAABAAAAAABoAkwAAIDUAJwAhACQiKgATa20AJiQnFBYYGxw+Hj8fOT0iIUEeQCUlJiggKkksQy5LMEwyREKZAACVj31+g4QSgIJ2dxJ7o3x4eYqSmKaghQCaoZN1M5UAjgB0mZiXlgAAngCcAKGgFS4vMLS1TqqpEhQeISIiKjQ1pqc2H0oAAJcBWtodNgUAxMPGxcjHysnMy8TVRdZC10bYztDS1NrZ7vb+DgcPgJ8AIYCj7QDAQMZg59v
 
mmcAAAAZg3Cn9FRIGFvjdBhUShAjGFv/fA8BAAEZg3uBtNzg5FRQXFgAaGRwbAF+3ZURHAE9iTlAAAEgAAACjpKUAAAAAALYAAFoASABbVlhgXnBpb00AADtnuAAARaiKi4yrrFhYr5Swb7JcW15dYF9iYWRjZmVoZwAAAAAAAACZAwgDAQOlAxMDAANCA5EDlwOpA0YASQBMAFMAaQAHA7wCTgBKAAwDNQVSBUgAMQNUAFcACgNZAEEAvgIIH4AfKB+QH2gfoB+6H4YDsx/KH4kDwx+hA/ofjwPzH0QFRgU7BU4FPQW4A2IESqZgHskDawDlAEHg9gELwgFAqYCOgPyA04CMgI2BjQKA4YCRhZoBAAERAAEECAEIMAgBFSAAOZkxnYRAlIDWgqaAQWKApoBXdvgCgI+AsEDbCIBB0ICMgI+M5AMBiQAUKBARAgEYCyRLJgEBhuWAYHm2gUCRgb2IlAWAmIDHgkM0ogaAjGEoltSAxgEICQuAiwAGgMADDwaAmwMEABaAQVOBmICYgJ6AmICegJiAnoCYgJ6AmAdZY5mFmYWZAAAAALkC4KAeQJ6mQLrUAYnXAYrxAQBBsPgBC7QFpgWAioCiAIDGAwADAYFB9kC/GRiICIBA+oZAzgSAsKwAAQEAq4CKhYmKAKKAiZSPgOQ4iQOgAICdmtqKuYoYCJeXqoL2r7YAAzsChomBjICOgLkDH4CTgZkBgbgDCwkSgJ0KgIqBuAMgC4CTgZUogLkBAB8GgYqBnYC8gIuAsQKAuBQQHoGKgZyAuQEFBIGTgZuBuAsfgJOBnIDHBhCA2QGGiojhAYiIAIXJgZoAAIC2jQQBhIqAo4iA5RgoCYGYC4KPg4wBDYCOgN2AQl+CQ7GCnIKcgZ2Bvwg3AYoQIKyDs4DAgaGA9ROBiAWCQNoJgLkAMAABPYkIpgeQvoOvACAEgKeIi4GfGQiCtwAKAIK5OYG/hdEQjAYYKBGxvoyAod4EQbwA
 
goqCjIKMgoyBiyeBiQEBhLAgiQCMgI+MsqBLioHwgvyAjoDfn66AQdSAoxokgNyF3IJgbxWAROGFQQ2A4RiJAJuDz4GNoc2AloLsDwIDgJgMgECWgZmRjIClh5iKrYKvARmBkICUgcEpCYGLB4CigIqAsgARDAiAmoCNDAiA44SIgvgBA4BgTy+AQJKPQj2PEIuPoQGAQKgGBYCKgKIAgK6ArIHCgJSCQgCAQOGAQJSERoUQDIOnE4BApIFCPINBgoFAmIpAr4C1jreCsBkJgI6AsYKjIIe9gIuBs4iJGYDeEQANgECfAoeUgbgKgKQyhEDCORCAloDTKAMIgUDtHQiBmoHUOQCB6QABKIDkERiEQQKIAUD/CAOAQI8ZC4CfiacpH4CIKYKtjAFBlTAogNGVDgEB+SoACDCAxwoAgEFagVU6iGA2toS6hoiDRAqAvpC/CIFgTLcIg1TCgoiPDp2DQJOCR7q2g7E4jYCVII5FTzCQDgEEQQSNQa2DRd+G7IdKroRsDACAnd//QO8AQfD9AQtCvgUA/gcAUgogBQwgOw5AYRBADxggQxtgeR0A8SAADaZALqkg3qoAD/8g5wpBghEhxBRhRBkBSB0hpLwBPuEB8AEOAEHA/gELlQjAmYWZroCJAwSWgJ6AQcmDi40mAIBAgCAJGAUAEACTgNKAQIqHQKWApQiFqMaaG6yqogjiAI4OgYkRgI8AnZzYioCXoIgLBJUYiAKAlpiGirSUgJG7tRCRBomOjx8JgZUGABMQj4CMCIKNgYkHKwmVBgEBAZ4YgJKCj4gCgJUGAQQQkYCOgZaAijkJlQYBBBCdCIKOgJAAKhAaCAAKChKLlYCzOBCWgI8QmRSBnQM4EJaAiQQQnwCBjoGQiAKAqAiPBBeClyyRgpeAiAAOua8Bi4a5CAAglwCAiQGIASCAlIOfgL44o5qE8qqTgI8rGgIOE4yLgJClACCBqoBBTAMOAAOBqAOBoAMOAAOBj
 
oC4A4HCpI+P1Q2CQmuBkICZhMqCioaMA42RjZGNjAKOs6IDgMLYhqgAhMWJnrCdDIqrg5m1loi00YDcrpCGtp2MgYmrmaOogomjgYiGqgqoGCgKBEC/v0EVDYGlDQ8AAACAnoG0BgASBhMNg4wiBvOAjICPjOQDAYkADSgAAICPCyQYkKhKdq6AroBAhCsRi6UAIIG3MI+WiDAwMDAwMDCGQiWCmIg0DIPVHIDZA4SqgN2Qn6+PQf9Zv79gUfyCRIzCrYFBDIKPiYGTro+egc+miIHmgbSBiKmMAgOAlpyzjbG9KgCBipuJlpichq6bgI8giYkgqJYQh5OWEIKxABEMCACXEYoyiykphYgwMKqAjYXynGAro4uWg7BgIQNBbYHppYaLJACJgIwEAAEBgOugQWqRv4G1p4vzIECGo5mFmYrYFQ0NCqKLgJmAkgGAjoGNofrEtEEKnIKwrp+MnYSliZ2Box8EqUCdkaODo4Onh7NAm0E2iJWJh0CXKQCrARCBlomWiJ7AkgGJlYmZxbcpv4COGBCcqZyCnKI4m5q1iZWJkoyR7ci2soyyjKNBW6kpzZyJB5XplJqWi7TKrJ+YmaOcAQeiEIuvjYOUAICikYCY0zAAGI6AiYaupTkJlQYBBBCRgIuEQJ20kYOTgp2vkwiAQLeuqIOjr5OAuqqMgMaaQOSr87+eOQE4CJeOAIDdOaaPAICbgImnMJSAiq2SgKG4QQaIgKSQgLCd7zAIpZSAmCgIn42AQUaSQLyAzkOZ5e6QQMNKu0QuT9BCRmAhuEI4hp7wnZGvj4OelISSQq+//8ogwYy/CICbV/eHRNWpiGAi9kEesIKQH0GLSQPqhIyCiIaJV2XUgMYBCAkLgIsABoDAAw8GgJsDBAAWgEFTgZiAmICegJiAnoCYgJ6AmICegJgHSTOsiYaPgEFwq0UTQMS6wzBEsxiaAQAIgIkDAAAoGAAAAgEACAAAAAABAAsGAwMAgImAkC
 
IEgJBRQ2Cm3aFQNIpA3YFWgY1dMEweQh1F4VNKAEHghgILY/YDIKYHAKkJALQKALoLAD4NAOAOIFcSAOsWAMoZIMAdYIAgAC4tAMAxIImnIPCpAOOrAD79APsAITcHYQEKAR0PISwSAcgUIdEZIUcdATlqIQmNAbzUAanXITruAd6mIksTAwBB0IcCC/IEr4mkgNaAQkfvloBA+oRBCKwAAQEAx4qvnijkMSkIGYmWgJ2a2oqOiaCIiICXGIgCBKqC9o6AoLUQkQaJCYmQgrcAMQmCiICJCYmNAYK3ACMJEoCTixCKgrcAOBCCkwmJiSiCtwAxCRaCiQmJkYC6IhCDiICNiY+EuDAQHoGKCYmQgrcAMBAegYoJiY+DtggwEIOIgIkJiZCCxQMoAD2JCbwBhos4idYBiIopib0NiYoAAAOBsJMBhIqAo4iA45OAiYsbEBEyg4yLgI5CvoKIiEOfgpyCnIGdgb+fiAGJoBGJQI6A9YuDi4mJ/4q7hLiJgJyBioWJlY0BvoSukIqJkIiLgp2MgYmrja+Th4mFifUQlBgoCkDFuQRCPoGSgPqMGIKLS/2CQIyA359CKYXogWB1hInEA4mfgc+BQQ8CA4CWI4DSgbGRiYmFkYyKm4eYjKuDro2OiYqAiYmujYsHCYmggrEAEQwIgKgkgUDrOAmJYE8jgELgj4+PEZeCQL+JpIBCvIBA4YBAlIRBJIlFVhAMg6cTgECkgUI8H4lBcIFAmIpAroK0jp6JjoOsirSJKqONgIkhq4CLgq+NO4CL0YsoQJ+LhIkrtggxCYKIgIkJMoRAv5GIiRjQk4uJQNQxiJqB0ZCOidCMh4nSjoOJQPGOQKSJxSgJGACBi4n2MTKAm4mnMB+AiIqtj0GUOIePibeVgI35KgAIMAeJryAIJ4lBSINgS2iJQIWEuoaYiUP0ALYz0ICKgWBMqoFUxSIvOYadg0CTgkWIsUH/toOxOI2AlSCORU8wkA4BBEE
 
EhoiJQaGNRdWG7DSJUpWJbAUFQO8AQdCMAgujEvoGAIQJAPAKAHAMAPQNAEoQIBoYIHQbIN0gAAyoAFqqIBr/AK0OATgSIcEVIeUZIaodIYzRQUrhIfABDgAAAABBZGxhbSxBZGxtAEFob20sQWhvbQBBbmF0b2xpYW5fSGllcm9nbHlwaHMsSGx1dwBBcmFiaWMsQXJhYgBBcm1lbmlhbixBcm1uAEF2ZXN0YW4sQXZzdABCYWxpbmVzZSxCYWxpAEJhbXVtLEJhbXUAQmFzc2FfVmFoLEJhc3MAQmF0YWssQmF0awBCZW5nYWxpLEJlbmcAQmhhaWtzdWtpLEJoa3MAQm9wb21vZm8sQm9wbwBCcmFobWksQnJhaABCcmFpbGxlLEJyYWkAQnVnaW5lc2UsQnVnaQBCdWhpZCxCdWhkAENhbmFkaWFuX0Fib3JpZ2luYWwsQ2FucwBDYXJpYW4sQ2FyaQBDYXVjYXNpYW5fQWxiYW5pYW4sQWdoYgBDaGFrbWEsQ2FrbQBDaGFtLENoYW0AQ2hlcm9rZWUsQ2hlcgBDaG9yYXNtaWFuLENocnMAQ29tbW9uLFp5eXkAQ29wdGljLENvcHQsUWFhYwBDdW5laWZvcm0sWHN1eABDeXByaW90LENwcnQAQ3lyaWxsaWMsQ3lybABEZXNlcmV0LERzcnQARGV2YW5hZ2FyaSxEZXZhAERpdmVzX0FrdXJ1LERpYWsARG9ncmEsRG9ncgBEdXBsb3lhbixEdXBsAEVneXB0aWFuX0hpZXJvZ2x5cGhzLEVneXAARWxiYXNhbixFbGJhAEVseW1haWMsRWx5bQBFdGhpb3BpYyxFdGhpAEdlb3JnaWFuLEdlb3IAR2xhZ29saXRpYyxHbGFnAEdvdGhpYyxHb3RoAEdyYW50aGEsR3JhbgBHcmVlayxHcmVrAEd1amFyYXRpLEd1anIAR3VuamFsYV9Hb25kaSxHb25nAEd1cm11
 
a2hpLEd1cnUASGFuLEhhbmkASGFuZ3VsLEhhbmcASGFuaWZpX1JvaGluZ3lhLFJvaGcASGFudW5vbyxIYW5vAEhhdHJhbixIYXRyAEhlYnJldyxIZWJyAEhpcmFnYW5hLEhpcmEASW1wZXJpYWxfQXJhbWFpYyxBcm1pAEluaGVyaXRlZCxaaW5oLFFhYWkASW5zY3JpcHRpb25hbF9QYWhsYXZpLFBobGkASW5zY3JpcHRpb25hbF9QYXJ0aGlhbixQcnRpAEphdmFuZXNlLEphdmEAS2FpdGhpLEt0aGkAS2FubmFkYSxLbmRhAEthdGFrYW5hLEthbmEAS2F5YWhfTGksS2FsaQBLaGFyb3NodGhpLEtoYXIAS2htZXIsS2htcgBLaG9qa2ksS2hvagBLaGl0YW5fU21hbGxfU2NyaXB0LEtpdHMAS2h1ZGF3YWRpLFNpbmQATGFvLExhb28ATGF0aW4sTGF0bgBMZXBjaGEsTGVwYwBMaW1idSxMaW1iAExpbmVhcl9BLExpbmEATGluZWFyX0IsTGluYgBMaXN1LExpc3UATHljaWFuLEx5Y2kATHlkaWFuLEx5ZGkATWFrYXNhcixNYWthAE1haGFqYW5pLE1haGoATWFsYXlhbGFtLE1seW0ATWFuZGFpYyxNYW5kAE1hbmljaGFlYW4sTWFuaQBNYXJjaGVuLE1hcmMATWFzYXJhbV9Hb25kaSxHb25tAE1lZGVmYWlkcmluLE1lZGYATWVldGVpX01heWVrLE10ZWkATWVuZGVfS2lrYWt1aSxNZW5kAE1lcm9pdGljX0N1cnNpdmUsTWVyYwBNZXJvaXRpY19IaWVyb2dseXBocyxNZXJvAE1pYW8sUGxyZABNb2RpLE1vZGkATW9uZ29saWFuLE1vbmcATXJvLE1yb28ATXVsdGFuaSxNdWx0AE15YW5tYXIsTXltcgBOYWJhdGFlYW4sTmJhdABOYW5kaW5hZ
 
2FyaSxOYW5kAE5ld19UYWlfTHVlLFRhbHUATmV3YSxOZXdhAE5rbyxOa29vAE51c2h1LE5zaHUATnlpYWtlbmdfUHVhY2h1ZV9IbW9uZyxIbW5wAE9naGFtLE9nYW0AT2xfQ2hpa2ksT2xjawBPbGRfSHVuZ2FyaWFuLEh1bmcAT2xkX0l0YWxpYyxJdGFsAE9sZF9Ob3J0aF9BcmFiaWFuLE5hcmIAT2xkX1Blcm1pYyxQZXJtAE9sZF9QZXJzaWFuLFhwZW8AT2xkX1NvZ2RpYW4sU29nbwBPbGRfU291dGhfQXJhYmlhbixTYXJiAE9sZF9UdXJraWMsT3JraABPcml5YSxPcnlhAE9zYWdlLE9zZ2UAT3NtYW55YSxPc21hAFBhaGF3aF9IbW9uZyxIbW5nAFBhbG15cmVuZSxQYWxtAFBhdV9DaW5fSGF1LFBhdWMAUGhhZ3NfUGEsUGhhZwBQaG9lbmljaWFuLFBobngAUHNhbHRlcl9QYWhsYXZpLFBobHAAUmVqYW5nLFJqbmcAUnVuaWMsUnVucgBTYW1hcml0YW4sU2FtcgBTYXVyYXNodHJhLFNhdXIAU2hhcmFkYSxTaHJkAFNoYXZpYW4sU2hhdwBTaWRkaGFtLFNpZGQAU2lnbldyaXRpbmcsU2dudwBTaW5oYWxhLFNpbmgAU29nZGlhbixTb2dkAFNvcmFfU29tcGVuZyxTb3JhAFNveW9tYm8sU295bwBTdW5kYW5lc2UsU3VuZABTeWxvdGlfTmFncmksU3lsbwBTeXJpYWMsU3lyYwBUYWdhbG9nLFRnbGcAVGFnYmFud2EsVGFnYgBUYWlfTGUsVGFsZQBUYWlfVGhhbSxMYW5hAFRhaV9WaWV0LFRhdnQAVGFrcmksVGFrcgBUYW1pbCxUYW1sAFRhbmd1dCxUYW5nAFRlbHVndSxUZWx1AFRoYWFuYSxUaGFhAFRoYWksVGhhaQBUaWJldGFuLF
 
RpYnQAVGlmaW5hZ2gsVGZuZwBUaXJodXRhLFRpcmgAVWdhcml0aWMsVWdhcgBWYWksVmFpaQBXYW5jaG8sV2NobwBXYXJhbmdfQ2l0aSxXYXJhAFllemlkaSxZZXppAFlpLFlpaWkAWmFuYWJhemFyX1NxdWFyZSxaYW5iAEGAnwILsRTAGZlFhRmZRa4ZgEWOGYBFhBmWRYAZnkWAGeFgRaYZhEWEGYENkxngDzeDK4AZgisBgyuAGYArA4ArgBmAK4AZgisAgCsAkysAviuNGo8r4CQdgTfgSB0ApQUBsQUBggUAtjQHmjQDhTQKhASAGYUEgBmNBIAZgAQAgASAGZ8EgBmJBIo3mQSAN+ALBIAZoQSNhwC7hwGCh68EsZENumMBgmOtewGOewCbUAGAUACKhzSUBACRBAqOBIAZnATQH4M3jh+BGZkfgwsAhwsBgQsBlQsAhgsAgAsCgwsBiAsBgQsBgwsHgAsDgQsAhAsBmAsBgi4AhS4DgS4BlS4Ahi4AgS4AgS4AgS4BgC4AhC4DgS4Bgi4CgC4Ggy4AgC4GkC4JgiwAiCwAgiwAlSwAhiwAgSwAhCwBiSwAgiwAgiwBgCwOgywBiywGhiwAgnAAh3ABgXABlXAAhnAAgXAAhHABiHABgXABgnAGgnADgXAAhHABkXAJgY4AhY4Cgo4Ag44CgY4AgI4AgY4CgY4Cgo4Ci44DhI4Cgo4Ag44BgI4FgI4NlI4EjJAAgpAAlpAAj5ACh5AAgpAAg5AGgZAAgpAEg5ABiZAGiJCMPACCPACWPACJPACEPAGIPACCPACDPAaBPAaAPACDPAGJPACBPAyMTwCCTwCyTwCCTwCFTwOPTwGZTwCCgQCRgQKXgQCIgQCAgQGGgQKAgQOFgQCAgQCHgQWJgQGCgQu5kgOAGZuSJIFEAIBEAIREAJdEAIBEAJZEAYREAIBEAIVEAYlEAYNEH8eTAKOTA6aTAKOTAI6TAIaTgxmBkyT
 
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
 
MZXR0ZXJfTnVtYmVyAE5vLE90aGVyX051bWJlcgBTbSxNYXRoX1N5bWJvbABTYyxDdXJyZW5jeV9TeW1ib2wAU2ssTW9kaWZpZXJfU3ltYm9sAFNvLE90aGVyX1N5bWJvbABQYyxDb25uZWN0b3JfUHVuY3R1YXRpb24AUGQsRGFzaF9QdW5jdHVhdGlvbgBQcyxPcGVuX1B1bmN0dWF0aW9uAFBlLENsb3NlX1B1bmN0dWF0aW9uAFBpLEluaXRpYWxfUHVuY3R1YXRpb24AUGYsRmluYWxfUHVuY3R1YXRpb24AUG8sT3RoZXJfUHVuY3R1YXRpb24AWnMsU3BhY2VfU2VwYXJhdG9yAFpsLExpbmVfU2VwYXJhdG9yAFpwLFBhcmFncmFwaF9TZXBhcmF0b3IAQ2MsQ29udHJvbCxjbnRybABDZixGb3JtYXQAQ3MsU3Vycm9nYXRlAENvLFByaXZhdGVfVXNlAExDLENhc2VkX0xldHRlcgBMLExldHRlcgBNLE1hcmssQ29tYmluaW5nX01hcmsATixOdW1iZXIAUyxTeW1ib2wAUCxQdW5jdHVhdGlvbixwdW5jdABaLFNlcGFyYXRvcgBDLE90aGVyAEGAvwILsAgOAAAAPgAAAMABAAAADgAAAPAAAAAAfwAAAIADAQAAPEFTQ0lJX0hleF9EaWdpdCxBSGV4AEJpZGlfQ29udHJvbCxCaWRpX0MARGFzaABEZXByZWNhdGVkLERlcABEaWFjcml0aWMsRGlhAEV4dGVuZGVyLEV4dABIZXhfRGlnaXQsSGV4AElEU19CaW5hcnlfT3BlcmF0b3IsSURTQgBJRFNfVHJpbmFyeV9PcGVyYXRvcixJRFNUAElkZW9ncmFwaGljLElkZW8ASm9pbl9Db250cm9sLEpvaW5fQwBMb2dpY2FsX09yZGVyX0V4Y2VwdGlvbixMT0UATm9uY2hhcmFjdGVyX0NvZGVfUG9p
 
bnQsTkNoYXIAUGF0dGVybl9TeW50YXgsUGF0X1N5bgBQYXR0ZXJuX1doaXRlX1NwYWNlLFBhdF9XUwBRdW90YXRpb25fTWFyayxRTWFyawBSYWRpY2FsAFJlZ2lvbmFsX0luZGljYXRvcixSSQBTZW50ZW5jZV9UZXJtaW5hbCxTVGVybQBTb2Z0X0RvdHRlZCxTRABUZXJtaW5hbF9QdW5jdHVhdGlvbixUZXJtAFVuaWZpZWRfSWRlb2dyYXBoLFVJZGVvAFZhcmlhdGlvbl9TZWxlY3RvcixWUwBXaGl0ZV9TcGFjZSxzcGFjZQBCaWRpX01pcnJvcmVkLEJpZGlfTQBFbW9qaQBFbW9qaV9Db21wb25lbnQsRUNvbXAARW1vamlfTW9kaWZpZXIsRU1vZABFbW9qaV9Nb2RpZmllcl9CYXNlLEVCYXNlAEVtb2ppX1ByZXNlbnRhdGlvbixFUHJlcwBFeHRlbmRlZF9QaWN0b2dyYXBoaWMsRXh0UGljdABEZWZhdWx0X0lnbm9yYWJsZV9Db2RlX1BvaW50LERJAElEX1N0YXJ0LElEUwBDYXNlX0lnbm9yYWJsZSxDSQBBU0NJSQBBbHBoYWJldGljLEFscGhhAEFueQBBc3NpZ25lZABDYXNlZABDaGFuZ2VzX1doZW5fQ2FzZWZvbGRlZCxDV0NGAENoYW5nZXNfV2hlbl9DYXNlbWFwcGVkLENXQ00AQ2hhbmdlc19XaGVuX0xvd2VyY2FzZWQsQ1dMAENoYW5nZXNfV2hlbl9ORktDX0Nhc2Vmb2xkZWQsQ1dLQ0YAQ2hhbmdlc19XaGVuX1RpdGxlY2FzZWQsQ1dUAENoYW5nZXNfV2hlbl9VcHBlcmNhc2VkLENXVQBHcmFwaGVtZV9CYXNlLEdyX0Jhc2UAR3JhcGhlbWVfRXh0ZW5kLEdyX0V4dABJRF9Db250aW51ZSxJREMATG93ZXJjYXNlLExvd2VyA
 
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
 
skCzQLRAtUC5wLtAvEC9QL5Av0CBQMJAw0DEwMXAxsDIwMnAysDLwM1Az0DQQNJA00DUQMLD1cDWwNfA2MDZwNrA28DcwN5A30DgQOFA4kDjQORA5UDmQOdA6ED3BClA8kDzQPZA90D4QPvA/EDPQRPBJkE8AQCBUoFZAVsBXAFcwWaBfoF/gUHBgsGFAYYBh4GIgYoBo4GlAaYBp4GogarBqwD8watA/YGrgP5Bq8D/AbMA/8GzQMCB84DBQcJBw0HEQeGAzIHNQe5AzcHOweIA1MHiQNWB5ADaweKA3cHsAOJB44DmQefB6MHjAO4B48Duwe0AL4HwAfCBxAgywcuAM0HzwcgANIH1gfbB98H5AfqB/AHIAD2BxIiAQgFCAcIHQglCCcIQwAtCDAIkAE2CDkITgBFCEcITAhOCFEIWgCpA1oAUwhXCGAIaQBiCGUIbwh0CHoIfgiiCEkApAimCKkIVgCrCK0IsAi0CFgAtgi4CLsIwAjCCMUIdgDHCMkIzAjQCHgA0gjUCNcI2wjeCOQI5wjwCPMI9gj5CAIJBgkLCQ8JFAkXCRoJIwksCTsJPglBCUQJRwlKCVYJXAlgCWIJZAloCWoJcAl4CXwJgAmGCYkJjwmRCTAAkwmZCZwJngmhCaQJYS3Na5+fpgmxCbwJxwmVCqEKFQsgACcLMQuNC6ELpQupC60LsQu1C7kLvQvBC8ULIQw1DDkMPQxBDEUMSQxNDFEMVQxZDG8McQxzDKAMvAzcDOQM7Az0DPwMBA0MDRQNIg0uDXoNgg2FDYkNjQ2dDbENtQ28DcINxg0oDiwOMA4yDjYOPA4+DkEOQw5GDncOew6JDo4OlA6cDqMOqQ60Dr4Oxg7KDs8O2Q7dDuQO7A7zDvgOBA8KDxUPGw8iDygPMw89D0UPTA9RD1cPXg9jD2kPcA92D30Pgg+JD40Png+kD6kPrQ+4D74PyQ/QD9YP2g/hD+UP7w/6DwAQBBAJEA8QEx
 
AaEB8QIxApEC8QMhA2EDkQPxBFEFkQYRB5EHwQgBCVEKEQsRDDEMsQzxDaEN4Q6hDyEPQQABEFERERQRFJEU0RUxFXEVoRbhFxEXURexF9EYERhBGMEZIRlhGcEaIRqBGrEW+nrxGzEY0CuxENEgsTCRSNFJIUUBVpFW8VdRV7FYcVkxUrAJ4VthW6Fb4VwhXGFcoV3hXiFUYWXxaFFosWSRdPF1QXdBd0GHoYDhnQGXQafBqaGp8asxq9GsMa1xrcGuIa8BogGy0bNRs5G08bxhvYG9ob3BtkMR0cHxwhHCMcJRwnHEUcUxxYHGEcahx8HIUcihyqHMUcxxzJHMsczRzPHNEc0xzzHPUc9xz5HPscAh0EHQYdCB0XHRkdGx0dHR8dIR0jHSUdJx0pHSsdLR0vHTEdMx03HfQDOR0HIjsdAiI9HUUd9ANHHQciSR0CIksdUx30A1UdByJXHQIiWR1hHfQDYx0HImUdAiJnHW8d9ANxHQcicx0CInUdfx2BHYMdhR2HHYkdjx2sHS0GtB3AHSwG0B1AHkweXx5xHoQehh6KHpAelh6YHpwenh6mHqkeqx6xHrMetTC5HhEfJx8rHy0fMh9/H5AfkSChIKcgoSG/IgBBgOgCC9JHIIgghDIzIIEgpzFvMdA0MdAyM9A0QYBBgUGCQYNBiEGKAABDp0WARYFFgkWISYBJgUmCSYgAAE6DT4BPgU+CT4NPiAAAAABVgFWBVYJViFmBAAAAAGGAYYFhgmGDYYhhigAAY6dlgGWBZYJliGmAaYFpgmmIAABug2+Ab4Fvgm+Db4gAAAAAdYB1gXWCdYh5gQAAeYhBhEGGQahDgUOCQ4dDjESMRYRFhkWHRahFjEeCR4ZHh0enSIJJg0mESYZJqEmHSUppakqCS6dMgUynTIxMAABrIGtOgU6nToy8Am5PhE+GT4tSgVKnUoxTgVOCU6dTjFSnVIxVg1WEVYZVilWLVahXglmCWYhagVq
 
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";if(!S(T)){var
 ka=T;T=b.locateFile?b.locateFile(ka,t):t+ka;}function la(){var a=T;try{if(a==T&&v)return new 
Uint8Array(v);if(S(a))try{var c=ma(a.slice(37)),d=new 
Uint8Array(c.length);for(a=0;a<c.length;++a)d[a]=c.charCodeAt(a);var e=d;}catch(g){throw Error("Converting 
base64 string to bytes failed.");}else e=void 0;var f=e;if(f)return f;throw"both async and sync fetching of 
the wasm failed";}catch(g){w(g);}}function na(){return v||"function"!==typeof 
fetch?Promise.resolve().then(function(){return 
la();}):fetch(T,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file 
at '"+T+"'";return a.arrayB
 uffer();}).catch(function(){return la();});}function V(a){for(;0<a.length;){var 
c=a.shift();if("function"==typeof c)c(b);else{var d=c.B;"number"===typeof d?void 
0===c.A?O.get(d)():O.get(d)(c.A):d(void 0===c.A?null:c.A);}}}function W(a){var 
c=L(a)+1,d=M(c);D(a,E,d,c);return d;}function oa(){}var pa=[null,[],[]];function qa(){function 
a(k){return(k=k.toTimeString().match(/\(([A-Za-z ]+)\)$/))?k[1]:"GMT";}if(!ra){ra=!0;var c=new 
Date().getFullYear(),d=new Date(c,0,1),e=new Date(c,6,1);c=d.getTimezoneOffset();var 
f=e.getTimezoneOffset(),g=Math.max(c,f);N[sa()>>2]=60*g;N[ta()>>2]=Number(c!=f);d=a(d);e=a(e);d=ba(d);e=ba(e);f<c?(N[X()>>2]=d,N[X()+4>>2]=e):(N[X()>>2]=e,N[X()+4>>2]=d);}}var
 ra;oa=(a,c,d)=>{a=H(a);c=null!==c?JSON.parse(H(c)):[];try{const e=b.externalCall(a,c);return 
e?W(e):null;}catch(e){return b.HEAPU8[d]=1,W(e.message);}};var ma="function"===typeof 
atob?atob:function(a){var c="",d=0;a=a.replace(/[^A-Za-z0-9\+\/=]/g,"");do{var 
e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrs
 tuvwxyz0123456789+/=".indexOf(a.charAt(d++));var 
f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));var 
g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));var 
k="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));e=e<<2|f>>4;f=(f&15)<<4|g>>2;var
 
m=(g&3)<<6|k;c+=String.fromCharCode(e);64!==g&&(c+=String.fromCharCode(f));64!==k&&(c+=String.fromCharCode(m));}while(d<a.length);return
 c;},ua={a:function(a,c,d,e){w("Assertion failed: "+H(a)+", at: "+[c?H(c):"unknown 
filename",d,e?H(e):"unknown function"]);},b:function(){w();},g:oa,f:function(a,c){a=H(a);let 
d;try{d=window.JSON.parse(a);}catch(e){d=a;}0!==c?window.alert(a):window.console.log("DUMP",d);},e:function(a){var
 c=E.length;a>>>=0;if(2147483648<a)return!1;for(var d=1;4>=d;d*=2){var 
e=c*(1+.2/d);e=Math.min(e,a+100663296);e=Math.max(a,e);0<e%65536&&(e+=65536-e%65536);a:{try{x.grow(Math.min(2147483648,e)-ca.byteLe
 ngth+65535>>>16);da();var f=1;break a;}catch(g){}f=void 
0;}if(f)return!0;}return!1;},d:function(a,c,d,e){for(var f=0,g=0;g<d;g++){for(var 
k=N[c+8*g>>2],m=N[c+(8*g+4)>>2],y=0;y<m;y++){var 
l=E[k+y],p=pa[a];0===l||10===l?((1===a?aa:u)(K(p,0)),p.length=0):p.push(l);}f+=m;}N[e>>2]=f;return 
0;},c:function(a){var c=Date.now();N[a>>2]=c/1E3|0;N[a+4>>2]=c%1E3*1E3|0;return 
0;},h:function(a,c){qa();a=new 
Date(1E3*N[a>>2]);N[c>>2]=a.getSeconds();N[c+4>>2]=a.getMinutes();N[c+8>>2]=a.getHours();N[c+12>>2]=a.getDate();N[c+16>>2]=a.getMonth();N[c+20>>2]=a.getFullYear()-1900;N[c+24>>2]=a.getDay();var
 d=new 
Date(a.getFullYear(),0,1);N[c+28>>2]=(a.getTime()-d.getTime())/864E5|0;N[c+36>>2]=-(60*a.getTimezoneOffset());var
 e=new 
Date(a.getFullYear(),6,1).getTimezoneOffset();d=d.getTimezoneOffset();a=(e!=d&&a.getTimezoneOffset()==Math.min(d,e))|0;N[c+32>>2]=a;a=N[X()+(a?4:0)>>2];N[c+40>>2]=a;return
 c;},i:function(a){a=H(a);window.console.log(a);},j:function(a,c,d,e){a=H(a);c=H(c);d=H(d);d=`Quickjs -- ${a}
 : ${c}\n${d}`;0!==e?window.alert(d):window.console.error(d);}};(function(){function 
a(f){b.asm=f.exports;x=b.asm.k;da();O=b.asm.t;fa.unshift(b.asm.l);P--;b.monitorRunDependencies&&b.monitorRunDependencies(P);0==P&&(null!==Q&&(clearInterval(Q),Q=null),R&&(f=R,R=null,f()));}function
 c(f){a(f.instance);}function d(f){return na().then(function(g){return 
WebAssembly.instantiate(g,e);}).then(f,function(g){u("failed to asynchronously prepare wasm: 
"+g);w(g);});}var 
e={a:ua};P++;b.monitorRunDependencies&&b.monitorRunDependencies(P);if(b.instantiateWasm)try{return 
b.instantiateWasm(e,a);}catch(f){return u("Module.instantiateWasm callback failed with error: 
"+f),!1;}(function(){return v||"function"!==typeof 
WebAssembly.instantiateStreaming||S(T)||"function"!==typeof 
fetch?d(c):fetch(T,{credentials:"same-origin"}).then(function(f){return 
WebAssembly.instantiateStreaming(f,e).then(c,function(g){u("wasm streaming compile failed: "+g);u("falling 
back to ArrayBuffer instantiation");return d(c);});
 
});})().catch(n);return{};})();b.___wasm_call_ctors=function(){return(b.___wasm_call_ctors=b.asm.l).apply(null,arguments);};b._evalInSandbox=function(){return(b._evalInSandbox=b.asm.m).apply(null,arguments);};b._nukeSandbox=function(){return(b._nukeSandbox=b.asm.n).apply(null,arguments);};b._init=function(){return(b._init=b.asm.o).apply(null,arguments);};b._commFun=function(){return(b._commFun=b.asm.p).apply(null,arguments);};b._dumpMemoryUse=function(){return(b._dumpMemoryUse=b.asm.q).apply(null,arguments);};var
 
M=b._malloc=function(){return(M=b._malloc=b.asm.r).apply(null,arguments);};b._free=function(){return(b._free=b.asm.s).apply(null,arguments);};var
 
X=b.__get_tzname=function(){return(X=b.__get_tzname=b.asm.u).apply(null,arguments);},ta=b.__get_daylight=function(){return(ta=b.__get_daylight=b.asm.v).apply(null,arguments);},sa=b.__get_timezone=function(){return(sa=b.__get_timezone=b.asm.w).apply(null,arguments);},G=b.stackSave=function(){return(G=b.stackSave=b.asm.x).apply(null
 
,arguments);},I=b.stackRestore=function(){return(I=b.stackRestore=b.asm.y).apply(null,arguments);},C=b.stackAlloc=function(){return(C=b.stackAlloc=b.asm.z).apply(null,arguments);};b.ccall=B;b.cwrap=function(a,c,d,e){d=d||[];var
 f=d.every(function(g){return"number"===g;});return"string"!==c&&f&&!e?A(a):function(){return 
B(a,c,d,arguments,e);};};b.stringToNewUTF8=W;var Y;R=function va(){Y||Z();Y||(R=va);};function Z(){function 
a(){if(!Y&&(Y=!0,b.calledRun=!0,!z)){V(fa);V(ha);h(b);if(b.onRuntimeInitialized)b.onRuntimeInitialized();if(b.postRun)for("function"==typeof
 b.postRun&&(b.postRun=[b.postRun]);b.postRun.length;){var 
c=b.postRun.shift();ia.unshift(c);}V(ia);}}if(!(0<P)){if(b.preRun)for("function"==typeof 
b.preRun&&(b.preRun=[b.preRun]);b.preRun.length;)ja();V(ea);0<P||(b.setStatus?(b.setStatus("Running..."),setTimeout(function(){setTimeout(function(){b.setStatus("");},1);a();},1)):a());}}b.run=Z;if(b.preInit)for("function"==typeof
 b.preInit&&(b.preInit=[b.preInit]);0<b.preInit.le
 ngth;)b.preInit.pop()();Z();return Module.ready;};}();var _default=Module;exports["default"]=_default;
+Object.defineProperty(exports, "__esModule", ({value:true}));exports["default"]=void 0;var Module=(()=>{var 
_scriptDir=typeof document!=='undefined'&&document.currentScript?document.currentScript.src:undefined;return 
function(Module){Module=Module||{};var b;b||(b=typeof Module!=='undefined'?Module:{});var 
h=Object.assign,n,q;b.ready=new Promise(function(a,c){n=a;q=c;});var r=h({},b),t="";"undefined"!==typeof 
document&&document.currentScript&&(t=document.currentScript.src);_scriptDir&&(t=_scriptDir);0!==t.indexOf("blob:")?t=t.substr(0,t.replace(/[?#].*/,"").lastIndexOf("/")+1):t="";var
 aa=b.print||console.log.bind(console),u=b.printErr||console.warn.bind(console);h(b,r);r=null;var 
v;b.wasmBinary&&(v=b.wasmBinary);var noExitRuntime=b.noExitRuntime||!0;"object"!==typeof WebAssembly&&x("no 
native wasm support detected");var y,z=!1;function A(a,c,d,e){var f={string:function(l){var 
p=0;if(null!==l&&void 0!==l&&0!==l){var T=(l.length<<2)+1;p=B(T);C(l,D,p,T);}return p;},array:function(l){va
 r p=B(l.length);E.set(l,p);return p;}};a=b["_"+a];var g=[],k=0;if(e)for(var m=0;m<e.length;m++){var 
w=f[d[m]];w?(0===k&&(k=F()),g[m]=w(e[m])):g[m]=e[m];}d=a.apply(null,g);return 
d=function(l){0!==k&&G(k);return"string"===c?H(l):"boolean"===c?!!l:l;}(d);}var I="undefined"!==typeof 
TextDecoder?new TextDecoder("utf8"):void 0;function J(a,c,d){var 
e=c+d;for(d=c;a[d]&&!(d>=e);)++d;if(16<d-c&&a.subarray&&I)return I.decode(a.subarray(c,d));for(e="";c<d;){var 
f=a[c++];if(f&128){var g=a[c++]&63;if(192==(f&224))e+=String.fromCharCode((f&31)<<6|g);else{var 
k=a[c++]&63;f=224==(f&240)?(f&15)<<12|g<<6|k:(f&7)<<18|g<<12|k<<6|a[c++]&63;65536>f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023));}}else
 e+=String.fromCharCode(f);}return e;}function H(a){return a?J(D,a,void 0):"";}function 
C(a,c,d,e){if(0<e){e=d+e-1;for(var f=0;f<a.length;++f){var g=a.charCodeAt(f);if(55296<=g&&57343>=g){var 
k=a.charCodeAt(++f);g=65536+((g&1023)<<10)|k&1023;}if(127>=g){if(d>=e)break;c
 
[d++]=g;}else{if(2047>=g){if(d+1>=e)break;c[d++]=192|g>>6;}else{if(65535>=g){if(d+2>=e)break;c[d++]=224|g>>12;}else{if(d+3>=e)break;c[d++]=240|g>>18;c[d++]=128|g>>12&63;}c[d++]=128|g>>6&63;}c[d++]=128|g&63;}}c[d]=0;}}function
 K(a){for(var c=0,d=0;d<a.length;++d){var 
e=a.charCodeAt(d);55296<=e&&57343>=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++d)&1023);127>=e?++c:c=2047>=e?c+2:65535>=e?c+3:c+4;}return
 c;}function L(a){var c=K(a)+1,d=M(c);d&&C(a,E,d,c);return d;}var ba,E,D,N;function ca(){var 
a=y.buffer;ba=a;b.HEAP8=E=new Int8Array(a);b.HEAP16=new Int16Array(a);b.HEAP32=N=new 
Int32Array(a);b.HEAPU8=D=new Uint8Array(a);b.HEAPU16=new Uint16Array(a);b.HEAPU32=new 
Uint32Array(a);b.HEAPF32=new Float32Array(a);b.HEAPF64=new Float64Array(a);}var O,da=[],ea=[],fa=[];function 
ha(){var a=b.preRun.shift();da.unshift(a);}var 
P=0,Q=null,R=null;b.preloadedImages={};b.preloadedAudios={};function 
x(a){if(b.onAbort)b.onAbort(a);a="Aborted("+a+")";u(a);z=!0;a=new WebAssembly.RuntimeError(a+". Build with
  -s ASSERTIONS=1 for more info.");q(a);throw a;}function S(a){return 
a.startsWith("data:application/octet-stream;base64,");}var 
U;U="data:application/octet-stream;base64,AGFzbQEAAAABxQZsYAR/fn9/AX5gA39/fwF/YAJ/fwF/YAJ/fwBgAX8Bf2AFf35/f38BfmADf39/AGABfAF8YAF/AGACf34BfmACf34AYAR/f39/AX9gAn9/AX5gAn9+AX9gA39/fgF/YAN/fn8BfmABfgF/YAN/fn8AYAZ/fn9/f38BfmADf35/AX9gBX9/f39/AX9gBn9+fn9/fwF+YAN/fn4BfmAEf39+fwF/YAN/f38BfmAEf39/fwBgBH9/f38BfmAGf39/f39/AX9gBX9+fn5+AGABfwF+YAN/fn4Bf2ACfHwBfGABfgF+YAV/fn9+fwF/YAV/fn5/fwF+YAd/fn9+fn5/AX9gAAF/YAAAYAV/f39/fwBgBH9+fn8AYAV/fn5+fwF/YAd/f39/f39/AX9gBn9+f35+fwF/YAR/fn9+AX5gAn5/AX9gBH9+fn8Bf2ACfn8AYAl/f39/f39/f38Bf2AEf35+fwF+YAZ/f39/f38BfmADf35+AGAEf35/fwF/YAV/fn5/fwBgB39+f39/f38BfmADf39+AGAEf35/fwBgBH9+f34Bf2AEf35+fgF/YAR/f39+AX9gCH9/f39/f39/AX9gB39/f39/f38AYAJ8fwF8YAN+f38Bf2ADfHx/AXxgAn5+AX5gBH9/fn8AYAR/fn5+AX5gBn98f39/fwF/YAV/fn9+fwF+YAF8AX5gAX4BfGAFf39+f38Bf2AGf39+fn5+AX9gBn9/f39/fwBgAn98AGAEf39+fwF+YAR/fn9+AGAFf39/f34BfmAHf35+fn9/fwF+YAR+fn5+AX9gCn9/f39
 
/f39/f38Bf2AHf39/f39/fgF+YAd8f39/f39/AGADf39+AX5gBX9/f39/AX5gBX9+f39/AGAFf3x/f38BfmAGf35+fn5/AX9gBH98f38Bf2ACf38BfGAGf35/f39/AX9gBX9/fn5/AX9gBX9+f39/AX9gBn9/fn5/fwF/YAV/fn5+fgF/YAR/f35+AX9gBX9/fn5+AX5gB39/f35+fn8Bf2ADfn5+AX9gBH9/f34BfmACfH8Bf2ACfHwBf2AIf35+fn5/fn4BfmADf358AX5gAAF+YAJ+fgF8YAF/AXxgA39/fAACPQoBYQFhABkBYQFiACUBYQFjAAIBYQFkAAsBYQFlAAQBYQFmAAMBYQFnAAEBYQFoAAIBYQFpAAgBYQFqABkD2AjWCAoQAyADBBADRAYGRQMCAyEDAQMDNgMQESIBNwoQBAgJAQkNAgICAwwcBgQiAx0DDQ0dCQIGLA4BBAgEAQgOOEYCAwMGHQgPAgkLEAsBCx4OBAMEAwwBBAkWRwYGBg0TAwImAw85CBwnAQgMASMBEw8EHAIBFEgECwMEEBcGAQECLS4CDRA5FB0KBAIIDQQEEw0aECEJFg0uDAYvBAEISQsDKDAOBAATAhABC0oGDQECOwQGSwIEDQ8ODg4OBggCMQYCAjJMTRQTPBsIBBQBFgIOEzMtASgDTgECMQECCD0GASE8AggIAgQWAwQPEAQNAwQJARkYTwQ0AgYDUAIEFClRBQ0+Aw4DAQ4eAjghDQkBLQIBAwgEJwMELAEHBAQbAggGJgkWBhQBBAIGAQQDAQ4FMwNSAgIEDFNUBAVVARYZCFYoFw8DFAYGAgECARgLBz8fBwQCAgsBBAIEAgYNADEEGBoLAQILBgsBBAMEAQQBAgMBQEEOIABXDxkEA1gEDAgDFgNZDSIMGBsPWgYBAQYiBQ8DDQMLAgJbAQICDCwQNwsDAQgCBwcuBAQCAQEGCwQBBDsCBgMJFAEDAAIDAQsCLwEI
 
AQICAhQNAQsCCwsCGSAQXDYDEwMQBAQTAgQWDggZFAMCBhEDXV4wGBAbBwlfYABCGgIdHQ0WAQINKjILDhUADj4LAwQCAQRhFwkNEAQYCQMGDxcCAgMCAxxiBhRjCAIBBAdkByUCAgIZBAgECwQCAQIEAQIpKQIBZQAPDwEBDQkEAQAAZiAJBQAFIR4bABsBAwQDLxQBAwICAQIKARADAgQBAgEIAgwUBAQEAQEgQAVnM0ElAwkDAwoGBgEOKwkLCAwAAyABBhUJEB4fBQwQCAMPBRsLGQECCBEMBQBoDgMDAycFBQUmAho1DAICIgIBBAICAwYBAggoHhMMF0IDDg4GCQsCAQ0OFyQMCB4eJgEQAwQYARgEAQICAgEDAAVpMhwDAgIEGQQpPT9qHRwnHAQCAx8EawYIHwEHAB8bAgA1AAAGBgYGBgYGBgYGBQUAAAEMAAEMAQwBDAEMAQwBDAEMBQUBAAAAJQAABQAACQUAAA8JAAUPEgAACQAAAAAAAAAAAAAAAAcAAAcHBRIFBQAAAAUFBQAAAAAABQUFBQAAAAAAAAAAAAAAAAAABQAAAAAAAAAABQUFAAAAAAMABQAFAQAAAAAFAAAFAAUFAAkJAAAAAAUFFgkAAAAAAAAAAAUAAAAFBQAAAAUABQAAAgAAAAAAAAUAAAASBRIFAAASBRISEgAAABgRChEKCgoRChISBQUPBQUFBQUSACorEyMTOhcRCgAAEgkAAAAAAAAAAA8JCQAjExcTEhgjARoaGgEDEQoRCgoKEQoRCgoKEQoRChEKEQoKEQoRCgYYFRUVFQEDAwMVFRUVAAQIJAABA0MABwcHAA8BBwcHBSQkJAcHAQ8HBwcHBwcVBx8HBwcHAwQHAXAB9wL3AgUHAQGAAoCAAgYJAX8BQZC8xAILB08QAWsCAAFsALIEAW0A3wgBbgCBBQFvAL0HAXAAiwcBcQC2BgFyAKICAXMA5wEBdAEAAXUAzQgBdgDMC
 
AF3AMsIAXgAuwgBeQC6CAF6ALkICfMFAQBBAQv2ApQErwiuCK0IrAizCLIIsQjAB9sErQeTB4UH6wboAr8GtQbHBKEGkAaPBo4GjQbYCIkGygjECMAIvAjsBbgItwi2CLUItAjrBYMEqwiwCIkImgWICOUB3wfWB6oIiwiQBekH0gfRB9AHzgfKB8gHkAeyBqkIqAinCKYIpQinBaQIowiiCKEIoAifCJ4InQicCJsImgiZCJgIlwiWCPADlQjwA5QIkwiSCJEIigiGCIUIhAiHCKUFkAiPCPMH8gfxB/AH7wfuB+0H7AfrB94H3QfcB/AD2wenBdoH2QfYB9cHjgiNCIwIgwiCCIEIgAj/B/4H/Qf8B/sH+gf5B/gH9wf2B/UH9AfqB+gH5wfmB+UH5AfjB+IH4QfgB9UH1AfTB4sCzwfNB8wHywfJB8cHqQXGB8UHxAfDB/0EwgfBB78HqgW+B7wHuwe6B7kHuAe3B7YHtQeyBbQHswfXBLIHsQewB9UErweuB6wH1gSrB6oHqQeoB6cHpgelB6QHoweiB5sDoQegB58HngedB5wHmweaB5kHmAeXB5YH/AOVB5QHsQWzBZIHkQePB44HjQeMB4oHiQeIB4cH0QTQBIYHhAeDB4IHgQeAB/8G/gb9BvwG+wb6BvkG+Ab3BvYG9Qb0BvMG8gbxBvAG7wbuBu0G7AbqBukG6AbnBuYG5QbkBuMG4gbhBuAG3wbeBt0G3AbbBtoG0wjSCNYI2QbHCN4I3AixBNoI1QivBNkCmQXJCMMIwQjYBtQIyAjCCN0I2wjZCKUCsQPOCM8I1wjXBtYG1QbUBtMG0gbRBtAGzwbOBs0GzAbLBsoGyQbIBscGxgbFBsQGwwbCBsEGyQTABsgEvga9BrwGuwa6BrkGuAa3BrQGswaxBrAGngadBpwGmwatBq8GqwapBqcGpQajBqAGrAauBqoGqAamBqQGogafBsUEmgaZBpgGlwaWBpUGlA
 
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
 
YCICAAIAMvAAQ2AhwMAgsgACAEIAVqIgMoAAA2AiAgACADKAAENgIYIAAgAy0ACDYCHAwBCwsgACAJNgIMIAAgATYCCEEBIQ0LIAhBEGokACANCwsAIAAgAUEAEJ8EC78BAwJ/AX4BfEF/IQICQAJAAkACQAJAAkAgAUIgiKciA0EHag4OAgQEBAQEAwABAQEEBAUECyABp0EARw8LIAGnDwsgAacpAgQhBCAAIAEQCiAEQv////8Hg0IAUg8LIAGnLQAFIQIgACABEAogAkF/c0GAAXFBB3YPCyADQQdrQW1NBEAgARBJIgVEAAAAAAAAAABiIAW9Qv///////////wCDQoGAgICAgID4/wBUcQ8LIAAgARAKQQEhAgsgAgsZACAAKAIQIAEQ5gEiAUUEQCAAEMcBCyABCz8BAX8jAEEQayICJAACfyABIAAoAhBHBEAgAiABNgIAIABBtf0AIAIQE0F/DAELIAAQDwshACACQRBqJAAgAAsiACAALQAHQYABcQRAIAAgAUEBdGovARAPCyAAIAFqLQAQCygBAX8jAEEQayICJAAgAiABOwEOIAAgAkEOakECEIgBGiACQRBqJAALCwAgACABQQEQ4wUL5QoCBX8PfiMAQeAAayIFJAAgBEL///////8/gyINQg+GIANCMYiEIQ4gAiAEhUKAgICAgICAgIB/gyEKIAJC////////P4MiC0IgiCEPIA1CEYghECAEQjCIp0H//wFxIQcCQAJAIAJCMIinQf//AXEiCUH//wFrQYKAfk8EQCAHQf//AWtBgYB+Sw0BCyABUCACQv///////////wCDIgxCgICAgICAwP//AFQgDEKAgICAgIDA//8AURtFBEAgAkKAgICAgIAghCEKDAILIANQIARC////////////AIMiAkKAgICAgIDA//8AVCACQoCAgICAgMD//wBRG0UEQCAEQoCAgICAgCCEIQogAyEBDAILIAEgDEK
 
AgICAgIDA//8AhYRQBEAgAiADhFAEQEKAgICAgIDg//8AIQpCACEBDAMLIApCgICAgICAwP//AIQhCkIAIQEMAgsgAyACQoCAgICAgMD//wCFhFAEQCABIAyEIQJCACEBIAJQBEBCgICAgICA4P//ACEKDAMLIApCgICAgICAwP//AIQhCgwCCyABIAyEUARAQgAhAQwCCyACIAOEUARAQgAhAQwCCyAMQv///////z9YBEAgBUHQAGogASALIAEgCyALUCIGG3kgBkEGdK18pyIGQQ9rEHFBECAGayEGIAUpA1giC0IgiCEPIAUpA1AhAQsgAkL///////8/Vg0AIAVBQGsgAyANIAMgDSANUCIIG3kgCEEGdK18pyIIQQ9rEHEgBiAIa0EQaiEGIAUpA0giAkIPhiAFKQNAIgNCMYiEIQ4gAkIRiCEQCyADQg+GQoCA/v8PgyICIAFCIIgiBH4iEiADQhGIQv////8PgyIMIAFC/////w+DIgF+fCIRQiCGIg0gASACfnwiAyANVK0gAiALQv////8PgyILfiIVIAQgDH58IhMgDkL/////D4MiDSABfnwiFCARIBJUrUIghiARQiCIhHwiESACIA9CgIAEhCIOfiIWIAsgDH58Ig8gBCANfnwiEiAQQv////8Hg0KAgICACIQiAiABfnwiEEIghnwiF3whASAHIAlqIAZqQf//AGshBgJAIAsgDX4iGCAMIA5+fCIMIBhUrSAMIAIgBH58IgQgDFStfCACIA5+fCAEIAQgEyAVVK0gEyAUVq18fCIEVq18IAIgC34iCyANIA5+fCICIAtUrUIghiACQiCIhHwgBCACQiCGfCICIARUrXwgAiACIBAgElStIA8gFlStIA8gElatfHxCIIYgEEIgiIR8IgJWrXwgAiACIBEgFFStIBEgF1atfHwiAlatfCIEQoCAgICAgMAAg1BFBEAgBkEBaiEGDAELIANCP4ghCyAEQgGG
 
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
 
IBFqIhAgDE0NAAsLIAtBEGokACAFIAAgCSgCQBChBCIGQebvACAGGzYCECAFQcgAakGXKCAFQRBqEIMCIAAgBhA2IANBf0cEQCAFIAM2AgAgBUHIAGpB+uIAIAUQgwILIAVByABqQSkQDgwBC0EAIQ8gBUHIAGpBvPcAQQAQgwILIAVByABqQQoQDiAEIQMgDw0CCyADIQQMAAsACyAFQcgAakEAEA5CgICAgCAhEiAFKAJURQRAIAAgBSgCSBB0IRILIAVByABqEJUBIAAgAUE1IBJBAxAZGiAFQeAAaiQAC+wBAgJ/AX4jAEEQayIDJAAgAUEIayIEKQMAIQUCfwJAIAAgA0EMaiABQRBrIgEpAwAQxAEEQCAAIAUQCgwBCyAAIANBCGogBRDEAQ0AIAECfwJAAkACQAJAAkACQCACQa0Baw4DAQMCAAsCQCACQaABaw4CBQAECyADKAIMIAMoAgh1DAULIAMoAgggAygCDHEMBAsgAygCCCADKAIMcgwDCyADKAIIIAMoAgxzDAILEAEACyADKAIMIAMoAgh0C603AwBBAAwBCyABQoCAgIAwNwMAIARCgICAgDA3AwBBfwshACADQRBqJAAgAAvsBAIGfwJ+AkAgAUKAgICAcINCgICAgJB/UgRAQoCAgIDgACEJIAAgARA8IgEQCw0BCwJAIAJCgICAgHCDQoCAgICQf1ENAEKAgICA4AAhCSAAIAIQPCICEAtFDQAgASECDAELAkAgAqciBCkCBCIJQv////8Hg1ANAAJAIAGnIgMoAgBBAUcNACADKQIEIAmFQoCAgIAIg0IAUg0AIAAoAhAgAxCiBCAEKAIEIgVB/////wdxIgcgAygCBCIIQf////8HcSIGaiAFQR92dCAIQR92IghrQRFqSQ0AIAgEQCADIAZBAXRqQRBqIARBEGogBUEBdBAjGiADIAMpAgQiCSAEKQIEfEL/////B4MgCUKAgICAeIOENwIED
 
AILIANBEGoiBSAGaiAEQRBqIAcQIxogAyADKQIEIgkgBCkCBHxC/////weDIgogCUKAgICAeIOENwIEIAUgCqdqQQA6AAAMAQsCfgJAAkAgBCkCBCIJp0H/////B3EgAykCBCIKp0H/////B3FqIgZBgICAgARPBEAgAEGTwwBBABBNDAELIAAgBiAJIAqEpyIHQR92EPwBIgUNAQtCgICAgOAADAELAkAgB0EATgRAIAVBEGogA0EQaiADKAIEQf////8HcRAjIgcgAygCBEH/////B3FqIARBEGogBCgCBEH/////B3EQIxogBiAHakEAOgAADAELIAVBEGoiBiADIAMoAgRB/////wdxEJQFIAYgAygCBEEBdGogBCAEKAIEQf////8HcRCUBQsgBa1CgICAgJB/hAshCSAAIAEQCgwBCyABIQkLIAAgAhAKIAkLQAAgAAJ/An8gAwRAIAEoAiQgAkEDdGpBBGoMAQtBACABKAIgIgNFDQEaIAMgAS8BKCACakEEdGoLKAIACxDgAQsLACAAQZ8JQQAQFAuBDAINfwR+IwBBgAFrIgskACALIQUjAEHgAWsiCCQAAkAgAb0iEkKAgICAgICA+P8Ag0KAgICAgICA+P8AUQRAIBJC////////////AINCgYCAgICAgPj/AFoEQCAFQc7CuQI2AAAMAgsgAUQAAAAAAAAAAGMEQCAFQS06AAAgBUEBaiEFCyAFQdkLLQAAOgAIIAVB0QspAAA3AAAMAQsCQCAERQRAAn4gAZlEAAAAAAAA4ENjBEAgAbAMAQtCgICAgICAgICAfwsiE0KAgICAgICAEH1CgYCAgICAgGBUIBO5IAFicg0BIAhB1QFqIgNBADoAACATIBNCP4ciEnwgEoUhEiACrSEUA0AgAyICQQFrIgNBMEHXACASIBIgFIAiFSAUfn2nIgRBCkgbIARqOgAAIBIgFFohBCAVIRIgBA0ACyATQgBTBEAgAk
 
ECayIDQS06AAALIAUgAxCABgwCC0QAAAAAAAAAACABIAFEAAAAAAAAAABhGyEBIARBAkcNACMAQYACayICJAACQCACQYABaiABIANBAWoiBEEAEIcDIAJqLQB/QTVHDQAgAkGAAWogASAEQYAIEIcDIgYgAiABIARBgBAQhwNHDQAgAkGAAWogAiAGEHUNAEGACEGAECACLQCAAUEtRhshCQsgBSABIAMgCRCHAxogAkGAAmokAAwBCyADIQIgCEEIaiENIAhBDGohDiAIQRBqIQwjAEGQA2siByQAAkAgBEEDcUEBRiIPRQRAQREhAkEBIQoDQCACIApNBEBBACEJDAMLIAEgAiAKakEBdiIJIA0gDiAMQQAgB0GQAmoiBhC9AiAGEPkFIAFhBEAgCUEBIAlBAEwbIQYDQCAJQQJIBEAgBiECDAMLIAkiAkEBayIJIAxqLQAAQTBGDQALBSAJQQFqIQoLDAALAAsgASACQQFqIgYgB0EMaiAHQQhqIAdBkAFqIgpBACAHQZACahC9AiACIApqLQAAQTVHDQAgASAGIAdBDGogB0EIaiAHQZABaiIKQYAIIAdBkAJqIhAQvQIgASAGIAdBBGogByAHQRBqIhFBgBAgEBC9AiAKIBEgBhB1DQAgBygCDCAHKAIERw0AQYAIQYAQIAcoAggbIQkLIAEgAiANIA4gDCAJIAdBkAJqEL0CIAdBkANqJAAgCCgCDARAIAVBLToAACAFQQFqIQULIAgoAgghBgJAIARBBHENACAGQQBMIAYgA0EVIA8bSnJFBEAgAiAGTARAQQAhBCAGIAJrIgNBACADQQBKGyEDIAUgCEEQaiACECMgAmohBQNAIAMgBEcEQCAFQTA6AAAgBEEBaiEEIAVBAWohBQwBCwsgBUEAOgAADAMLIAUgCEEQaiAGECMgBmoiBEEuOgAAQQAhBSACIAZrIgJBACACQQBKGyECA0AgBEEBaiEEIAIgBUcEQCA
 
EIAhBEGogBSAGamotAAA6AAAgBUEBaiEFDAELCyAEQQA6AAAMAgsgBkEFakEFSw0AIAVBsNwAOwAAQQAhBEEAIAZrIQMgBUECaiEFA0AgAyAERwRAIAVBMDoAACAEQQFqIQQgBUEBaiEFDAELCyAFIAhBEGogAhAjIAJqQQA6AAAMAQsgBSAILQAQOgAAAkAgAkECSARAIAVBAWohBAwBCyAFQS46AAEgBUECaiEEQQEhBQNAIAIgBUYNASAEIAhBEGogBWotAAA6AAAgBUEBaiEFIARBAWohBAwACwALIARB5QA6AAAgBkEBayEDIAZBAEwEfyAEQQFqBSAEQSs6AAEgBEECagshAiAIIAM2AgAjAEEQayIEJAAgBCAINgIMIwBBoAFrIgMkACADQQhqIgVBgKwEQZABECMaIAMgAjYCNCADIAI2AhwgA0F+IAJrIgZB/////wcgBkH/////B0kbIgY2AjggAyACIAZqIgI2AiQgAyACNgIYIAVBleMAIAgQqAQgBgRAIAMoAhwiAiACIAMoAhhGa0EAOgAACyADQaABaiQAIARBEGokAAsgCEHgAWokACAAIAsQdCESIAtBgAFqJAAgEgs3AQF/IAAgAhA5IQUgACACEAogBUUEQCAAIAMQCkF/DwsgACABIAUgAyAEEBkhBCAAIAUQESAEC5MCAgJ/AXwjAEEQayIEJAACQAJAAkACQCACQiCIpyIFQQJNBEAgAqciA0EATg0DDAELIAVBB2tBbU0EQCAEAn8gAhBJIgZEAAAAAAAA8EFjIAZEAAAAAAAAAABmcQRAIAarDAELQQALIgM2AgwgBiADuGENAwwBCyADBEBBfyEDIAAgAhCeASICEAsNBCAAIARBDGogAkEBEM0CDQQgBCgCDCEDDAMLIAAgBEEMaiACEMUBBEAgACACEAoMAgtBfyEDIAAgAhCeASICEAsNAyAAIARBCGogAkEAEM0CDQMgBCgCCCIDIAQo
 
AgxGDQILIABBwMEAEGkLQX8hAwwBCyABIAM2AgBBACEDCyAEQRBqJAAgAwsfACAAIAEgACACEMgBIgIgAUEAEBIhASAAIAIQESABCzIBAX8jAEHQAGsiAiQAIAIgACACQRBqIAEQhwE2AgAgAEGp4QAgAhDRAiACQdAAaiQAC5EBAgF/AX4jAEEQayIFJAAgBSAENgIMQX8hBCAAIAEgBUEMahDiAUUEQCADEJoEIAEgAiADKAIEIAMoAgBBA3FBAnRBvKIBaigCABEaACEGIAMQ2QUgBSgCDCIAIAAoAgBB/////wNxNgIAIANCgICAgDAgBiAGEAsiABs3AwBBf0EAIAAbIQQLIAVBEGokACAECyYBAX8jAEEQayIDJAAgAyACNgIMIABBAiABIAIQ/QEgA0EQaiQACyYBAX8jAEEQayIDJAAgAyACNgIMIABBAyABIAIQ/QEgA0EQaiQACwoAIABBICABa3YL0wEBA38jAEEQayIFJABBfyEDAkAgACgCFA0AAkACQCABQYCAgIAETgRAIAAoAgBBk8MAQQAQTQwBCyABIAAoAgxBA2xBAm0QSkH/////AxCxASEBIAAoAhAiBCACQYACSHJFBEAgACABEO4DIQMMAwsgACgCACAAKAIEIAEgBHQgBGtBEWogBUEMahC0ASICDQELIAAQigMMAQsgACgCECEDIAUoAgwhBCAAIAI2AgQgACAEIAN2IAFqQf////8DELEBNgIMQQAhAwsgBUEQaiQAIAMLgQECAn8BfgJAIAEpAgQiBEL//////////79/VgRAIAEoAgwhAAwBCyAAKAI0IARCIIinIAAoAiRBAWtxQQJ0aiECIAAoAjghAwNAIAMgAigCACIAQQJ0aigCACICIAFGDQEgAkEMaiECIAANAAtBzvUAQbfjAEH4FEGtDhAAAAsgAAvzBgIGfwF+AkACQAJAAn8gAkECTARAIAIgASkCBCIJQj6Ip0YEQCAAI
 
AEQ1QIiAxDxAUUNBSABIAEoAgBBAWs2AgAgAw8LIAAoAjQgACgCJEEBayABIAIQ5gVB/////wNxIgdxIghBAnRqIQMgCadB/////wdxIQUDQCACIAMoAgAiA0UNAhoCQCAAKAI4IANBAnRqKAIAIgQpAgQiCUIgiKdB/////wNxIAdHIAlCPoinIAJHciAJp0H/////B3EgBUdyDQAgBCABIAUQ5QUNACADEPEBDQQgBCAEKAIAQQFqNgIADAQLIARBDGohAwwACwALIAJBA0chB0EDCyEFAkAgACgCPA0AQQAhA0HTASAAKAIsQQNsQQJtEEoiBEH/////A0sNASAAIAAoAjggBEECdBDlASIGRQ0BIAAoAiwiAkUEQCAAQRAQmwIiAkUEQCAAIAYQHwwDCyACQQE2AgAgAiACKQIEQoCAgICAgICAQIQ3AgQgBiACNgIAIAAgACgCKEEBajYCKEEBIQILIAAgAjYCPCAAIAY2AjggACAENgIsIARBAWshBgNAIAIgBE8NASAAKAI4IAJBAnRqQQAgAkEBaiIDIAIgBkYbEOQFNgIAIAMhAgwACwALAkAgAQRAIAEpAgQiCUL//////////z9YBEAgASAJIAWtQj6GhDcCBAwCCyAAIAmnIgJBH3UgAkH/////B3EgAkEfdnRqQRFqEOYBIgJFBEBBACEDDAQLIAJBATYCACACIAIpAgRC/////3eDIAEpAgRCgICAgAiDhCIJNwIEIAIgCUKAgICAeIMgASkCBEL/////B4OENwIEIAJBEGogAUEQaiABKAIEIgNBH3UgA0H/////B3EgA0EfdnRqQQFqECMaIAAgARCjBCACIQEMAQsgAEEQEOYBIgFFBEBBAA8LIAFCgYCAgICAgICAfzcCAAsgACAAKAI4IAAoAjwiA0ECdGoiAigCAEEBdjYCPCACIAE2AgAgASADNgIMIAEgATUCBCAHrUIghoQgBa1CPoaENwIEIA
 
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
 
IAIgC0sbIQsDQCACIAtGDQMgAiAMaiIRIBEtAABBAXI6AAAgAkEBaiECDAALAAtBASEPIAwgCy0AAWoiAiACLQAAQQJyOgAADAELQQAgCiAKQX5GGyEKCyANIA5qIQ0MAQsLAn8CQCAPRQ0AQQAhAgNAIAJB/wFGDQEgAiAMaiELIAJBAWohAiALLQAAQQNHDQALQX8MAQtBACAKIApBfkYbCyECIAxBgAJqJAAgAkULIQICQCAERQRAIAAoAjQgCUcEQCAAIANBAxDqAQ0EIAAoAgAgA2pBDToAACADIAAoAgBqIAk6AAEgAyAAKAIAaiAALQA0QQFrOgACIANBA2ohAwsCQAJAAkAgCA4CAAECCyAAIAM2AgQMBAsgACADQQUQ6gENBCAAKAIAIANqIAZBCHI6AAAgACgCACADakEBaiAHEFsMAwsgCEH/////B0YNASAAIANBChDqAQ0DIAAoAgAgA2pBDzoAACADIAAoAgBqQQFqIAgQWyADQQVqIgIgACgCAGogBkEIcjoAACADIAAoAgBqQQZqIAdBBWoQWyAAQQ4gAhDKASAAQRAQXQwCCyACIARBAUcgCEH/////B0dyckUEQCAAQQkgBmsgAxDKAQwCCyAEQQFHBEAgACADQQUQ6gENAyAAKAIAIANqQQ86AAAgACgCACADakEBaiAEEFsgAEEOIANBBWoiAxDKASAAQRAQXQsgCEH/////B0YEQCAAKAIEIQQgACAGQQhyIAIgB2pBBWoQuAEaIAIEQCAAQRkQXSAAIAMgBxC/AyAAQRogBBDKAQwDCyAAIAMgBxC/AyAAQQcgBBDKAQwCCyAEIAhODQEgAEEPIAggBGsQuAEaIAAoAgQhAiAAIAZBCHIgB0EFahC4ARogACADIAcQvwMgAEEOIAIQygEgAEEQEF0MAQsgACADIAJBBWoQ6gENASAAKAIAIANqIAZBCHI6AAAgACgCACADakEBaiACIAdqQQVqE
 
FsgAgRAIAMgACgCAGpBGToABSAAQRogAxDKAQwBCyAAQQcgAxDKAQsgACAFKAIcNgIYQQAhAgwECyAAEKoCDAILIABB6xdBABA+DAELIABB2R1BABA+C0F/IQILIAVBIGokACACIgMNACABRQ0CIAAgACgCBCIDIBJrIgIgA2oQzAFFDQFBfyEDCyADDwsgACgCACAQaiIGIAJqIAYgAyAQaxDpASAAKAIAIgYgEGogAyAGaiACECMaDAALAAsJACABIAIQ8QULlQEBA34gAb0iAkL///////////8AgyEDIAC9IgRC////////////AINCgYCAgICAgPj/AFoEQCADQoGAgICAgID4/wBUDwsCf0F/IANCgICAgICAgPj/AFYgACABY3INABpBASAAIAFkDQAaQQAgAEQAAAAAAAAAAGINABogBEIAUwRAIAJCP4enQX9zDwsgAkI/iKcLC6MBAQF+AkACQCACRQRAIABBLxAxIQQgARAQIQIMAQsgAykDACEEAn4CQCABEBAiAkUNACAEEPYDRQ0AIABB0PkAIAAgACgCECAEpxDVAhAxQcL5ABC9AQwBCyAAIAQQKwsiBBALDQELIAINACAAIAFBBRBtIgEQC0UEQCAAIAEgBBDNASAAIAFBMCAEpykCBEL/////B4NBABAZGgsgASEECyAEC0oCAX8BfkKAgICA4AAhBCAAIAEgAhCZASIDBH4gAxCYAQRAIAJFBEBCAA8LIAAQc0KAgICA4AAPCyADKAIgNQIQBUKAgICA4AALCyoAIAAgASACEJkBIgBFBEBCgICAgOAADwsgACgCIDUCDEKAgICAcIQQDQtGAQF/AkAgACgCCCACaiIDIAAoAgxKBEAgACADIAEQ1AINAQsDQCACQQBMBEBBAA8LIAJBAWshAiAAIAEQlAFFDQALC0F/C3gBBX8gASgCBEH/////B3EiA0UEQCACDwsgACgCBEH/////B3EhBSADQQ
 
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
 
ABQYABSUUEQCAAIAFBgAFyQf8BcRAOIAFBB3YhAQwBCwsgACABQf8BcRAOC18AIABCKIZCgICAgICAwP8AgyAAQjiGhCAAQhiGQoCAgICA4D+DIABCCIZCgICAgPAfg4SEIABCCIhCgICA+A+DIABCGIhCgID8B4OEIABCKIhCgP4DgyAAQjiIhISEC10BBH8gASEDAkADQCACIANNIARBBEtyDQEgAy0AACIGQf8AcSAEQQdsdCAFciEFIARBAWohBCADQQFqIQMgBkGAAXENAAsgACAFNgIAIAMgAWsPCyAAQQA2AgBBfwteAQF/AkAgAS0AB0GAAXEEQCAAIAFBEGogAkEBdBAjGgwBCyACQQAgAkEAShshAiABQRBqIQEDQCACIANGDQEgACADQQF0aiABIANqLQAAOwEAIANBAWohAwwACwALC7ABAQJ/IwBBEGsiBiQAAkACQCACECBFDQAgAqciBy8BBkEMRw0AIActAClBDEcNACAAIAEgAyADBH8gBAUgBkKAgICAMDcDCCAGQQhqCyAFIAcuASogBygCJBESACECDAELAkAgACACIAEgAyAEECIiAhALRQRAIAIQIA0BIAAgAhAKIABBgh1BABAUCyAFQQA2AgBCgICAgOAAIQIMAQsgBUECNgIACyAGQRBqJAAgAgsUAQF+IAAgARApIQIgACABEAogAgscAQF/IABCgICAgHBaBH8gAKctAAVBB3YFQQALCw0AIAAgASACQQAQ3QELQwACfCABvUKAgICAgICA+P8Ag0KAgICAgICA+P8AUQRARAAAAAAAAPh/IACZRAAAAAAAAPA/YQ0BGgsgACABEIEGCwt7AQF+AkACfiAEQQRxBEBBJiECIAAgARBhDAELQSUhAiAAIAEQKQsiARALDQAgACACEKIBIgUQCw0AIABBEBAtIgIEQCACQQA2AgwgAiAEQQNxNgIIIAIgATcDACAFIAIQiwEgBQ8LIAAgBRA
 
KCyAAIAEQCkKAgICA4AALlQECAn4BfyAAIAEQMSEDAkAgARBcDQBBACAAKAIQKAI4IAFBAnRqKAIAKQIEIgJCgICAgICAgIBAg0KAgICAgICAgIB/UiACQoCAgIDw////P4NQIAJC//////////+/f1ZxGw0AIAKnQX9zQR92QQEgAkL/////B4NQGyEECyAEBH4gAEH95gAgA0H75gAQvQEFIAMLC6cBAQV/IACnIgMoAhAiASABKAIYQX9zQQJ0QaR+cmooAgAhAiABECchAQNAIAJFBEBBAA8LIAEgAkEBayIEQQN0aiIFKAIAIQIgBSgCBEE2RwRAIAJB////H3EhAgwBCwtBASEBAkAgAkH/////A0sNACADKAIUIARBA3RqKQMAIgBCgICAgHCDQoCAgICQf1INACAApygCBEH/////B3FBAEchAQsgAQvTAwEGfyAAQeAAaiIEEG8gAEHQAGohBSAAKAJUIQICQAJAA0AgBSACIgFHBEAgAUEEayIDLQAAQRBPDQIgASgCBCECIAAgAUEIayIGQQYQngQgAyADLQAAQQ9xQRByOgAAIAYoAgANASABEEYgASAEEEsMAQsLDAELQfP0AEG34wBBxCxBs8YAEAAACyAAQdQAaiEBIABB0ABqIQICQAJAA0AgAiABKAIAIgFHBEAgAUEIayIDKAIAQQBMDQIgAUEEayIEIAQtAABBD3E6AAAgACADQQcQngQgAUEEaiEBDAELCyAAQeQAaiEBIABB4ABqIQIDQCACIAEoAgAiAUcEQCAAIAFBCGtBCBCeBCABQQRqIQEMAQsLDAELQZDzAEG34wBB5yxB5TsQAAALIAAiAkECOgBoIABB2ABqIQMgAEHgAGohAQNAIAEgAigCZCIARwRAIABBBGstAABBDnEEQCAAEEYgACADEEsFIAIgAEEIaxDfBQsMAQsLIAJBADoAaCACKAJcIQACQAJAA0AgACADRwRAIABBBGst
 
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
 
IQkgAachAiABQgF8IQEgACAGIAkgAyACQQN0aikDABANEI8BQQBODQEMAwsLIAAgBkEwIAVCgICAgAh8IgFC/////w9YBH4gBUL/////D4MFIAW5EBULEEhBAEgNAQsgACAGEAogBUL/////D4MgAUL/////D1gNARogBbkQFQwBCyAAIAYQCkKAgICA4AALIQEgC0EQaiQAIAELPAAgAUEAQdAAEEUiASAENgIMIAEgADYCACABIAIgA2o2AjwgASACNgI4IAFBATYCCCABQqCAgIAQNwMQC38BBH8gAS0AAEHbAEYEQCABQQFqIgMQQkEBayECIAAoAhAoAjghBEHCASEBA0AgAUHPAUcEQAJAIAQgAUECdGooAgAiBSgCBEH/////B3EgAkcNACAFQRBqIAMgAhB1DQAgACABEBcPCyABQQFqIQEMAQsLEAEACyAAIAEQyAELFwAgACAAKQPAASABIAIgA0EAQX8QtwULNQEBfyAAKALsASIHRQRAIABB0t0AQQAQFEKAgICA4AAPCyAAIAEgAiADIAQgBSAGIAcRNQALxgICAn4Cf0KAgICAMCECAkACQCABKQJUIgNCGIZCOIenDQAgA0IghkI4h6cEQCADQhCGQjiHp0UNASAAIAEpA2AQDRCSAUKAgICA4AAPCyABIANC/////49gg0KAgICAEIQ3AlQDQCABKAIUIARKBEAgASgCECAEQQN0aigCBCIFKQJUQhiGQjiHp0UEQCAAIAUQuAUiAhALDQQgACACEAoLIARBAWohBAwBCwsCQCABKAJQIgQEQEKAgICA4ABCgICAgDAgACABIAQRAgBBAEgbIQIMAQsgACABKQNIQoCAgIAwQQBBABA1IQIgAUKAgICAMDcDSAsgAhALBEAgAUEBOgBZIAEgACgCECkDgAEQDTcDYAsgASABKQJUQv///4eAYINCgICACIQ3AlQLIAIPCyABIAEpAlRC/////49ggzcCV
 
CACC8AFAgd/AX4jAEEQayIFJAACQCABKQJUIglCKIZCOIenDQAgASAJQv//g3iDQoCABIQ3AlQDQAJAIAEoAhQgA0wEQEEAIQMDQCABKAIgIANKBEACQCABKAIcIgQgA0EUbGoiAigCCEEBRw0AIAIoAgwiB0H9AEYNACAAIAVBCGogBUEMaiABKAIQIAIoAgBBA3RqKAIEIAcQ7AMiAkUNACAAIAIgASAEIANBFGxqKAIQEOsDDAQLIANBAWohAwwBCwtBACECIAEoAlANAyABKAJIKAIkIQhBACEDQQAhBANAAkAgASgCOCAETARAA0AgAyABKAIgTg0CIAEoAhwgA0EUbGoiAigCCEUEQCAIIAIoAgBBAnRqKAIAIgQgBCgCAEEBajYCACACIAQ2AgQLIANBAWohAwwACwALIAEoAhAgASgCNCAEQQxsaiIHKAIIQQN0aigCBCECAkACQCAHKAIEIgZB/QBGBEAgACACEIkDIgkQC0UNAQwGCyAAIAVBCGogBUEMaiACIAYQ7AMiBgRAIAAgBiACIAcoAgQQ6wMMBgsCQCAFKAIMIgYoAgxB/QBGBEAgACAFKAIIKAIQIAYoAgBBA3RqKAIEEIkDIgkQCw0HIABBARDmAyICRQRAIAAgCRAKDAgLIAAgAkEYaiAJEB4MAQsgBigCBCICRQRAIAUoAggoAkgoAiQgBigCAEECdGooAgAhAgsgAiACKAIAQQFqNgIACyAIIAcoAgBBAnRqIAI2AgAMAQsgACAIIAcoAgBBAnRqKAIAQRhqIAkQHgsgBEEBaiEEDAELC0F/IQIgACABKQNIQoGAgIAQQQBBABAiIgkQCw0DIAAgCRAKQQAhAgwDCyADQQN0IQRBfyECIANBAWohAyAAIAQgASgCEGooAgQQuQVBAE4NAQwCCwtBfyECCyAFQRBqJAAgAgv/AgIGfwJ+AkAgASkCVEIwhkI4h6cNAAJAIAEoAlAEQANAIAIgAS
 
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
 
+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
 
IAWGEIwDIgUQCw0CQgAhBiACQgA3AwAMAQsCQAJAIAanIgovAQYiDEETa0H//wNxQQFNBEAgCigCICEKQoCAgIDgACEHIAAgAiADKQMIEMIBDQQgCi0ABA0CAkAgAikDACIGQX8gC3RBf3MiC6yDUARAIAYgCigCACIMrCIIWA0BCyAAQewZEGkMBQsCQCADKQMQIgkQEARAIAsgDHENASACIAggBn0gBYgiCDcDCAwDCyAAIAJBCGogCRDCAQ0FIAotAAQNAyAKNAIAIAIpAwgiCCAFhiAGfFoNAgsgAEHxwQAQaQwECyAMQRVrQf//A3FBCE0EQAJ+AkACQCAAIAEgBBBtIgEQCw0AAkACQCAGpyIDEJgBRQRAIAMoAighCkKAgICAMCEFIAMoAiAiDCgCDCILKAIgIg0tAAVFBEAgACALrUKAgICAcIRCgICAgDAQ8gEiBRALDQMLIAAgBSAKrSIIIARB5YoBajEAAIYQjAMhByAAIAUQCiAHEAsNAiADEJgBRQ0BIAAgBxAKCyAAEHMMAQsgB0ETED8hCyAAIAEgB0IAIAgQ8wMNACADLwEGIARGDQJBACEDA0AgAyAKRg0CIAAgBiADEHkiBRALDQEgACABIAMgBRCVAiEEIANBAWohAyAEQQBODQALCyAAIAEQCkKAgICA4AAhAQsgAQwBCyALKAIIIA0oAgggDCgCEGogCygCABAjGiABCyEHDAQLIwBBEGsiAyQAQoCAgIDgACEFIAAgASAEEG0iBxALRQRAQoCAgIAwIQECfgJAIAAgBkHDASAGQQAQEiIFEAsNAAJAAkAgBRAQDQAgBRAmDQBBACEKIwBBEGsiCyQAIANBADYCBAJAIAAQTiIIEAsNAEKAgICAMCEJAkAgACAGIAUQ6AMiARALDQAgACABQeoAIAFBABASIgkQCw0AA0AgACABIAkgC0EMahCsASIGEAsNASALKAIMBEAgACAGEAogACAJEAogA
 
CABEAogAyAKNgIEDAMLIAAgCCAKrSAGQYCAARCrAUEASA0BIApBAWohCgwACwALIAAgCRAKIAAgARAKIAAgCBAKQoCAgIDgACEICyALQRBqJAAgCCEBIAAgBRAKIAEQCw0CIAMgAzUCBCIFNwMIDAELIAAgA0EIaiAGEEANASAGEA0hASADKQMIIQULIABCgICAgDAgBSAEQeWKAWoxAACGEIwDIgYQCw0AIAAgByAGQgAgBRDzAw0AQQAhBANAIAcgBK0gBVkNAhogACABIAQQeSIGEAsNASAAIAcgBCAGEJUCIQogBEEBaiEEIApBAE4NAAsLIAAgARAKIAchAUKAgICA4AALIQUgACABEAoLIANBEGokACAFIQcMAwsgAykDABANIQUMAQsgABBzDAELAkAgACABIAQQbSIHEAsEQCAAIAUQCgwBCyAAIAcgBSAGIAgQ8wNFDQEgACAHEAoLQoCAgIDgACEHCyACQRBqJAAgBwvYAwICfgJ/IwBBIGsiBCQAAkAgAUL///////////8AgyIDQoCAgICAgMCAPH0gA0KAgICAgIDA/8MAfVQEQCABQgSGIABCPIiEIQMgAEL//////////w+DIgBCgYCAgICAgIAIWgRAIANCgYCAgICAgIDAAHwhAgwCCyADQoCAgICAgICAQH0hAiAAQoCAgICAgICACIVCAFINASACIANCAYN8IQIMAQsgAFAgA0KAgICAgIDA//8AVCADQoCAgICAgMD//wBRG0UEQCABQgSGIABCPIiEQv////////8Dg0KAgICAgICA/P8AhCECDAELQoCAgICAgID4/wAhAiADQv///////7//wwBWDQBCACECIANCMIinIgVBkfcASQ0AIARBEGogACABQv///////z+DQoCAgICAgMAAhCICIAVBgfcAaxBxIAQgACACQYH4ACAFaxCgAiAEKQMIQgSGIAQpAwAiAEI8iIQhAiAEKQMQIAQpAx
 
iEQgBSrSAAQv//////////D4OEIgBCgYCAgICAgIAIWgRAIAJCAXwhAgwBCyAAQoCAgICAgICACIVCAFINACACQgGDIAJ8IQILIARBIGokACACIAFCgICAgICAgICAf4OEvwsPACAAIAEgAkEAQQMQgQILrw8CBX8OfiMAQdACayIFJAAgBEL///////8/gyELIAJC////////P4MhCiACIASFQoCAgICAgICAgH+DIQ0gBEIwiKdB//8BcSEIAkACQCACQjCIp0H//wFxIglB//8Ba0GCgH5PBEAgCEH//wFrQYGAfksNAQsgAVAgAkL///////////8AgyIMQoCAgICAgMD//wBUIAxCgICAgICAwP//AFEbRQRAIAJCgICAgICAIIQhDQwCCyADUCAEQv///////////wCDIgJCgICAgICAwP//AFQgAkKAgICAgIDA//8AURtFBEAgBEKAgICAgIAghCENIAMhAQwCCyABIAxCgICAgICAwP//AIWEUARAIAMgAkKAgICAgIDA//8AhYRQBEBCACEBQoCAgICAgOD//wAhDQwDCyANQoCAgICAgMD//wCEIQ1CACEBDAILIAMgAkKAgICAgIDA//8AhYRQBEBCACEBDAILIAEgDIRQBEBCgICAgICA4P//ACANIAIgA4RQGyENQgAhAQwCCyACIAOEUARAIA1CgICAgICAwP//AIQhDUIAIQEMAgsgDEL///////8/WARAIAVBwAJqIAEgCiABIAogClAiBht5IAZBBnStfKciBkEPaxBxQRAgBmshBiAFKQPIAiEKIAUpA8ACIQELIAJC////////P1YNACAFQbACaiADIAsgAyALIAtQIgcbeSAHQQZ0rXynIgdBD2sQcSAGIAdqQRBrIQYgBSkDuAIhCyAFKQOwAiEDCyAFQaACaiALQoCAgICAgMAAhCISQg+GIANCMYiEIgJCAEKAgICAsOa8gvUAIAJ9IgRCABB
 
wIAVBkAJqQgAgBSkDqAJ9QgAgBEIAEHAgBUGAAmogBSkDmAJCAYYgBSkDkAJCP4iEIgRCACACQgAQcCAFQfABaiAEQgBCACAFKQOIAn1CABBwIAVB4AFqIAUpA/gBQgGGIAUpA/ABQj+IhCIEQgAgAkIAEHAgBUHQAWogBEIAQgAgBSkD6AF9QgAQcCAFQcABaiAFKQPYAUIBhiAFKQPQAUI/iIQiBEIAIAJCABBwIAVBsAFqIARCAEIAIAUpA8gBfUIAEHAgBUGgAWogAkIAIAUpA7gBQgGGIAUpA7ABQj+IhEIBfSICQgAQcCAFQZABaiADQg+GQgAgAkIAEHAgBUHwAGogAkIAQgAgBSkDqAEgBSkDoAEiDCAFKQOYAXwiBCAMVK18IARCAVatfH1CABBwIAVBgAFqQgEgBH1CACACQgAQcCAGIAkgCGtqIQYCfyAFKQNwIhNCAYYiDiAFKQOIASIPQgGGIAUpA4ABQj+IhHwiEELn7AB9IhRCIIgiAiAKQoCAgICAgMAAhCIVQh+IQv////8PgyIEfiIRIAFCAYYiDEIgiCILIBAgFFatIA4gEFatIAUpA3hCAYYgE0I/iIQgD0I/iHx8fEIBfSITQiCIIhB+fCIOIBFUrSAOIA4gE0L/////D4MiEyABQj+IIhYgCkIBhoRC/////w+DIgp+fCIOVq18IAQgEH58IAQgE34iESAKIBB+fCIPIBFUrUIghiAPQiCIhHwgDiAOIA9CIIZ8Ig5WrXwgDiAOIBRC/////w+DIhQgCn4iESACIAt+fCIPIBFUrSAPIA8gEyAMQv7///8PgyIRfnwiD1atfHwiDlatfCAOIAQgFH4iFyAQIBF+fCIEIAIgCn58IgogCyATfnwiEEIgiCAKIBBWrSAEIBdUrSAEIApWrXx8QiCGhHwiBCAOVK18IAQgDyACIBF+IgIgCyAUfnwiC0IgiCACIAtWrUIghoR8IgIgD1StIAIgEEIg
 
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
 
BSAAIASnQQIQ9QMLC0kCAX4BfyAAIAEQwQMiARALBEAgAQ8LQoCAgIAwIQIgAaciAygCBEGAgICAeEcEQCAAIAAoAhAgAxDVAhAxIQILIAAgARAKIAILCQAgACABEMEDC04BAX4jAEEQayICJAAgAiAAIAEQwQMiATcDCAJAIAEQCwRAIAEhBAwBCyAAQoCAgIAwQQEgAkEIahDHBCEEIAAgARAKCyACQRBqJAAgBAstAEKAgICA4AAgACADKQMAIAMpAwhBABCaAiIAQQBHrUKAgICAEIQgAEEASBsLhgEBA34gAykDACIBIQQgAkEETgRAIAMpAxghBAsgAUL/////b1gEQCAAEChCgICAgOAADwsgAykDECEGQoCAgIDgACEFAkAgACADKQMIEDkiAkUNACAAIAEgAiAGEA0gBEEAEIcEIQMgACACEBEgA0EASA0AIANBAEetQoCAgIAQhCEFCyAFCyoAIAMpAwAiAUL/////b1gEQCAAEChCgICAgOAADwsgACABQQNBABCBAwtjAQF+IAMpAwAiBEL/////b1gEQCAAEChCgICAgOAADwtCgICAgOAAIQECQCAAIAMpAwgQOSICRQ0AIAAgBCACEHghAyAAIAIQESADQQBIDQAgA0EAR61CgICAgBCEIQELIAELYwECfgJAAkAgAykDACIBQv////9vWARAIAAQKAwBCyADKQMIIQUgASEEIAJBA04EQCADKQMQIQQLIAAgBRA5IgINAQtCgICAgOAADwsgACABIAIgBEEAEBIhASAAIAIQESABC2YBAX4gAykDACIEQv////9vWARAIAAQKEKAgICA4AAPC0KAgICA4AAhAQJAIAAgAykDCBA5IgJFDQAgACAEIAJBABDcASEDIAAgAhARIANBAEgNACADQQBHrUKAgICAEIQhAQsgAQuKAQIBfwJ+IwBBEGsiBCQAIAMpAwghBSADKQMAIgYhAQJAAkACQAJAIAJBA
 
0gNACADKQMQIgEQsgENACAAQd8pQQAQFAwBCyAAIARBDGogBRCKBCICDQELQoCAgIDgACEBDAELIAAgBiABIAQoAgwiAyACEJADIQEgACACIAMQmQMLIARBEGokACABCxwAIAAgAykDAEEAIAJBAWsQSiADQQhqQQIQmwMLQwAjAEEQayICJAACfkKAgICA4AAgACACQQxqIAMpAwAQxQENABpCICACKAIMIgBFDQAaIABnrQshASACQRBqJAAgAQtQACMAQRBrIgIkAEKAgICA4AAhAQJAIAAgAkEMaiADKQMAEJICDQAgACACQQhqIAMpAwgQkgINACACKAIIIAIoAgxsrSEBCyACQRBqJAAgAQsGACAAtrsLUAAgACAAKQPQASIBQgyIIAGFIgFCGYYgAYUiAUIbiCABhSIBNwPQASABQp26s/uUkv2iJX5CDIhCgICAgICAgPg/hL9EAAAAAAAA8L+gEBUL9QMDA3wFfwN+IwBBEGsiCCQAIAhCADcDCAJAAkAgAkEATA0AQoCAgIDgACEBIAAgCEEIaiADKQMAEEcNAUEBIQkgCCsDCCEEIAJBAUcEQANAIAIgCUYNAiAAIAggAyAJQQN0aikDABBHDQMgCUEBaiEJIAgrAwAhBSMAQSBrIgckACAEvUL///////////8AgyINIAW9Qv///////////wCDIgwgDCANVhsiDr8hBAJAIA5CNIinIgpB/w9GDQAgDSAMIAwgDVQbIgy/IQUCQCAOUA0AIAxCNIinIgtB/w9GDQAgCyAKa0HBAE4EQCAFIASgIQQMAgsCfCALQf4LTwRAIAREAAAAAAAAMBSiIQQgBUQAAAAAAAAwFKIhBUQAAAAAAACwawwBC0QAAAAAAADwPyAKQbwESw0AGiAERAAAAAAAALBroiEEIAVEAAAAAAAAsGuiIQVEAAAAAAAAMBQLIQYgB0EYaiAHQRBqIAUQgwYgB0EIaiAHIAQQgwYgBi
 
AHKwMAIAcrAxCgIAcrAwigIAcrAxign6IhBAwBCyAFIQQLIAdBIGokAAwACwALIASZIQQLIAS9An8gBJlEAAAAAAAA4EFjBEAgBKoMAQtBgICAgHgLIgC3vVEEQCAArSEBDAELIAQQFSEBCyAIQRBqJAAgAQtOACAAIABEAAAAAAAA8L9EAAAAAAAA8D8gAEQAAAAAAAAAAGMbIAC9Qv///////////wCDQoCAgICAgID4/wBWGyAARAAAAAAAAAAAYRsLgwECAn4BfyAAvSIBQjSIp0H/D3EiA0H+B00EQCABQoCAgICAgICAgH+DIQIgA0H+B0cgAUKAgICAgICA8L9/UXJFBEAgAkKAgICAgICA+D+Evw8LIAK/DwsgA0GyCE0EfCABQj+HIAF8QgFBswggA2uthiIBQgGIfEIAIAF9g78FIAALC90EAgJ8BX8jAEEQayIIJAACfiACRQRARAAAAAAAAPD/RAAAAAAAAPB/IAQbEBUMAQsCfCADKQMAIgFC/////w9YBEAgAkEBIAJBAUobIQsgAachCUEBIQcDQCAHIAtHBEAgCbcgAyAHQQN0aikDACIBQoCAgIAQWg0DGiABpyEKAn8gBARAIAkgChBKDAELIAkgChCxAQshCSAHQQFqIQcMAQsLIAmtDAILQoCAgIDgACAAIAhBCGogARBHDQEaQQEhByAIKwMICyEFIAcgAiACIAdIGyECA0AgAiAHRwRAQoCAgIDgACAAIAggAyAHQQN0aikDABBHDQIaAkAgBb1C////////////AINCgICAgICAgPj/AFYNACAIKwMAIga9Qv///////////wCDQoCAgICAgID4/wBWBEAgBiEFDAELIAQEQCAFIAUgBqUgBr1C////////////AINCgICAgICAgPj/AFYbIAYgBb1C////////////AINCgICAgICAgPj/AFgbIAa9IAW9g78gBUQAAAAAAAAAAGIgBkQAAAA
 
AAAAAAGJyGyEFDAELIAUgBSAGpCAGvUL///////////8Ag0KAgICAgICA+P8AVhsgBiAFvUL///////////8Ag0KAgICAgICA+P8AWBsgBr0gBb2EvyAFRAAAAAAAAAAAYiAGRAAAAAAAAAAAYnIbIQULIAdBAWohBwwBCwsgBb0CfyAFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAsiALe9UQRAIACtDAELIAUQFQshASAIQRBqJAAgAQvQAQECfyMAQRBrIgIkAAJ+IAAgAUEmEGgiA0UEQCAEQQA2AgBCgICAgOAADAELAkAgAykDACIBEBBFBEAgAiADKAIMIgU2AgwgBSABpyIGKAIEQf////8HcUkNASAAIAEQCiADQoCAgIAwNwMACyAEQQE2AgBCgICAgDAMAQsgBiACQQxqENkBIQcgAyACKAIMNgIMIARBADYCACAHQf//A00EQCAAIAdB//8DcRCnAwwBCyAAIAYgBUEBdGpBEGpBAhCbBAshASACQRBqJAAgAQvHAgICfwJ+IwBBIGsiAiQAQoCAgIDgACEHAkAgACABEGEiARALDQAgACACQQhqIgVBBxBBGiAFQTwQPRogBSAEQQN0IgVB4MoBaigCACIGEIwBGkGePSAEdkEBcUUEQCACQQhqIgRBIBA9GiAEIAVB5MoBaigCABCMARogBEHD/gAQjAEaIAAgAykDABBhIggQCwRAIAAgARAKIAJBCGoQQwwCCyAIpyEDQQAhBANAIAQgAygCBEH/////B3FPRQRAAkAgAyAEEC8iBUEiRgRAIAJBCGpB7e8AEIwBGgwBCyACQQhqIAUQlAEaCyAEQQFqIQQMAQsLIAAgCBAKIAJBCGpBIhA9GgsgAkEIaiIAQT4QPRogACABEI0BGiAAQe/1ABCMARogACAGEIwBGiACQQhqQT4QPRogABA3IQcLIAJBIGokACAHC7QEAQh/IwBBMGsiAiQAAkAgACAB
 
EGEiARALDQAgAaciBygCBEH/////B3EiA0UNAAJAIAAgAkEYaiADEEENAEEAIQMgAkEANgIUA0ACQCAHKAIEQf////8HcSADSgRAQQAhAwJ/AkAgBEUgByACQRRqENkBIgtBowdHcg0AIAIoAhRBAWshCiMAQRBrIggkACAIIAo2AgwDQCAIKAIMIgVBAEwEf0EABSAFQQFrIQYCQAJAIActAAdBgAFxBEAgByAGQQF0ai8BECIJQYD4A3FBgLgDRyAFQQJJcg0BIAcgBUECayIFQQF0ai8BECIMQYDQAGpB//8DcUGACEsNASAJQf8HcSAMQf8HcUEKdHJBgIAEaiEJDAILIAYgB2otABAhCQsgBiEFCyAIIAU2AgwgCQsiBhC5BA0ACwJAIAYQuwRFBEBBACEGDAELQQEhBiAIIApBAWoiBTYCDANAIAUgBygCBEH/////B3FODQEgByAIQQxqENkBIgUQuQQEQCAIKAIMIQUMAQsLIAUQuwRFIQYLIAhBEGokACAGRQ0AIAJBwgc2AghBAQwBCyACQQhqIAsgBBC3AwsiBkEAIAZBAEobIQYDQCADIAZGDQIgA0ECdCEFIANBAWohAyACQRhqIAUgAkEIamooAgAQvgFFDQALDAMLIAAgARAKIAJBGGoQNyEBDAMLIAIoAhQhAwwACwALIAAgARAKIAJBGGoQQ0KAgICA4AAhAQsgAkEwaiQAIAELWgEBfkKAgICA4AAhBCAAIAEQYSIBEAsEfkKAgICA4AAFIAAgAykDABArIgQQCwRAIAAgARAKQoCAgIDgAA8LIAGnIASnEJQCIQIgACABEAogACAEEAogAq0LCwkAIAAgARCMBQtfAAJ+AkAgAUIgiKciAkF/RwRAIAJBeUcNASABEA0MAgsgAaciAi8BBkEFRw0AIAIpAyAiAUKAgICAcINCgICAgJB/Ug0AIAEQDQwBCyAAQfXDAEEAEBRCgICAgOAACwugAQIBf
 
wF+IAAgARBhIgEQCwRAIAEPCyABpyIFKAIEQf////8HcSECQQAhAwJAIARBAXFFDQADQCACIANGBEAgAiEDDAILIAUgAxAvEOQCRQ0BIANBAWohAwwACwALAkAgBEECcUUEQCACIQQMAQsDQCACIgQgA0wNASAFIARBAWsiAhAvEOQCDQALCyAAIAUgAyAEEJsBIQYgACABEAogBgumAwIGfwN+IwBBIGsiBSQAQoCAgIDgACEMAkAgACABEGEiARALDQACQAJAIAAgBUEEaiADKQMAEMMBDQAgBSgCBCIHIAGnIgkoAgRB/////wdxIghMDQFBICEKQoCAgIAwIQsCQCACQQJIDQAgAykDCCINEBANACAAIA0QKyILEAsNAQJAAkAgC6ciBigCBEH/////B3EOAgABAgsgACALEAoMAwsgBkEAEC8hCkEAIQYLIAdBgICAgAROBEAgAEGTwwBBABBNDAELIAAgBUEIaiAHEEFFBEACQCAEBEAgBUEIaiAJQQAgCBBXDQELIAcgCGshAgJAAkAgBgRAA0AgAiIDQQBMDQIgAyADIAYoAgRB/////wdxELEBIgdrIQIgBUEIaiAGQQAgBxBXRQ0ACyAFIAM2AgQMAwsgBUEIaiAKIAIQygQNAgwBCyAFIAM2AgQLIARFBEAgBUEIaiAJQQAgCBBXDQELIAAgCxAKIAAgARAKIAVBCGoQNyEMDAQLIAVBCGoQQwsgACALEAoLIAAgARAKDAELIAEhDAsgBUEgaiQAIAwL9AQCBH4FfyMAQdAAayICJAAgAykDCCEIIAMpAwAhBQJAAkACQCABEBBFBEAgARAmRQ0BCyAAQYkcQQAQFAwBCwJAIAUQEA0AIAUQJg0AIAQEQCAAIAUQzARBAEgNAgtCgICAgOAAIQYgACAFQcYBIAVBABASIgcQCw0CIAcQEA0AIAcQJg0AIAIgCDcDKCACIAE3AyAgACAHIAVBAiACQSBqEDUhBg
 
wCCyAAIAJBCGpBABBBGkKAgICAMCEHAkAgACABECsiBhALBEBCgICAgDAhBQwBCyAAIAUQKyIFEAsNACAAIAgQOiINRQRAIAAgCBArIgcQCw0BCyAGpyEKIAWnIgwpAgQhAQNAAkACQCABQv////8Hg1AEQEEAIQMgC0UNASAJIAooAgRB/////wdxTw0CIAlBAWohAwwBCyAKIAwgCRDLBCIDQQBODQAgCw0BIAJBCGoQQyAAIAUQCiAAIAcQCgwFCyACIAU3AyACfiANBEAgAiAGNwMwIAIgA603AyggACAAIAhCgICAgDBBAyACQSBqECIQPAwBCyACIAc3A0ggAkKAgICAMDcDQCACQoCAgIAwNwM4IAIgBjcDKCACIAOtNwMwIAAgAkEgahCPBQsiARALDQIgAkEIaiILIAogCSADEFcaIAsgARCNARogDCkCBCIBp0H/////B3EgA2ohCUEBIQsgBA0BCwsgAkEIaiIDIAogCSAKKAIEQf////8HcRBXGiAAIAUQCiAAIAcQCiAAIAYQCiADEDchBgwCCyACQQhqEEMgACAFEAogACAHEAogACAGEAoLQoCAgIDgACEGCyACQdAAaiQAIAYLggICA38BfiMAQSBrIgIkAAJAAkAgACABEGEiARALDQAgACACIAMpAwAQjQQNACACKQMAIgdCgICAgAhaBEAgAEHWFxBpDAELIAGnIgUoAgQiBkH/////B3EiBEUNASAHpyIDQQFGDQEgByAErX5CgICAgARaBEAgAEGTwwBBABBNDAELIAAgAkEIaiADIARsIAZBH3YQqwMNAAJAIARBAUcEQANAIANBAEwNAiACQQhqIAVBACAEEFcaIANBAWshAwwACwALIAJBCGogBUEAEC8gAxDKBBoLIAAgARAKIAJBCGoQNyEBDAELIAAgARAKQoCAgIDgACEBCyACQSBqJAAgAQulAQICfwJ+IwBBEGsiAiQAAkAgACABEGE
 
iARALBEAgASEGDAELQoCAgIDgACEGAkAgACACQQxqIAMpAwAgAaciBSgCBEH/////B3EiBCAEEGMNACACIAQ2AgggAykDCCIHEBBFBEAgACACQQhqIAcgBCAEEGMNASACKAIIIQQLIAAgBSACKAIMIgMgBCADEEoQmwEhBgsgACABEAoLIAJBEGokACAGC6cBAgN/An4jAEEQayICJAACQCAAIAEQYSIBEAsEQCABIQcMAQtCgICAgOAAIQcCQCAAIAJBDGogAykDACABpyIGKAIEQf////8HcSIEIAQQYw0AIAIgBCACKAIMIgVrIgQ2AgggACAGIAUgAykDCCIIEBAEfyAEBSAAIAJBCGogCCAEQQAQYw0BIAIoAggLIAVqEJsBIQcLIAAgARAKCyACQRBqJAAgBwu6AQICfwJ+IwBBEGsiAiQAAkAgACABEGEiARALBEAgASEGDAELQoCAgIDgACEGAkAgACACQQxqIAMpAwAgAaciBSgCBEH/////B3FBABBjDQAgAiAFKAIEQf////8HcSIENgIIIAMpAwgiBxAQRQRAIAAgAkEIaiAHIARBABBjDQEgAigCCCEECyAAIAUgAigCDCIDIAQgAyAESCIFGyAEIAMgBRsQmwEhBgsgACABEAoLIAJBEGokACAGC5IEAgl+A38jAEEQayINJAAgAykDCCEHIAMpAwAhBAJAAkACQCABEBBFBEAgARAmRQ0BCyAAQYkcQQAQFAwBCwJAIAQQECICDQAgBBAmDQBCgICAgOAAIQUgACAEQcgBIARBABASIggQCw0CIAgQEA0AIAgQJg0AIA0gBzcDCCANIAE3AwAgACAIIARBAiANEDUhBQwCC0KAgICAMCEKAkAgACABECsiDBALBEBCgICAgDAhBQwBCyAAEE4iBRALDQACQCAHEBAEQCANQX82AgAMAQsgACANIAcQxQFBAEgNAQsgDKciDikCBCEBIAAgBBArIgoQCw0A
 
AkAgDSgCACIDRQ0AIAGnQf////8HcSEPAkAgAgRADAELIAqnIgIpAgRC/////weDIQsgDwRAIAFC/////weDIAt9IAtQrSIEfSEHIAOtIQgDQAJAIAQgCXwiASAHVQ0AIA4gAiABpxDLBCIDQQBIDQAgACAOIAmnIAMQmwEiARALDQUgACAFIAYgAUEAEKsBQQBIDQUgCyADrHwhCSAGQgF8IgYgCFINAQwECwsgBkL/////D4MhBgwBCyALUA0BCyAAIA4gCacgDxCbASIBEAsNASAAIAUgBiABQQAQqwFBAEgNAQsgACAMEAogACAKEAoMAgsgACAFEAogACAMEAogACAKEAoLQoCAgIDgACEFCyANQRBqJAAgBQvSAgEDfiMAQTBrIgIkACACIAE3AyggAykDACEFAkACQCABEBBFBEAgARAmRQ0BCyAAQYkcQQAQFEKAgICA4AAhBwwBCwJAIAUQEA0AIAUQJg0AQoCAgIDgACEHIAAgBSAEIAVBABASIgYQCw0BAkAgBEHFAUcNACAAIAUQzARBAE4NACAAIAYQCgwCCyAGEBANACAGECYNACAAIAYgBUEBIAJBKGoQNSEHDAELIAIgACABECsiBjcDCEKAgICA4AAhByAGEAsNACACIAU3AxACQAJAAn8gBEHFAUcEQEKAgICAMCEBQQEMAQsgAEH6xQAQdCIBEAsNASACIAE3AxhBAgshAyAAIAApA0ggAyACQRBqEK8BIQUgACABEAogBRALRQ0BCyAAIAYQCgwBCyAAIAUgBEEBIAJBCGoQugIhByAAIAIpAwgQCgsgAkEwaiQAIAcL+QICBX8DfiMAQRBrIgUkAAJAIAAgARBhIgoQCwRAIAohAQwBCwJAIAAgAykDABCCBCIGBEBCgICAgOAAIQFCgICAgDAhCyAGQQBMDQEgAEG+3QBBABAUDAELQoCAgIDgACEBIAAgAykDABArIgsQCw0AIAunIgcoAgQhC
 
CAFIAqnIgkoAgRB/////wdxIgZBACAEQQJGGzYCDAJAIAJBAkgNACADKQMIIgwQEA0AIAAgBUEMaiAMIAZBABBjDQELIAYgCEH/////B3EiBmshAgJAAkACQAJAIAQOAgABAgsgBSgCDCEDDAILIAUoAgwiAyACSiEEQoCAgIAQIQEgAyECIARFDQEMAgsgBSAFKAIMIAZrIgM2AgwgAyECC0KAgICAECEBIANBAEggAiADSHINAANAIAkgByADQQAgBhDCA0UEQEKBgICAECEBDAILIAIgA0chBCADQQFqIQMgBA0ACwsgACAKEAogACALEAoLIAVBEGokACABC68DAQV+IAEQEARAIAAQgQQhAQsgACABQTsgAUEAEBIiBRALBEAgBQ8LAkACQCAFECBFBEAgACAFEAogACABEI8DIgJFDQECfyAEQQBIBEAgAigCKEEYagwBCyACIARBA3RqQdgAagspAwAQDSEFCyAAIAVBAxBQIQEgACAFEAogARALDQECQCADIARBB0ZBA3RqKQMAIgUQEEUEQCAAIAUQKyIFEAsNASAAIAFBMyAFQQMQGRoLIARBB0YEQCADKQMAIQYjAEEQayICJABCgICAgDAhBQJAAkAgACAGQQAQ9QEiBhALBEBCgICAgDAhCAwBCyAAIAZB6gAgBkEAEBIiCBALDQAgABBOIgUQCw0AA0AgACAGIAggAkEMahCsASIJEAtFBEAgAigCDA0DIAAgBSAHIAkQbiEDIAdCAXwhByADQQBODQELCyAAIAZBARCwARoLIAAgBRAKQoCAgIDgACEFCyAAIAgQCiAAIAYQCiACQRBqJAAgBRALDQEgACABQTQgBUEDEBkaCyAAIAFBAEEAQQEQxgIgAQ8LIAAgARAKC0KAgICA4AAhAQsgAQuNAwMHfwF8AX4jAEEQayIFJAACQCAAIAEQYSIBEAsNAAJAAkAgACADKQMAECsiDRALDQAgDaciCigCBE
 
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
 
AoAkQgAkEYbGooAgQFQS8LEDEL8QECBH8BfiMAQTBrIgIkAAJAIAMpAwAiCRAgRQRAQoGAgIAQIQEMAQtCgICAgOAAIQEgACACQSxqIAJBKGogCaciCEEDEJABDQAgAigCLCEGIAIoAighB0EAIQMCQANAIAMgB0cEQCAAIAJBCGogCCAGIANBA3RqKAIEEFMiBUEASA0CAkAgBUUNACAAIAJBCGoQTCACKAIIIgVBAXFFIARFIAVBAnFFcnENAEKAgICAECEBDAMLIANBAWohAwwBCwsgACAJEKABIgNBAEgNASADQQFHrUKAgICAEIQhAQsgACAGIAcQZAsgAkEwaiQAIAELnQECAX4Bf0KAgICAMCEBAkACQCAAIAMpAwAQKSIEEAsNACACQQEgAkEBShshBUEBIQIDQCACIAVGDQICQCADIAJBA3RqKQMAIgEQJg0AIAEQEA0AIAAgARApIgEQCw0CIAAgBCABQoCAgIAwQQEQxgUNAiAAIAEQCgsgAkEBaiECDAALAAsgACAEEAogACABEApCgICAgOAAIQQLIAQLGAAgACADKQMAIAMpAwgQWK1CgICAgBCEC5sCAgN+A38jAEEgayICJABCgICAgOAAIQQgACADKQMAECkiBRALRQRAQoCAgIAwIQECfgJAIAAgAkEcaiACQRhqIAWnQQMQkAENACAAEDsiARALDQAgAigCHCEHIAIoAhghCEEAIQMDQCADIAhHBEAgACAHIANBA3RqIgkoAgQQXiIGEAsNAiACIAY3AwggAiAFNwMAIABCgICAgDBBAiACQQAQ1wQhBCAAIAYQCiAEEAsNAiAEEBBFBEAgACABIAkoAgQgBEGHgAEQGUEASA0DCyADQQFqIQMMAQsLIAAgByAIEGQgAQwBCyAAIAIoAhwgAigCGBBkIAAgBRAKIAEhBUKAgICA4AALIQQgACAFEAoLIAJBIGokACAEC20AAn4CQCADKQMAIgFC///
 
//29YBEAgBEUNASAAEChCgICAgOAADwtCgICAgOAAIAAgARCYBCICQQBIDQEaIAQEQCACQQBHrUKAgICAEIQPCyACDQAgAEHWygBBABAUQoCAgIDgAA8LIAEQDQsLTwACQAJAIAMpAwAiAUL/////b1gEQCAERQRAQoCAgIAQDwsgABAoDAELIAAgARCgASIAQQBODQELQoCAgIDgAA8LIABBAEetQoCAgIAQhAsQACAAIAMpAwBBAkEAEIEDCxAAIAAgAykDAEEBQQAQgQMLLQEBfkKAgICA4AAhASAAIAMpAwAiBCADKQMIENkEBH5CgICAgOAABSAEEA0LC30BAn4gAykDACIBQv////9vWARAIAAQKEKAgICA4AAPCyADKQMQIQZCgICAgOAAIQUCQCAAIAMpAwgQOSICRQ0AIAAgASACIAYgBEVBDnQQ2AQhAyAAIAIQESADQQBIDQAgBARAIANBAEetQoCAgIAQhA8LIAEQDSEFCyAFCycAIAAgAykDACIBIAMpAwhBARCaAkEASARAQoCAgIDgAA8LIAEQDQs2ACADKQMAIgFCIIinIgJBf0YgBEUgAkF+cUECR3FyRQRAIAAQKEKAgICA4AAPCyAAIAEQ+wELYgEBfgJAIAMpAwAiARAgDQAgARAmDQAgAEGVzABBABAUQoCAgIDgAA8LAkAgACABEFIiARALRQRAIAMpAwgiBBAQDQEgACABIAQQ2QRFDQEgACABEAoLQoCAgIDgAA8LIAELuQEBAn4gARAgRQRAIAAQKEKAgICA4AAPC0KAgICA4AAhBQJ+IAAgAUE2IAFBABASIgQQEARAIABBjgEQMQwBCyAAIAQQPAsiBBALBH5CgICAgOAABQJ+IAAgAUEzIAFBABASIgEQEARAIABBLxAxDAELIAAgARA8CyIBEAsEQCAAIAQQCkKAgICA4AAPCwJAIAQQ9gENACABEPYBDQAgAEHVgwEgBEGN/wAQvQEh
 
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
 
GBAQRQRAIAAgGBA8IhgQCw0GCyAAIBIgASAYEG4hByABQgF8IQEgB0EATg0BDAULCyAAIBQQCiAAIBZBhwEgFkEAEBIiFBALDQMCQCAKBEAgACASIBogEEL/////D4MQbkEASA0FIAAgEiADQQFqrSAVEA0QbkEASA0FAkAgFBAQDQAgACASIANBAmqtIBQQDSIBEG5BAE4NACABIRQMBgsgAiASNwNoIAJCgICAgDA3A2AgACAPEAogACAAIBlBAiACQeAAakEAEJsDEDwhDwwBC0KAgICAMCEBIBQQEEUEQCAAIBQQKSIBEAsNBQsgAiAXNwOIASACIAE3A4ABIAIgEjcDeCACIBU3A2ggAiARNwNgIAIgEEL/////D4M3A3AgACAPEAogACACQeAAahCPBSEPIAAgARAKCyAPEAsNAyAFrCAQVwRAIAJByABqIgMgBiAFIBCnEFcaIAMgDxCaARogEacpAgRC/////weDIBB8pyEFCyAEQQFqIQQMAQsLIAJByABqIgMgBiAFIAYoAgRB/////wdxEFcaIAMQNyETDAILQoCAgIAwIQ9CgICAgDAhEkKAgICAMCERCyACQcgAahBDCyACQRBqEI4FIAAgFxAKIAAgERAKIAAgEhAKIAAgDxAKIAAgFBAKIAAgFRAKCyACQZABaiQAIBMLjQEAIwBBIGsiAiQAAn4CQCABECBFBEAgABAoDAELIAAgAkEIaiIDQQAQQRogA0EvED0aAkAgAyAAIAFB7AAgAUEAEBIQjQENACACQQhqIgNBLxA9GiADIAAgAUHtACABQQAQEhCNAQ0AIAJBCGoQNwwCCyACQQhqEEMLQoCAgIDgAAshASACQSBqJAAgAQs/AQF+QoCAgIDgACEEIAAgASADKQMAENgBIgEQCwR+QoCAgIDgAAUgARAmIQIgACABEAogAkWtQoCAgIAQhAsLgAIBA34CQCAAIAFBARDbASICRQ0AIAMpAwghB
 
gJAAkAgACADKQMAIgRBABDbASIDBEAgBhAQRQRAIABB4OAAQQAQFEKAgICA4AAPCyADNQIAQoCAgICQf4QQDSEEIAM1AgRCgICAgJB/hBANIQUMAQtCgICAgDAhBQJ+IAQQEARAIABBLxAxDAELIAAgBBArCyIEEAsNASAAIAQgBhCDBCIFEAsNAQsgACACNQIAQoCAgICQf4QQCiAAIAI1AgRCgICAgJB/hBAKIAIgBT4CBCACIAQ+AgAgACABQdUAQgAQSEEASA0BIAEQDQ8LIAAgBBAKIAAgBRAKC0KAgICA4AALawEBfyABQv////9vWARAIAAQKEKAgICA4AAPCwJ+IAAgAUEAENsBIgNFBEBCgICAgDAgACABIAAoAigpA5ABEFgNARogAEESEJ0DQoCAgIDgAA8LIAIgAygCBC0AEHFBAEetQoCAgIAQhAsLxgMBB38jAEEgayIFJAACQAJAAkACQAJAIAFC/////29YBEAgABAoDAELIAAgASAAKAIoKQOQARBYDQIgACABQQEQ2wEiAg0BC0KAgICA4AAhAQwDCyACKAIAIgcoAgQiAkH/////B3EiAw0BCyAAQZP5ABB0IQEMAQsgACAFQQhqIAMgAkEfdhCrAxogBygCBEH/////B3EhCEEAIQADQAJAAkAgACAISARAIABBAWohAkF/IQYCQAJ/AkACQAJAAkACQAJAAkAgByAAEC8iA0HbAGsOAwMBAgALIAIhAAJAIANBCmsOBAQLCwUACyADQS9HDQcgBEUNBUEBIQRBLyEDDAcLQdwAIQMgAiAITg0GIABBAmohACAHIAIQLyEGDAkLQQAhBEHdACEDDAULQdsAIQMgBCACIAhOcg0GIABBAmogAiAHIAIQL0HdAEYiAhshAEHdAEF/IAIbIQZBASEEDAcLQe4ADAILQfIADAELQQAhBEEvCyEGQdwAIQMLIAIhAAwCCyAFQQhqEDchAQwDCyACIQBBAS
 
EECyAFQQhqIAMQlAEaIAZBAEgNACAFQQhqIAYQlAEaDAALAAsgBUEgaiQAIAEL1QICA38BfiMAQRBrIgQkAAJAIAFC/////29YBEAgABAoQoCAgIDgACEFDAELQoCAgIDgACEFIAAgACABQe4AIAFBABASECwiAkEASA0AIAIEfyAEQecAOgAIIARBCWoFIARBCGoLIQIgACAAIAFBycsAEM4CECwiA0EASA0AIAMEQCACQekAOgAAIAJBAWohAgsgACAAIAFB6cwAEM4CECwiA0EASA0AIAMEQCACQe0AOgAAIAJBAWohAgsgACAAIAFBrT4QzgIQLCIDQQBIDQAgAwRAIAJB8wA6AAAgAkEBaiECCyAAIAAgAUHvACABQQAQEhAsIgNBAEgNACADBEAgAkH1ADoAACACQQFqIQILIAAgACABQdcMEM4CECwiA0EASA0AIAAgBEEIaiIAIAMEfyACQfkAOgAAIAJBAWoFIAILIABrEP4BIQULIARBEGokACAFC+0KAhF/AX4jAEEQayIHJAACQCAAIAEQYSIBEAsNACMAQRBrIgkkAEF/IQQCQCAAIgYgARArIhUQCw0AIAYgFaciCygCBEH/////B3EiCEEBEEpBAnQQLSIARQRAIAYgFRAKIAdBADYCCAwBCyAJQQA2AgxBACEEA0AgCCAKSgRAIAAgBEECdGogCyAJQQxqENkBNgIAIARBAWohBCAJKAIMIQoMAQsLIAYgFRAKIAcgADYCCAsgCUEQaiQAIAYgARAKQoCAgIDgACEBIAQiAEEASA0AAkAgAkUNACADKQMAIhUQEA0AAkAgBiAHQQxqIBUQjwIiAgRAAkAgAi0AAEHOAEcNACACLQABQcYARw0AIAJBA0ECIAItAAJBywBGIgMbai0AACIEQcMAa0H/AXFBAUsNACAHKAIMIAJBA2ogAkECaiADGyACa0EBakYNAgsgBiACEDYgBkHtOxBpCyAGIAcoAgg
 
QGAwCCyAGIAIQNiAEIANBAXRqQcMAayEFCyAHKAIIIQsgBigCECECIwBBIGsiCSQAIAlBCGoiAyACQSsQ5gICQAJAAkACQCADIABBAnQiAxDMAUUEQCAFRQRAQQAhAiAAQQAgAEEAShshBANAIAIgBEYNBCACQQJ0IQggAkEBaiECIAggC2ooAgBB/wFNDQALCyAJQQhqIgIgCyAAIAVBAXYQtgQgAigCDEUNAQsgB0EANgIEQX8hAAwDCyAJKAIIIQhBACECIAkoAgwiDkECdiIAQQFrIQ8DQAJAAkAgACACSgRAIAggAiIDQQJ0aigCABCmAkUNAQNAIAMgD0YEQCAAIQIMAwsgCCADQQFqIgRBAnRqKAIAIhAQpgIiDARAA0ACQCACIANKDQAgCCADQQJ0aiIKKAIAEKYCIAxMDQAgCiAKKAIANgIEIANBAWshAwwBCwsgA0ECdCAIaiAQNgIEIAQhAwwBBSAEIQIMAwsACwALDAELIAJBAWohAgwBCwsgBUEBcSAOQQhJcg0BIABBASAAQQFLGyESQQEhBEEBIQADQCAEIBJGDQIgCCAEQQJ0aiIPKAIAEKYCIQMgACECAkACQANAIAJBAEwNASAIIAJBAWsiAkECdGoiECgCABCmAiIFBEAgAyAFSiEFQYACIQMgBQ0BDAILCwJ/QQAhBSAQKAIAIgJBzARsIA8oAgAiCkEcbGpBnI2hAWsgAkGAImtBEksgCkHhImtBFEtyRQ0AGgJAIAJBgNgCayIDQaPXAEsNACADQf//A3FBHHAgCkGnI2siA0EbS3INACACIANqDAELIwBBEGsiAyQAQbAHIQ4DQAJAIAUgDkoEQEEAIQwMAQsgA0EIaiAFIA5qQQJtIhFBAXRBsLEDai8BACIMQQZ2IhNBAnRB0MECaigCACINQQ52IhQgDEE/cWoiDCATIBQgDUEHdkH/AHEgDUEBdkE/cRCLBhogAiADKAIIayINIAogAygC
 
DGsgDRsiDUEASARAIBFBAWshDgwCCyANRQ0AIBFBAWohBQwBCwsgA0EQaiQAIAwLIgJFDQAgECACNgIADAELIAggAEECdGogDygCADYCACAAQQFqIQALIARBAWohBAwACwALIAcgCSgCCCALIAMQIzYCBAwBCyAHIAg2AgQLIAlBIGokACAGIAsQGCAAQQBIDQAgBygCBCEDIwBBIGsiAiQAAkAgBiACQQhqIAAQQQ0AQQAhBSAAQQAgAEEAShshAAJAA0AgACAFRg0BIAVBAnQhBCAFQQFqIQUgAkEIaiADIARqKAIAEL4BRQ0ACyACQQhqEEMMAQsgAkEIahA3IQELIAJBIGokACAGIAcoAgQQGAsgB0EQaiQAIAELuwECA38BfgJAAkAgAhBcRQ0AIAIQeiEHIAGnKQMgIgpCgICAgHCDQoCAgICQf1INACAHIAqnIggoAgRB/////wdxTw0AAkBBBCAGEKIDRQ0AQQEhAiAGQYDAAHFFDQIgA0KAgICAcINCgICAgJB/Ug0AIAOnIgkpAgRC/////weDQgFSDQAgCCAHEC8gCUEAEC9GDQILIAAgBkG/0QAQdw8LIAAgASACIAMgBCAFIAZBgIAIchB2IQILIAILHQACfyACEFwEQEEAIAIQeiABEJkESQ0BGgtBAQsLpwEBAn8CQCADEFxFDQAgAqcpAyAiAkKAgICAcINCgICAgJB/Ug0AIAMQeiIDIAKnIgUpAgQiAqdB/////wdxTw0AQQEhBCABRQ0AAn8gAkKAgICACINQRQRAIAUgA0EBdGovARAMAQsgAyAFai0AEAshAyABQQQ2AgAgACADQf//A3EQpwMhAiABQoCAgIAwNwMYIAFCgICAgDA3AxAgASACNwMICyAEC2gBAn8gAacoAhAiAyADKAIYIAJxQX9zQQJ0aigCACEAIAMQJyEDA0ACQCAARQRAQQAhAAwBCyAAQQN0IANqIgRBCGshACAEQQRrK
 
AIAIAJGDQAgACgCAEH///8fcSEADAELCyAAQQBHC94CAQJ+IwBBIGsiBSQAAkACQCAAIAFBJRBoIgJFDQACQCACKQMAIgEQEEUEQAJAAkAgAaciAy8BBkEVa0H//wNxQQhNBEAgAxCYAUUNASAAEHMMBQsgACAFQRxqIAEQ2gENBCAFKAIcIQMMAQsgBSADKAIoIgM2AhwLIAMgAigCDCIDSw0BIAAgAikDABAKIAJCgICAgDA3AwALIARBATYCAEKAgICAMCEBDAILIAIgA0EBajYCDCAEQQA2AgAgAigCCEUEQCADQQBOBEAgA60hAQwDCyADuBAVIQEMAgtCgICAgOAAIQEgACACKQMAIAMQeSIGEAsNASACKAIIQQFGBEAgBiEBDAILIANBAE4EfiADrQUgA7gQFQshByAFIAY3AwggBSAHNwMAIABBAiAFEJIDIQEgACAGEAogACAHEAoMAQsgBEEANgIAQoCAgIDgACEBCyAFQSBqJAAgAQuxAgIEfwJ+IwBBEGsiASQAIAIpAxghBwJAAkAgAikDECIIEJwBRQRAIABBmPkAQQAQFAwBCyAAIAgQtwEiBEUEQEEAIQQMAQsgACAHELcBIgVFDQACfwJAIAAgBCAFEL0FIgNFDQAgACADEIUEQQBIBEAgAEEBEKUEQQAMAgsgACADrUKAgICAUIQQDSAAKQPAAUEAQQAQuwUiBxALDQAgACAHEAogAyEGCyAGCyEDIAAgBRA2IANFDQAgASAAIAMQiQMiBzcDACAHEAsNACAAIAAgAikDAEKAgICAMEEBIAEQIhAKIAAgASkDABAKDAELIAEgABCRATcDCCAAIAAgAikDCEKAgICAMEEBIAFBCGoQIhAKIAAgASkDCBAKCyAAIAQQNiABQRBqJABCgICAgDALaQECfyMAQRBrIgckAAJ/AkAgAaciCC0ABUEIcUUNACAAIAdBDGogAhCzAUUNACAHKAIMIAgoAihPDQ
 
BBfyAAIAgQoQMNARoLIAAgASACIAMgBCAFIAZBgIAIchB2CyEAIAdBEGokACAAC0YBAn4gAiAAKAIAEDEhA0EAIQAgAiABKAIAEDEhBAJAIAMQCw0AIAQQCw0AIAOnIASnEJQCIQALIAIgAxAKIAIgBBAKIAALawEBfgJAAkACQAJAAkAgAy0ABSIBDgQDAgIAAQsgACADKAIIEPQEDwsgAUEIRg0CCxABAAsgACADKAIMIAMoAgAgAy0ACCADLQAJIAMuAQYQyQEPCyAAIAAQOyIEIAMoAgggAygCDBAkIAQLCQAgACADEIkDCzwBAX4gABA7IgQQC0UEQCAAIARBPCABrUKAgICAcIQQDUEDEBlBAE4EQCAEDwsgACAEEAoLQoCAgIDgAAtfAQF/AkAgAUUEQCACRQ0BIAAgAhClBQ8LIAJFBEAgACAAKAIAQQFrNgIAIAAgACgCBEEIazYCBCABEOcBDAELIAAoAgggACgCBCACak8EfyABIAIQ8QUFQQALDwtBAAsmACABBEAgACAAKAIAQQFrNgIAIAAgACgCBEEIazYCBCABEOcBCwsoAQF/AkAgAacoAiAiA0UNACADKAIAQQRGDQAgACADQQhqIAIQ7wMLCxwBAX8gAUEoED8iAgRAIAAgAhDtAyAAIAIQHwsLJQEBfyABpygCICIDBEAgACADKQMAIAIQISAAIAMpAwggAhAhCwsnAQF/IAGnKAIgIgIEQCAAIAIpAwAQJSAAIAIpAwgQJSAAIAIQHwsLHgEBfyABpygCICICBEAgACACKQMAECUgACACEB8LC0MBAn8gAacoAiAiAgRAAkAgAikDACIBEN4FRQ0AIAIoAgwiA0UNACAAIAMQ8QMgAikDACEBCyAAIAEQJSAAIAIQHwsLWAEDfwJAIAGnKAIgIgRFDQAgBEEIaiEDIARBBGohBQNAIAMoAgAiAyAFRg0BIAQoAgBFBEAgACADKQMQIAIQIQsgACA
 
DKQMYIAIQISADQQRqIQMMAAsACwuBAQEFfyABpygCICIDBEAgA0EEaiEFIAMoAgghAgNAIAIgBUcEQCACKAIEIQYgAkEQayEEIAJBDGsoAgBFBEACQCADKAIABEAgBBCmBQwBCyAAIAIpAxAQJQsgACACKQMYECULIAAgBBAfIAYhAgwBCwsgACADKAIQEB8gACADEB8LCyEBAX8gAacoAiAiAwRAIAAgAzUCDEKAgICAcIQgAhAhCwtAAQF/IAGnKAIgIgIEQCAAIAI1AgxCgICAgHCEIgEQ3gUEfiACEEYgAjUCDEKAgICAcIQFIAELECUgACACEB8LC1sBAn8gAacoAiAiAgRAAkACQCACLQAFRQ0AIAAoArwBIgNFDQAgACgCxAEgAigCCCADEQMADAELIAIoAhgiA0UNACAAIAIoAhQgAigCCCADEQYACyAAIAIQHwsLKQEBfyAAIAGnIgI1AiRCgICAgJB/hBAlIAAgAjUCIEKAgICAkH+EECULEQAgACABpygCICkDACACECELGQEBfyAAIAGnKAIgIgIpAwAQJSAAIAIQHwtBAQN/AkAgAUEPED8iBEUNACAEQQhqIQUDQCADIAQtAAVPDQEgACAFIANBA3RqKQMAIAIQISADQQFqIQMMAAsACwtDAQN/IAFBDxA/IgMEQCADQQhqIQQDQCACIAMtAAVPRQRAIAAgBCACQQN0aikDABAlIAJBAWohAgwBCwsgACADEB8LC0kBAn8gACABpygCICIEKQMAIAIQISAAIAQpAwggAhAhA0AgAyAEKAIQTkUEQCAAIAQgA0EDdGopAxggAhAhIANBAWohAwwBCwsLSQECfyAAIAGnKAIgIgIpAwAQJSAAIAIpAwgQJQNAIAMgAigCEE5FBEAgACACIANBA3RqKQMYECUgA0EBaiEDDAELCyAAIAIQHwuOAQEEfyABpyIDKAIkIQUgAygCICEEIAMoAigiAwRAIAAgA61C
 
gICAgHCEIAIQIQsgBARAAkAgBUUNAEEAIQMDQCADIAQoAjxODQECQCAFIANBAnRqKAIAIgZFDQAgBi0ABUEBcUUNACAAIAYgAhEDAAsgA0EBaiEDDAALAAsgACAErUKAgICAYIQgAhAhCwtzAQN/IAGnIgIoAigiAwRAIAAgA61CgICAgHCEECULIAIoAiAiAwRAIAIoAiQiBARAQQAhAgNAIAIgAygCPE5FBEAgACAEIAJBAnRqKAIAEPkBIAJBAWohAgwBCwsgACAEEB8LIAAgA61CgICAgGCEECULCxIAIAGnKAIgIgAEQCAAEK4DCwsOACAAIAGnKQMgIAIQIQsZACAAIAGnIgApAyAQJSAAQoCAgIAwNwMgCzUBAn8gAachBANAIAMgBCgCKE9FBEAgACAEKAIkIANBA3RqKQMAIAIQISADQQFqIQMMAQsLCzwBAn8gAachAwNAIAIgAygCKE9FBEAgACADKAIkIAJBA3RqKQMAECUgAkEBaiECDAELCyAAIAMoAiQQHwsIACAAIAIQHwu4AQIBfwJ+IwBBIGsiAyQAIAFBA0YEQCACKQMQIQQgAikDCCEFAkAgACADQRBqIAIpAwAQrAVBAEgEQEKAgICA4AAhBAwBCyAAIAQgBUECIANBEGoQIiIEEAsEQCADIAAQkQE3AwggACADKQMYQoCAgIAwQQEgA0EIahAiIQQgACADKQMIEAoLIAAgAykDEBAKIAAgAykDGBAKCyADQSBqJAAgBA8LQYvxAEG34wBBu+oCQZrkABAAAAvoAQEIfyMAIgchCyABpygCICIIKAIQIglBACAJQQBKGyEMIAcgAyAJaiIKQQN0QQ9qQXBxayIHJAADfiAGIAxGBH5BACEGIANBACADQQBKGyEDA0AgAyAGRkUEQCAHIAYgCWpBA3RqIAQgBkEDdGopAwA3AwAgBkEBaiEGDAELCwJ+IAVBAXEEQCAAIAEgAhBYIQMgACAIKQMAI
 
gEgASACIAMbIAogBxCQAwwBCyAAIAgpAwAgCCkDCCAKIAcQIgshASALJAAgAQUgByAGQQN0Ig1qIAggDWopAxg3AwAgBkEBaiEGDAELCwuHAQIBfgF/QoCAgIDgACEGAkAgAEHIABBqIgUEQCAFQQA2AgAgACAFQQhqIgcgASACIAMgBBDyAwRAIAVBBDYCAAwCCyAAIAcQwQIiAhALDQEgACACEAogACABQSgQbSIGEAsNASAGIAUQiwELIAYPCyAAKAIQIAUQ7QMgACAFEBhCgICAgOAAC+oFAgl/AXwjAEFAaiIGJAAgAaciCC0AKSELIAgtACghCSAGIAAoAhAiDCgCjAE2AhAgDCAGQRBqNgKMASAIKAIgIQcgBiADNgI0IAYgATcDGCAGQQA2AjgCQCADIAlOBEAgBCEADAELIANBACADQQBKGyENIAYgCUEDdEEPakHwH3FrIgAkAANAIAogDUYEQCADIQQDQCAEIAlGRQRAIAAgBEEDdGpCgICAgDA3AwAgBEEBaiEEDAELCyAGIAk2AjQFIAAgCkEDdCIOaiAEIA5qKQMANwMAIApBAWohCgwBCwsLIAYgADYCICAIKAIkIQQCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgCw4NCwIAAQABBwgDBAUGCQoLIAVBAXENCkKAgICAMCECIAtBAkcNCgwLCyAFQQFxDQBCgICAgDAhAiALQQNGDQoLIAcgAiADIAAgCC4BKiAEEQUAIQEMCwsgByACIAQRCQAhAQwKCyAHIAIgACkDACAEERYAIQEMCQsgByACIAguASogBBEPACEBDAgLIAcgAiAAKQMAIAguASogBBEwACEBDAcLIAcgBkEIaiAAKQMAEEcNBSAGKwMIIAQRBwAiD70CfyAPmUQAAAAAAADgQWMEQCAPqgwBC0GAgICAeAsiALe9UQRAIACtIQEMBwsgDxAVIQEMBgtCgICAgOAAIQEgBy
 
AGQQhqIAApAwAQRw0FIAcgBiAAKQMIEEcNBSAGKwMIIAYrAwAgBBEfACIPvQJ/IA+ZRAAAAAAAAOBBYwRAIA+qDAELQYCAgIB4CyIAt71RBEAgAK0hAQwGCyAPEBUhAQwFCyAHIAIgAyAAIAZBCGogCC4BKiAEERIAIgEQCw0EIAYoAggiAEECRg0EIAcgASAAEJQDIQEMBAsQAQALIAcgAiADIAAgBBEAACEBDAILIAdBxxBBABAUC0KAgICA4AAhAQsgDCAGKAIQNgKMASAGQUBrJAAgAQu5AQEFfyMAIgUhCCAAIAIgAyADIAFBDxA/IgYtAAQiB0gEf0EAIQAgA0EAIANBAEobIQkgBSAHQQN0QQ9qQfAfcWsiBSQAA38gACAJRgR/IAMhBAN/IAQgB0YEfyAFBSAFIARBA3RqQoCAgIAwNwMAIARBAWohBAwBCwsFIAUgAEEDdCIKaiAEIApqKQMANwMAIABBAWohAAwBCwsFIAQLIAYvAQYgBkEIaiAGKAIAERIAIQEgCCQAIAELaAEBfyMAQRBrIgMkACABKAIEIQEgAiADQQxqIAAoAgQQswFBACACIANBCGogARCzARtFBEBBjTFBt+MAQYM6QZw0EAAACyADKAIIIQAgAygCDCEBIANBEGokAEF/IAAgAUcgACABSxsLDwAgASABKAIAQQFqNgIACzkBAX8gASABKAIAIgJBAWo2AgAgAkUEQCABQQhqIgIQRiACIABB0ABqEEsgASABLQAEQQ9xOgAECwtYAQF/IAEoAgAiAkEASgRAIAEgAkEBayICNgIAAkAgAg0AIAEtAARB8AFxQRBHDQAgAUEIaiIBEEYgASAAQeAAahBLCw8LQZDzAEG34wBBsCxBkdwAEAAAC4sCAgN/AX4jAEEgayIFJAACQCABpyIHKAIgIgZFDQAgBigCCCIIKAIEDQAgCEEBNgIEIAcvAQZBK2shByADQQBMBH5CgICAgDAFIAQ
 
pAwALIQECQAJAIAcNACABECBFDQACQAJAIAAgASAGKQMAEFgEQCAAQfo0QQAQFAwBCyAAIAFB/wAgAUEAEBIiAhALRQ0BCyAAEJEBIQEgACAGKQMAIAFBARCwBSAAIAEQCgwDCyAAIAIQOg0BIAAgAhAKCyAAIAYpAwAgASAHELAFDAELIAYpAwAhCSAFIAI3AxAgBSABNwMIIAUgCTcDACAAQSZBAyAFEIQDIAAgAhAKCyAFQSBqJABCgICAgDALoQEBAX4gAEHoABBqIgVFBEBCgICAgOAADwsgBUEBNgIAIAAoAhAgBUEEELwBIAVCgICAgDA3AxggBUKAgICAMDcDECAFQQA2AiACQAJAIAAgBUEQahCRAyIGEAtFBEAgACAFQShqIAEgAiADIAQQ8gNFDQELIAAgBhAKQoCAgIDgACEGDAELIAVBATYCICAAIAUQrwULIAAoAhAgBRCuBSAGC2YBAX8gAaciBS8BBkEuayEGIAUoAiAhBSADQQBMBH5CgICAgDAFIAQpAwALIQEgBSAGNgI0IAEQDSEBAkAgBgRAIAAgARCSAQwBCyAFKAJkQQhrIAE3AwALIAAgBRCvBUKAgICAMAuQAQIBfwF+QoCAgIDgACEHAkAgAEHQABBqIgYEQCAGQQA2AgQgBkHIAGoQbyAAIAZBCGoiBSABIAIgAyAEEPIDBEAgBkEFNgIEDAILIAAgBRDBAiICEAsNASAAIAIQCiAAIAFBMhBtIgcQCw0BIAYgBz4CACAHIAYQiwELIAcPCyAAKAIQIAYQrQVCgICAgOAAC+MCAgR/A34jAEEQayIEJABCgICAgOAAIQkCQAJ/AkAgAykDACIKQoCAgIBwWgRAIAqnIgUvAQZBE2tB//8DcUECSQ0BCyAAQRMQnQNBAAwBCyAFKAIgCyIFRQ0AIARCADcDCCACQQJOBEAgACAEQQhqIAMpAwgQwgENAQsgBS0ABARAIAAQcwwBCyAEKQMI
 
IgggBSgCACIGrFYEQCAAQfsZEGkMAQsgBiAIpyIHayEGAkAgAkEDSA0AIAMpAxAiCBAQDQAgACAEIAgQwgENASAEKQMAIgggBq1WBEAgAEGAwgAQaQwCCyAIpyEGCyAAIAFBHhBtIgEQCw0AAkACQCAFLQAEBEAgABBzDAELIABBGBAtIgINAQsgACABEAoMAQsgAiABpyIANgIIIAoQDSEJIAIgBjYCFCACIAc2AhAgAiAJPgIMIAIgBUEMahBLIAAgAjYCICABIQkLIARBEGokACAJCxAAIwAgAGtBcHEiACQAIAALBgAgACQACwQAIwALEwAgAEHp4QBBABAUQoCAgIDgAAupAQEEfyAAKAJUIgMoAgQiBSAAKAIUIAAoAhwiBmsiBCAEIAVLGyIEBEAgAygCACAGIAQQIxogAyADKAIAIARqNgIAIAMgAygCBCAEayIFNgIECyADKAIAIQQgBSACIAIgBUsbIgUEQCAEIAEgBRAjGiADIAMoAgAgBWoiBDYCACADIAMoAgQgBWs2AgQLIARBADoAACAAIAAoAiwiATYCHCAAIAE2AhQgAgspACABIAEoAgBBB2pBeHEiAUEQajYCACAAIAEpAwAgASkDCBDtBTkDAAuuGAMSfwF8An4jAEGwBGsiCyQAIAtBADYCLAJAIAG9IhlCAFMEQEEBIRBB9Q8hEyABmiIBvSEZDAELIARBgBBxBEBBASEQQfgPIRMMAQtB+w9B9g8gBEEBcSIQGyETIBBFIRULAkAgGUKAgICAgICA+P8Ag0KAgICAgICA+P8AUQRAIABBICACIBBBA2oiAyAEQf//e3EQayAAIBMgEBBlIABByztB5OkAIAVBIHEiBRtB/8UAQcDsACAFGyABIAFiG0EDEGUgAEEgIAIgAyAEQYDAAHMQayACIAMgAiADShshCQwBCyALQRBqIRECQAJ/AkAgASALQSxqEPcFIgEgAaAiAUQAAAAAAAAAAGIEQ
 
CALIAsoAiwiBkEBazYCLCAFQSByIg5B4QBHDQEMAwsgBUEgciIOQeEARg0CIAsoAiwhCkEGIAMgA0EASBsMAQsgCyAGQR1rIgo2AiwgAUQAAAAAAACwQaIhAUEGIAMgA0EASBsLIQwgC0EwaiALQdACaiAKQQBIGyINIQcDQCAHAn8gAUQAAAAAAADwQWMgAUQAAAAAAAAAAGZxBEAgAasMAQtBAAsiAzYCACAHQQRqIQcgASADuKFEAAAAAGXNzUGiIgFEAAAAAAAAAABiDQALAkAgCkEATARAIAohAyAHIQYgDSEIDAELIA0hCCAKIQMDQCADQR0gA0EdSRshAwJAIAdBBGsiBiAISQ0AIAOtIRpCACEZA0AgBiAZQv////8PgyAGNQIAIBqGfCIZIBlCgJTr3AOAIhlCgJTr3AN+fT4CACAGQQRrIgYgCE8NAAsgGaciBkUNACAIQQRrIgggBjYCAAsDQCAIIAciBkkEQCAGQQRrIgcoAgBFDQELCyALIAsoAiwgA2siAzYCLCAGIQcgA0EASg0ACwsgDEEZakEJbiEHIANBAEgEQCAHQQFqIQ8gDkHmAEYhEgNAQQAgA2siA0EJIANBCUkbIQkCQCAGIAhLBEBBgJTr3AMgCXYhFEF/IAl0QX9zIRZBACEDIAghBwNAIAcgAyAHKAIAIhcgCXZqNgIAIBYgF3EgFGwhAyAHQQRqIgcgBkkNAAsgCCgCACEHIANFDQEgBiADNgIAIAZBBGohBgwBCyAIKAIAIQcLIAsgCygCLCAJaiIDNgIsIA0gCCAHRUECdGoiCCASGyIHIA9BAnRqIAYgBiAHa0ECdSAPShshBiADQQBIDQALC0EAIQMCQCAGIAhNDQAgDSAIa0ECdUEJbCEDQQohByAIKAIAIglBCkkNAANAIANBAWohAyAJIAdBCmwiB08NAAsLIAxBACADIA5B5gBGG2sgDkHnAEYgDEEAR3FrIgcgBiANa0ECdU
 
EJbEEJa0gEQEEEQaQCIApBAEgbIAtqIAdBgMgAaiIJQQltIg9BAnRqQdAfayEKQQohByAJIA9BCWxrIglBB0wEQANAIAdBCmwhByAJQQFqIglBCEcNAAsLAkAgCigCACISIBIgB24iDyAHbGsiCUUgCkEEaiIUIAZGcQ0AAkAgD0EBcUUEQEQAAAAAAABAQyEBIAdBgJTr3ANHIAggCk9yDQEgCkEEay0AAEEBcUUNAQtEAQAAAAAAQEMhAQtEAAAAAAAA4D9EAAAAAAAA8D9EAAAAAAAA+D8gBiAURhtEAAAAAAAA+D8gCSAHQQF2IhRGGyAJIBRJGyEYAkAgFQ0AIBMtAABBLUcNACAYmiEYIAGaIQELIAogEiAJayIJNgIAIAEgGKAgAWENACAKIAcgCWoiAzYCACADQYCU69wDTwRAA0AgCkEANgIAIAggCkEEayIKSwRAIAhBBGsiCEEANgIACyAKIAooAgBBAWoiAzYCACADQf+T69wDSw0ACwsgDSAIa0ECdUEJbCEDQQohByAIKAIAIglBCkkNAANAIANBAWohAyAJIAdBCmwiB08NAAsLIApBBGoiByAGIAYgB0sbIQYLA0AgBiIHIAhNIglFBEAgB0EEayIGKAIARQ0BCwsCQCAOQecARwRAIARBCHEhCgwBCyADQX9zQX8gDEEBIAwbIgYgA0ogA0F7SnEiChsgBmohDEF/QX4gChsgBWohBSAEQQhxIgoNAEF3IQYCQCAJDQAgB0EEaygCACIORQ0AQQohCUEAIQYgDkEKcA0AA0AgBiIKQQFqIQYgDiAJQQpsIglwRQ0ACyAKQX9zIQYLIAcgDWtBAnVBCWwhCSAFQV9xQcYARgRAQQAhCiAMIAYgCWpBCWsiBkEAIAZBAEobIgYgBiAMShshDAwBC0EAIQogDCADIAlqIAZqQQlrIgZBACAGQQBKGyIGIAYgDEobIQwLQX8hCSAMQf3///8HQf7///8HIAo
 
gDHIiEhtKDQEgDCASQQBHakEBaiEOAkAgBUFfcSIVQcYARgRAIANB/////wcgDmtKDQMgA0EAIANBAEobIQYMAQsgESADIANBH3UiBmogBnOtIBEQowIiBmtBAUwEQANAIAZBAWsiBkEwOgAAIBEgBmtBAkgNAAsLIAZBAmsiDyAFOgAAIAZBAWtBLUErIANBAEgbOgAAIBEgD2siBkH/////ByAOa0oNAgsgBiAOaiIDIBBB/////wdzSg0BIABBICACIAMgEGoiBSAEEGsgACATIBAQZSAAQTAgAiAFIARBgIAEcxBrAkACQAJAIBVBxgBGBEAgC0EQaiIGQQhyIQMgBkEJciEKIA0gCCAIIA1LGyIJIQgDQCAINQIAIAoQowIhBgJAIAggCUcEQCAGIAtBEGpNDQEDQCAGQQFrIgZBMDoAACAGIAtBEGpLDQALDAELIAYgCkcNACALQTA6ABggAyEGCyAAIAYgCiAGaxBlIAhBBGoiCCANTQ0ACyASBEAgAEGL9gBBARBlCyAMQQBMIAcgCE1yDQEDQCAINQIAIAoQowIiBiALQRBqSwRAA0AgBkEBayIGQTA6AAAgBiALQRBqSw0ACwsgACAGIAxBCSAMQQlIGxBlIAxBCWshBiAIQQRqIgggB08NAyAMQQlKIQMgBiEMIAMNAAsMAgsCQCAMQQBIDQAgByAIQQRqIAcgCEsbIQkgC0EQaiIDQQlyIQ0gA0EIciEDIAghBwNAIA0gBzUCACANEKMCIgZGBEAgC0EwOgAYIAMhBgsCQCAHIAhHBEAgBiALQRBqTQ0BA0AgBkEBayIGQTA6AAAgBiALQRBqSw0ACwwBCyAAIAZBARBlIAZBAWohBiAKIAxyRQ0AIABBi/YAQQEQZQsgACAGIA0gBmsiBiAMIAYgDEgbEGUgDCAGayEMIAdBBGoiByAJTw0BIAxBAE4NAAsLIABBMCAMQRJqQRJBABBrIAAgDyARIA9rEGUM
 
AgsgDCEGCyAAQTAgBkEJakEJQQAQawsgAEEgIAIgBSAEQYDAAHMQayACIAUgAiAFShshCQwBCyATIAVBGnRBH3VBCXFqIQwCQCADQQtLDQBBDCADayEGRAAAAAAAADBAIRgDQCAYRAAAAAAAADBAoiEYIAZBAWsiBg0ACyAMLQAAQS1GBEAgGCABmiAYoaCaIQEMAQsgASAYoCAYoSEBCyARIAsoAiwiBiAGQR91IgZqIAZzrSAREKMCIgZGBEAgC0EwOgAPIAtBD2ohBgsgEEECciEKIAVBIHEhCCALKAIsIQcgBkECayINIAVBD2o6AAAgBkEBa0EtQSsgB0EASBs6AAAgBEEIcSEGIAtBEGohBwNAIAciBQJ/IAGZRAAAAAAAAOBBYwRAIAGqDAELQYCAgIB4CyIHQfCrBGotAAAgCHI6AAAgBiADQQBKckUgASAHt6FEAAAAAAAAMECiIgFEAAAAAAAAAABhcSAFQQFqIgcgC0EQamtBAUdyRQRAIAVBLjoAASAFQQJqIQcLIAFEAAAAAAAAAABiDQALQX8hCUH9////ByAKIBEgDWsiBWoiBmsgA0gNACAAQSAgAiAGAn8CQCADRQ0AIAcgC0EQamsiCEECayADTg0AIANBAmoMAQsgByALQRBqayIICyIHaiIDIAQQayAAIAwgChBlIABBMCACIAMgBEGAgARzEGsgACALQRBqIAgQZSAAQTAgByAIa0EAQQAQayAAIA0gBRBlIABBICACIAMgBEGAwABzEGsgAiADIAIgA0obIQkLIAtBsARqJAAgCQtCAQF+IwBBEGsiAiQAQoCAgIDgACEEIAAgAkEIaiADKQMAEMIBRQRAIAAgASACKQMIQRQQ9AMhBAsgAkEQaiQAIAQLBQAgAJ0L3gECAX8CfiAAvSICQv///////////wCDIgO/IQACQCADQiCIpyIBQeunhv8DTwRAIAFBgYDQgQRPBEBEAAAAAAAAAIAgA
 
KNEAAAAAAAA8D+gIQAMAgtEAAAAAAAA8D9EAAAAAAAAAEAgACAAoBClAkQAAAAAAAAAQKCjoSEADAELIAFBr7HB/gNPBEAgACAAoBClAiIAIABEAAAAAAAAAECgoyEADAELIAFBgIDAAEkNACAARAAAAAAAAADAohClAiIAmiAARAAAAAAAAABAoKMhAAsgACAAmiACQgBZGwuEAQECfyMAQRBrIgEkAAJAIAC9QiCIp0H/////B3EiAkH7w6T/A00EQCACQYCAgPIDSQ0BIABEAAAAAAAAAABBABD4BSEADAELIAJBgIDA/wdPBEAgACAAoSEADAELIAAgARCwBCECIAErAwAgASsDCCACQQFxEPgFIQALIAFBEGokACAAC0ABAX4jAEEQayICJABCgICAgOAAIQQgACACQQhqIAMpAwAQwgFFBEAgACABIAIpAwgQjAMhBAsgAkEQaiQAIAQLBABCAAvRAgEHfyMAQSBrIgMkACADIAAoAhwiBDYCECAAKAIUIQUgAyACNgIcIAMgATYCGCADIAUgBGsiATYCFCABIAJqIQRBAiEHIANBEGohAQJ/AkACQCAAKAI8IAFBAiADQQxqEAMQ8wVFBEADQCAEIAMoAgwiBUYNAiAFQQBIDQMgASAFIAEoAgQiCEsiBkEDdGoiCSAFIAhBACAGG2siCCAJKAIAajYCACABQQxBBCAGG2oiCSAJKAIAIAhrNgIAIAQgBWshBCAAKAI8IAFBCGogASAGGyIBIAcgBmsiByADQQxqEAMQ8wVFDQALCyAEQX9HDQELIAAgACgCLCIBNgIcIAAgATYCFCAAIAEgACgCMGo2AhAgAgwBCyAAQQA2AhwgAEIANwMQIAAgACgCAEEgcjYCAEEAIAdBAkYNABogAiABKAIEawshBCADQSBqJAAgBAsFACAAnwudAQMCfAF/AX5EAAAAAAAA4D8gAKYhAiAAvUL///////////8AgyIEvyEBAk
 
AgBEIgiKciA0HB3JiEBE0EQCABEKUCIQEgA0H//7//A00EQCADQYCAwPIDSQ0CIAIgASABoCABIAGiIAFEAAAAAAAA8D+go6GiDwsgAiABIAEgAUQAAAAAAADwP6CjoKIPCyABIAIgAqAQigYhAAsgAAvLAQECfyMAQRBrIgEkAAJAIAC9QiCIp0H/////B3EiAkH7w6T/A00EQCACQYCAwPIDSQ0BIABEAAAAAAAAAABBABDaAiEADAELIAJBgIDA/wdPBEAgACAAoSEADAELAkACQAJAAkAgACABELAEQQNxDgMAAQIDCyABKwMAIAErAwhBARDaAiEADAMLIAErAwAgASsDCBDbAiEADAILIAErAwAgASsDCEEBENoCmiEADAELIAErAwAgASsDCBDbApohAAsgAUEQaiQAIAAL6AQCA38HfiMAQSBrIgUkAEKAgICA4AAhDQJAIAAgASAEQR9qEG0iARALDQBCgICAgDAhCAJAIABBHBBqIgZFBEBCgICAgDAhC0KAgICAMCEKDAELIAZBBGoQbyAGIARBAXZBAXE2AgAgASAGEIsBIAZBATYCFCAGIABBCBAtIgc2AhBCgICAgDAhC0KAgICAMCEKIAdFDQAgBxBvIAZBBDYCGAJAIAJBAEwEfkKAgICAMAUgAykDAAsiCBAQDQAgCBAmDQACQCAAIAFB6ABBwgAgBEEBcSICGyABQQAQEiIKEAsNACAAIAoQOkUEQCAAQZc2QQAQFAwBCyAAIAhBABD1ASIIEAsNAiAAIAhB6gAgCEEAEBIiCxALDQICQANAIAUgACAIIAsgBUEUahCsASIJNwMYIAkQCw0EIAUoAhRFBEACQCACBEAgACAKIAFBASAFQRhqECIiDhALRQ0BIAAgBSkDGBAKDAcLAkACQCAJECBFBEAgABAoQoCAgIAwIQkMAQsgACAJQQAQeSIJEAtFDQELQoCAgIAwIQwMBAsgACAFKQMYQQEQeSI
 
MEAsNAyAFIAw3AwggBSAJNwMAIAAgCiABQQIgBRAiIg4QCw0DIAAgCRAKIAAgDBAKCyAAIA4QCiAAIAUpAxgQCgwBCwsgACAJEAogACALEAogACAIEAogACAKEAoMAgsgACAFKQMYEAogACAJEAogACAMEAoMAgtCgICAgDAhCAwBCyABIQ0MAQsgCBAgBEAgACAIQQEQsAEaCyAAIAsQCiAAIAgQCiAAIAoQCiAAIAEQCgsgBUEgaiQAIA0LBgBBkK8ECwYAQYyvBAsGAEGErwQLzQMDBXwBfgN/AkACQAJAAkAgAL0iBkIAWQRAIAZCIIinIgdB//8/Sw0BCyAGQv///////////wCDUARARAAAAAAAAPC/IAAgAKKjDwsgBkIAWQ0BIAAgAKFEAAAAAAAAAACjDwsgB0H//7//B0sNAkGAgMD/AyEIQYF4IQkgB0GAgMD/A0cEQCAHIQgMAgsgBqcNAUQAAAAAAAAAAA8LIABEAAAAAAAAUEOivSIGQiCIpyEIQct3IQkLIAZC/////w+DIAhB4r4laiIHQf//P3FBnsGa/wNqrUIghoS/RAAAAAAAAPC/oCIAIAAgAEQAAAAAAADgP6KiIgOhvUKAgICAcIO/IgREAAAgZUcV9z+iIgEgCSAHQRR2arciAqAiBSABIAIgBaGgIAAgAEQAAAAAAAAAQKCjIgEgAyABIAGiIgIgAqIiASABIAFEn8Z40Amawz+iRK94jh3Fccw/oKJEBPqXmZmZ2T+goiACIAEgASABRERSPt8S8cI/okTeA8uWZEbHP6CiRFmTIpQkSdI/oKJEk1VVVVVV5T+goqCgoiAAIAShIAOhoCIAIASgRACi7y78Bec9oiAARAAAIGVHFfc/oqCgoCEACyAAC+YDAwZ8AX4DfwJAAkACQAJAIAC9IgdCAFkEQCAHQiCIpyIIQf//P0sNAQsgB0L///////////8Ag1AEQEQAAAAAAADwvyAAIACi
 
ow8LIAdCAFkNASAAIAChRAAAAAAAAAAAow8LIAhB//+//wdLDQJBgIDA/wMhCUGBeCEKIAhBgIDA/wNHBEAgCCEJDAILIAenDQFEAAAAAAAAAAAPCyAARAAAAAAAAFBDor0iB0IgiKchCUHLdyEKCyAKIAlB4r4laiIIQRR2arciBUQAYJ9QE0TTP6IiASAHQv////8PgyAIQf//P3FBnsGa/wNqrUIghoS/RAAAAAAAAPC/oCIAIAAgAEQAAAAAAADgP6KiIgOhvUKAgICAcIO/IgREAAAgFXvL2z+iIgKgIgYgAiABIAahoCAAIABEAAAAAAAAAECgoyIBIAMgASABoiICIAKiIgEgASABRJ/GeNAJmsM/okSveI4dxXHMP6CiRAT6l5mZmdk/oKIgAiABIAEgAUREUj7fEvHCP6JE3gPLlmRGxz+gokRZkyKUJEnSP6CiRJNVVVVVVeU/oKKgoKIgACAEoSADoaAiAEQAACAVe8vbP6IgBUQ2K/ER8/5ZPaIgACAEoETVrZrKOJS7PaKgoKCgIQALIAALoQEBBH8gAkEAIAAoAlQiAygCBCIEIAMoAgAiBWsiBiAEIAZJGyIESwRAIAAgACgCAEEQcjYCACAEIQILIAEgAygCDCAFaiACECMaIAMgAygCACACaiIFNgIAIAAgACgCLCIBNgIEIAAgASAAKAIwIgAgBCACayIEIAAgBEkbIgBqNgIIIAEgAygCDCAFaiAAECMaIAMgAygCACAAajYCACACC4sBAQF/IwBBEGsiAyQAAn4CQCACQQNPDQAgACgCVCEAIANBADYCBCADIAAoAgA2AgggAyAAKAIENgIMQQAgA0EEaiACQQJ0aigCACICa6wgAVUNACAAKAIIIAJrrCABUw0AIAAgAiABp2oiADYCACAArQwBC0HIrgRBHDYCAEJ/CyEBIANBEGokACABCwUAIACcCwUAIACZC6QBAgF/AX4gAL1C/////////
 
///AIMiAr8hAAJ8IAJCIIinIgFBwdyY/wNNBEBEAAAAAAAA8D8gAUGAgMDyA0kNARogABClAiIAIACiIABEAAAAAAAA8D+gIgAgAKCjRAAAAAAAAPA/oA8LIAFBwdyYhARNBEAgABCvBCIARAAAAAAAAPA/IACjoEQAAAAAAADgP6IPCyAARAAAAAAAAPA/EIoGCwvHAQECfyMAQRBrIgEkAAJ8IAC9QiCIp0H/////B3EiAkH7w6T/A00EQEQAAAAAAADwPyACQZ7BmvIDSQ0BGiAARAAAAAAAAAAAENsCDAELIAAgAKEgAkGAgMD/B08NABoCQAJAAkACQCAAIAEQsARBA3EOAwABAgMLIAErAwAgASsDCBDbAgwDCyABKwMAIAErAwhBARDaApoMAgsgASsDACABKwMIENsCmgwBCyABKwMAIAErAwhBARDaAgshACABQRBqJAAgAAsFACAAmwuDAgMCfAJ/AX4gAL0iBUIgiKdB/////wdxIgNBgIDA/wdPBEAgACAAoA8LQZPx/dQCIQQCQCADQf//P00EQEGT8f3LAiEEIABEAAAAAAAAUEOivSIFQiCIp0H/////B3EiA0UNAQsgBUKAgICAgICAgIB/gyADQQNuIARqrUIghoS/IgIgAqIgAiAAo6IiASABIAGioiABRNft5NQAsMI/okTZUee+y0Tov6CiIAEgAUTC1klKYPH5P6JEICTwkuAo/r+gokSS5mEP5gP+P6CgIAKivUKAgICACHxCgICAgHyDvyIBIAAgASABoqMiACABoSABIAGgIACgo6IgAaAhAAsgAAucAwIDfgJ/IwBBIGsiCSQAAkAgBUEBcQRAIwBBIGsiCiQAQoCAgIDgACEIAkAgACAKQRhqIAFB3gAQhQEiBUUNACAFKQMAIgEQsgFFBEAgAEHfKUEAEBQMAQsgCikDGCIGEBAEQCAAIAEgAiADIAQQkAMhCAwBCwJAIAAgAyAEEJIDIg
 
cQCw0AIAUpAwAhASAKIAI3AxAgCiAHNwMIIAogATcDACAAIAYgBSkDCEEDIAoQIiIBEAsgAUL/////b1ZyRQRAIAAgARAKIAAQKAwBCyABIQgLIAAgBhAKIAAgBxAKCyAKQSBqJAAgCCEGDAELQoCAgIDgACEGIAAgCUEYaiABQdoAEIUBIgVFDQAgCSkDGCEHIAUtABBFBEAgACAHEAogAEGiNkEAEBQMAQsgBxAQBEAgACAFKQMAIAIgAyAEECIhBgwBCyAAIAMgBBCSAyIIEAtFBEAgBSkDACEBIAkgCDcDECAJIAI3AwggCSABNwMAIAAgByAFKQMIQQMgCRAiIQYLIAAgBxAKIAAgCBAKCyAJQSBqJAAgBguHAQMBfgF/AXwgAL0iAUL///////////8Ag78hAAJAAnwgAUI0iKdB/w9xIgJB/QdNBEAgAkHfB0kNAiAAIACgIgMgAyAAokQAAAAAAADwPyAAoaOgDAELIABEAAAAAAAA8D8gAKGjIgAgAKALELEDRAAAAAAAAOA/oiEACyAAIACaIAFCAFkbC6kDAgV/AX4gAL1C////////////AINCgYCAgICAgPj/AFQgAb1C////////////AINCgICAgICAgPj/AFhxRQRAIAAgAaAPCyABvSIHQiCIpyICQYCAwP8DayAHpyIFckUEQCAAELEEDwsgAkEedkECcSIGIAC9IgdCIIinIgNBH3ZyIQQCQCADQf////8HcSIDIAenckUEQAJAAkAgBEECaw4CAAEDC0QYLURU+yEJQA8LRBgtRFT7IQnADwsgAkH/////B3EiAiAFckUEQEQYLURU+yH5PyAApg8LAkAgAkGAgMD/B0YEQCADQYCAwP8HRw0BIARBA3RB0P8DaisDAA8LIANBgIDA/wdHIAJBgICAIGogA09xRQRARBgtRFT7Ifk/IACmDwsCfCAGBEBEAAAAAAAAAAAgA0GAgIAgaiACSQ0BGgs
 
gACABo5kQsQQLIQACQAJAAkAgBA4DBAABAgsgAJoPC0QYLURU+yEJQCAARAdcFDMmpqG8oKEPCyAARAdcFDMmpqG8oEQYLURU+yEJwKAPCyAEQQN0QfD/A2orAwAhAAsgAAuyAQMBfgF/AXwgAL0iAUL///////////8Ag78hAAJAIAFCNIinQf8PcSICQZkITwRAIAAQ2QJE7zn6/kIu5j+gIQAMAQsgAkGACE8EQCAAIACgRAAAAAAAAPA/IAAgAKJEAAAAAAAA8D+gnyAAoKOgENkCIQAMAQsgAkHlB0kNACAAIACiIgMgA0QAAAAAAADwP6CfRAAAAAAAAPA/oKMgAKAQsQMhAAsgACAAmiABQgBZGwu5AgMBfwN8AX4gAL0iBUIgiKdB/////wdxIgFBgIDA/wNPBEAgBacgAUGAgMD/A2tyRQRAIABEGC1EVPsh+T+iRAAAAAAAAHA4oA8LRAAAAAAAAAAAIAAgAKGjDwsCQCABQf////4DTQRAIAFBgIBAakGAgIDyA0kNASAAIAAgAKIQ3AKiIACgDwtEAAAAAAAA8D8gAJmhRAAAAAAAAOA/oiIDnyEAIAMQ3AIhBAJ8IAFBs+a8/wNPBEBEGC1EVPsh+T8gACAEoiAAoCIAIACgRAdcFDMmppG8oKEMAQtEGC1EVPsh6T8gAL1CgICAgHCDvyICIAKgoSAAIACgIASiRAdcFDMmppE8IAMgAiACoqEgACACoKMiACAAoKGhoUQYLURU+yHpP6ALIgAgAJogBUIAWRshAAsgAAt2AQF/IAC9QjSIp0H/D3EiAUH/B00EQCAARAAAAAAAAPC/oCIAIAAgAKIgACAAoKCfoBCxAw8LIAFBmAhNBEAgACAAoEQAAAAAAADwvyAAIACiRAAAAAAAAPC/oJ8gAKCjoBDZAg8LIAAQ2QJE7zn6/kIu5j+gC64CAwF8AX4BfyAAvSICQiCIp0H/////B3EiA0GAgMD/A08E
 
QCACpyADQYCAwP8Da3JFBEBEAAAAAAAAAABEGC1EVPshCUAgAkIAWRsPC0QAAAAAAAAAACAAIAChow8LAnwgA0H////+A00EQEQYLURU+yH5PyADQYGAgOMDSQ0BGkQHXBQzJqaRPCAAIAAgAKIQ3AKioSAAoUQYLURU+yH5P6APCyACQgBTBEBEGC1EVPsh+T8gAEQAAAAAAADwP6BEAAAAAAAA4D+iIgCfIgEgASAAENwCokQHXBQzJqaRvKCgoSIAIACgDwtEAAAAAAAA8D8gAKFEAAAAAAAA4D+iIgCfIgEgABDcAqIgACABvUKAgICAcIO/IgAgAKKhIAEgAKCjoCAAoCIAIACgCwtaAgF/AX4CQEGwrgQoAgAEQEG0rgQoAgAhAgwBC0GwrgQQ1wUiAjYCAEG0rgQgAhDfBCICNgIACyACIAAgABBCQabvABC2BSIDIAEQqAMaQbSuBCgCACADEAoLC42hBFQAQYAIC9V7KCl7fQAoKXtzdXBlciguLi5hcmd1bWVudHMpO30AKCkgewogICAgW25hdGl2ZSBjb2RlXQp9AGNhbm5vdCBtaXggPz8gd2l0aCAmJiBvciB8fABwcm94eTogcHJvcGVydHkgbm90IHByZXNlbnQgaW4gdGFyZ2V0IHdlcmUgcmV0dXJuZWQgYnkgbm9uIGV4dGVuc2libGUgcHJveHkAcmV2b2tlZCBwcm94eQBQcm94eQBhZGRfcHJvcGVydHkAcHJveHk6IGNhbm5vdCBzZXQgcHJvcGVydHkAbm8gc2V0dGVyIGZvciBwcm9wZXJ0eQB2YWx1ZSBoYXMgbm8gcHJvcGVydHkAY291bGQgbm90IGRlbGV0ZSBwcm9wZXJ0eQBwcm94eTogZHVwbGljYXRlIHByb3BlcnR5AEpTX0RlZmluZUF1dG9Jbml0UHJvcGVydHkAaGFzT3duUHJvcGVydHkAcHJveHk6IGluY29uc2lzdGVud
 
CBkZWxldGVQcm9wZXJ0eQBwcm94eTogaW5jb25zaXN0ZW50IGRlZmluZVByb3BlcnR5AEpTX0RlZmluZVByb3BlcnR5ACFtci0+ZW1wdHkAaW5maW5pdHkASW5maW5pdHkAb3V0IG9mIG1lbW9yeQB1bmtub3duIHVuaWNvZGUgZ2VuZXJhbCBjYXRlZ29yeQBHZW5lcmFsX0NhdGVnb3J5AGV2ZXJ5AGFueQBhcHBseQAnJXMnIGlzIHJlYWQtb25seQBleHBlY3RpbmcgY2F0Y2ggb3IgZmluYWxseQBzdGlja3kAc3RyaW5naWZ5AHN1YmFycmF5AGVtcHR5IGFycmF5AG5vbiBpbnRlZ2VyIGluZGV4IGluIHR5cGVkIGFycmF5AG5lZ2F0aXZlIGluZGV4IGluIHR5cGVkIGFycmF5AG91dC1vZi1ib3VuZCBpbmRleCBpbiB0eXBlZCBhcnJheQBjYW5ub3QgY3JlYXRlIG51bWVyaWMgaW5kZXggaW4gdHlwZWQgYXJyYXkAaXNBcnJheQBUeXBlZEFycmF5AGdldERheQBnZXRVVENEYXkAanNfZ2V0X2F0b21faW5kZXgAaW52YWxpZCBhcnJheSBpbmRleABvdXQtb2YtYm91bmQgbnVtZXJpYyBpbmRleABKU19BdG9tSXNBcnJheUluZGV4AGZpbmRJbmRleABpbnZhbGlkIGV4cG9ydCBzeW50YXgAaW52YWxpZCBhc3NpZ25tZW50IHN5bnRheABtYXgAXHUlMDR4AGludmFsaWQgb3Bjb2RlOiBwYz0ldSBvcGNvZGU9MHglMDJ4AC0rICAgMFgweAAtMFgrMFggMFgtMHgrMHggMHgAbGluZSB0ZXJtaW5hdG9yIG5vdCBhbGxvd2VkIGFmdGVyIHRocm93AHBvdwBub3cAc3RhY2sgb3ZlcmZsb3cAbXVzdCBiZSBjYWxsZWQgd2l0aCBuZXcAaXNWaW
 
V3AERhdGFWaWV3AHJhdwAldQBjbGFzcyBkZWNsYXJhdGlvbnMgY2FuJ3QgYXBwZWFyIGluIHNpbmdsZS1zdGF0ZW1lbnQgY29udGV4dABmdW5jdGlvbiBkZWNsYXJhdGlvbnMgY2FuJ3QgYXBwZWFyIGluIHNpbmdsZS1zdGF0ZW1lbnQgY29udGV4dABsZXhpY2FsIGRlY2xhcmF0aW9ucyBjYW4ndCBhcHBlYXIgaW4gc2luZ2xlLXN0YXRlbWVudCBjb250ZXh0AGR1cGxpY2F0ZSBhcmd1bWVudCBuYW1lcyBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQAZHVwbGljYXRlIHBhcmFtZXRlciBuYW1lcyBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQAaW1wb3J0Lm1ldGEgbm90IHN1cHBvcnRlZCBpbiB0aGlzIGNvbnRleHQASlNfRnJlZUNvbnRleHQASlNDb250ZXh0AGpzX21hcF9pdGVyYXRvcl9uZXh0AGpzX2FzeW5jX2dlbmVyYXRvcl9yZXN1bWVfbmV4dAB1bmV4cGVjdGVkIGVuZCBvZiBpbnB1dAB0dABleHBvcnRlZCB2YXJpYWJsZSAnJXMnIGRvZXMgbm90IGV4aXN0AHByaXZhdGUgY2xhc3MgZmllbGQgJyVzJyBkb2VzIG5vdCBleGlzdAB0ZXN0AGFzc2lnbm1lbnQgcmVzdCBwcm9wZXJ0eSBtdXN0IGJlIGxhc3QAc3FydABzb3J0AGNicnQAdHJpbVN0YXJ0AHBhZFN0YXJ0AHVua25vd24gdW5pY29kZSBzY3JpcHQAU2NyaXB0AGh5cG90AGZyZWVfemVyb19yZWZjb3VudABzdHJfaW5kZXggPT0gbnVtX2tleXNfY291bnQgKyBzdHJfa2V5c19jb3VudABudW1faW5kZXggPT0gbnVtX2tleXNfY291bnQAc3ltX2luZGV
 
4ID09IGF0b21fY291bnQAbGFiZWwgPj0gMCAmJiBsYWJlbCA8IHMtPmxhYmVsX2NvdW50AGxhYjEgPj0gMCAmJiBsYWIxIDwgcy0+bGFiZWxfY291bnQAdmFsIDwgcy0+Y2FwdHVyZV9jb3VudAB2YWwyIDwgcy0+Y2FwdHVyZV9jb3VudABpbnZhbGlkIHJlcGVhdCBjb3VudABpbnZhbGlkIHJlcGV0aXRpb24gY291bnQAZm9udABpbnZhbGlkIGNvZGUgcG9pbnQAZnJvbUNvZGVQb2ludABpbnZhbGlkIGhpbnQAZW5jb2RlVVJJQ29tcG9uZW50AGRlY29kZVVSSUNvbXBvbmVudAB1bmV4cGVjdGVkIGVuZCBvZiBjb21tZW50AGludmFsaWQgc3dpdGNoIHN0YXRlbWVudABwYXJzZUludABkdXBsaWNhdGUgZGVmYXVsdABzcGxpdABleHBlY3RpbmcgaGV4IGRpZ2l0AHRyaW1SaWdodAByZWR1Y2VSaWdodAB1bnNoaWZ0AHRyaW1MZWZ0AGludmFsaWQgb2Zmc2V0AGludmFsaWQgYnl0ZU9mZnNldABnZXRUaW1lem9uZU9mZnNldAByZXNvbHZpbmcgZnVuY3Rpb24gYWxyZWFkeSBzZXQAcHJveHk6IGluY29uc2lzdGVudCBzZXQAZmluZF9qdW1wX3RhcmdldABleHBlY3RpbmcgdGFyZ2V0AGludmFsaWQgZGVzdHJ1Y3R1cmluZyB0YXJnZXQAcHJveHk6IGluY29uc2lzdGVudCBnZXQAV2Vha1NldABjb25zdHJ1Y3QASlNfRnJlZUF0b21TdHJ1Y3QAdXNlIHN0cmljdABSZWZsZWN0AHJlamVjdABub3QgYW4gQXN5bmNHZW5lcmF0b3Igb2JqZWN0AGNhbm5vdCBjb252ZXJ0IHRvIG9iamVjdABpbnZhbGlkIGJyYW5kIG9uIG9iamVjdABv
 
cGVyYW5kICdwcm90b3R5cGUnIHByb3BlcnR5IGlzIG5vdCBhbiBvYmplY3QAcmVjZWl2ZXIgaXMgbm90IGFuIG9iamVjdABpdGVyYXRvciBtdXN0IHJldHVybiBhbiBvYmplY3QAbm90IGEgRGF0ZSBvYmplY3QAbm90IGEgb2JqZWN0AEpTT2JqZWN0AHBhcnNlRmxvYXQAZmxhdABub3RoaW5nIHRvIHJlcGVhdABjb25jYXQAY29kZVBvaW50QXQAY2hhckF0AGNoYXJDb2RlQXQAa2V5cwBwcm94eTogdGFyZ2V0IHByb3BlcnR5IG11c3QgYmUgcHJlc2VudCBpbiBwcm94eSBvd25LZXlzACAgZmFzdCBhcnJheXMAZXhwb3J0ICclcycgaW4gbW9kdWxlICclcycgaXMgYW1iaWd1b3VzAHByaXZhdGUgY2xhc3MgZmllbGQgJyVzJyBhbHJlYWR5IGV4aXN0cwB0b28gbWFueSBhcmd1bWVudHMAVG9vIG1hbnkgY2FsbCBhcmd1bWVudHMAICBlbGVtZW50cwBpbnZhbGlkIG51bWJlciBvZiBkaWdpdHMAYmluYXJ5IG9iamVjdHMAaW52YWxpZCBwcm9wZXJ0eSBhY2Nlc3MAanNfb3BfZGVmaW5lX2NsYXNzAGZkLT5ieXRlX2NvZGUuYnVmW2RlZmluZV9jbGFzc19wb3NdID09IE9QX2RlZmluZV9jbGFzcwBfX2dldENsYXNzAHNldEhvdXJzAGdldEhvdXJzAHNldFVUQ0hvdXJzAGdldFVUQ0hvdXJzAGdldE93blByb3BlcnR5RGVzY3JpcHRvcnMAdG9vIG1hbnkgaW1icmljYXRlZCBxdWFudGlmaWVycwB1bmljb2RlX3Byb3Bfb3BzAGFjb3MAZm9yIGF3YWl0IGlzIG9ubHkgdmFsaWQgaW4gYXN5bmNocm9ub3VzIGZ1bmN0aW9ucwBuZXcud
 
GFyZ2V0IG9ubHkgYWxsb3dlZCB3aXRoaW4gZnVuY3Rpb25zAGJ5dGVjb2RlIGZ1bmN0aW9ucwBDIGZ1bmN0aW9ucwBwcm94eTogaW5jb25zaXN0ZW50IHByZXZlbnRFeHRlbnNpb25zAFNjcmlwdF9FeHRlbnNpb25zAGF0b21zAHByb3h5OiBwcm9wZXJ0aWVzIG11c3QgYmUgc3RyaW5ncyBvciBzeW1ib2xzAGdldE93blByb3BlcnR5U3ltYm9scwByZXNvbHZlX2xhYmVscwBKU19FdmFsVGhpcwBzdHJpbmdzAGludmFsaWQgZGVzY3JpcHRvciBmbGFncwBpbnZhbGlkIHJlZ3VsYXIgZXhwcmVzc2lvbiBmbGFncwB2YWx1ZXMAc2V0TWludXRlcwBnZXRNaW51dGVzAHNldFVUQ01pbnV0ZXMAZ2V0VVRDTWludXRlcwB0b28gbWFueSBjYXB0dXJlcwAgIHNoYXBlcwBnZXRPd25Qcm9wZXJ0eU5hbWVzAGdjX2ZyZWVfY3ljbGVzAGFkZF9ldmFsX3ZhcmlhYmxlcwByZXNvbHZlX3ZhcmlhYmxlcwB0b28gbWFueSBsb2NhbCB2YXJpYWJsZXMAdG9vIG1hbnkgY2xvc3VyZSB2YXJpYWJsZXMAY29tcGFjdF9wcm9wZXJ0aWVzACAgcHJvcGVydGllcwBkZWZpbmVQcm9wZXJ0aWVzAGVudHJpZXMAZnJvbUVudHJpZXMAdG9vIG1hbnkgcmFuZ2VzAGluY2x1ZGVzAHNldE1pbGxpc2Vjb25kcwBnZXRNaWxsaXNlY29uZHMAc2V0VVRDTWlsbGlzZWNvbmRzAGdldFVUQ01pbGxpc2Vjb25kcwBzZXRTZWNvbmRzAGdldFNlY29uZHMAc2V0VVRDU2Vjb25kcwBnZXRVVENTZWNvbmRzAGl0YWxpY3MAYWJzAHByb3h5OiBpbmNvbnNpc3RlbnQgaGFzAC
 
UuKnMAICglcwBzZXQgJXMAZ2V0ICVzACAgICBhdCAlcwBub3QgYSAlcwB1bnN1cHBvcnRlZCBrZXl3b3JkOiAlcwBzdWJzdHIAcHJveHk6IGluY29uc2lzdGVudCBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IAc3VwZXIoKSBpcyBvbmx5IHZhbGlkIGluIGEgZGVyaXZlZCBjbGFzcyBjb25zdHJ1Y3RvcgBwYXJlbnQgY2xhc3MgbXVzdCBiZSBjb25zdHJ1Y3RvcgBub3QgYSBjb25zdHJ1Y3RvcgBBcnJheSBJdGVyYXRvcgBTZXQgSXRlcmF0b3IATWFwIEl0ZXJhdG9yAFJlZ0V4cCBTdHJpbmcgSXRlcmF0b3IAbm90IGFuIEFzeW5jLWZyb20tU3luYyBJdGVyYXRvcgBjYW5ub3QgaW52b2tlIGEgcnVubmluZyBnZW5lcmF0b3IAbm90IGEgZ2VuZXJhdG9yAEFzeW5jR2VuZXJhdG9yAHN5bnRheCBlcnJvcgBTeW50YXhFcnJvcgBFdmFsRXJyb3IASW50ZXJuYWxFcnJvcgBBZ2dyZWdhdGVFcnJvcgBUeXBlRXJyb3IAUmFuZ2VFcnJvcgBSZWZlcmVuY2VFcnJvcgBVUklFcnJvcgBmbG9vcgBmb250Y29sb3IAYW5jaG9yAGZvcgBrZXlGb3IAZXhwZWN0aW5nIHN1cnJvZ2F0ZSBwYWlyAGEgZGVjbGFyYXRpb24gaW4gdGhlIGhlYWQgb2YgYSBmb3ItJXMgbG9vcCBjYW4ndCBoYXZlIGFuIGluaXRpYWxpemVyACdhcmd1bWVudHMnIGlkZW50aWZpZXIgaXMgbm90IGFsbG93ZWQgaW4gY2xhc3MgZmllbGQgaW5pdGlhbGl6ZXIAaW52YWxpZCBudW1iZXIgb2YgYXJndW1lbnRzIGZvciBnZXR0ZXIgb3Igc2V0dGVyAGludmFsaWQgc2V0dGV
 
yAGludmFsaWQgZ2V0dGVyAGZpbHRlcgBtaXNzaW5nIGZvcm1hbCBwYXJhbWV0ZXIAInVzZSBzdHJpY3QiIG5vdCBhbGxvd2VkIGluIGZ1bmN0aW9uIHdpdGggZGVmYXVsdCBvciBkZXN0cnVjdHVyaW5nIHBhcmFtZXRlcgBpbnZhbGlkIGNoYXJhY3RlcgB1bmV4cGVjdGVkIGNoYXJhY3RlcgBwcml2YXRlIGNsYXNzIGZpZWxkIGZvcmJpZGRlbiBhZnRlciBzdXBlcgBpbnZhbGlkIHJlZGVmaW5pdGlvbiBvZiBsZXhpY2FsIGlkZW50aWZpZXIAJ2xldCcgaXMgbm90IGEgdmFsaWQgbGV4aWNhbCBpZGVudGlmaWVyAGludmFsaWQgcmVkZWZpbml0aW9uIG9mIGdsb2JhbCBpZGVudGlmaWVyAHlpZWxkIGlzIGEgcmVzZXJ2ZWQgaWRlbnRpZmllcgAnJXMnIGlzIGEgcmVzZXJ2ZWQgaWRlbnRpZmllcgBvdGhlcgBhdG9tMV9pc19pbnRlZ2VyICYmIGF0b20yX2lzX2ludGVnZXIAaXNJbnRlZ2VyAGlzU2FmZUludGVnZXIAYnVmZmVyAFNoYXJlZEFycmF5QnVmZmVyAGNhbm5vdCB1c2UgaWRlbnRpY2FsIEFycmF5QnVmZmVyAGNhbm5vdCBjb252ZXJ0IHN5bWJvbCB0byBudW1iZXIAbm90IGEgbnVtYmVyAGxpbmVOdW1iZXIAbWFsZm9ybWVkIHVuaWNvZGUgY2hhcgBjbGVhcgBzZXRZZWFyAGdldFllYXIAc2V0RnVsbFllYXIAZ2V0RnVsbFllYXIAc2V0VVRDRnVsbFllYXIAZ2V0VVRDRnVsbFllYXIAdW5leHBlY3RlZCBsaW5lIHRlcm1pbmF0b3IgaW4gcmVnZXhwAHVuZXhwZWN0ZWQgZW5kIG9mIHJlZ2V4cABSZWdFeHAAc3VwAGlu
 
dmFsaWQgZ3JvdXAAcG9wAGNvbnRpbnVlIG11c3QgYmUgaW5zaWRlIGxvb3AAZHVtcABudW1fa2V5c19jbXAAdXNlIHN0cmlwAG1hcABmbGF0TWFwAFdlYWtNYXAAZXhwZWN0aW5nICd7JyBhZnRlciBccABsb2cxcABpdGVyYXRvcl9jbG9zZV9yZXR1cm4AcHJvbWlzZSBzZWxmIHJlc29sdXRpb24Ab3V0IG9mIG1lbW9yeSBpbiByZWdleHAgZXhlY3V0aW9uAGRlc2NyaXB0aW9uAHByb3h5OiBkZWZpbmVQcm9wZXJ0eSBleGNlcHRpb24AanNfYXN5bmNfZ2VuZXJhdG9yX3Jlc29sdmVfZnVuY3Rpb24AanNfY3JlYXRlX2Z1bmN0aW9uAHNldC9hZGQgaXMgbm90IGEgZnVuY3Rpb24AcmV0dXJuIG5vdCBpbiBhIGZ1bmN0aW9uAEFzeW5jR2VuZXJhdG9yRnVuY3Rpb24AY2FsbEV4dGVybmFsRnVuY3Rpb24AQXN5bmNGdW5jdGlvbgBhd2FpdCBpbiBkZWZhdWx0IGV4cHJlc3Npb24AeWllbGQgaW4gZGVmYXVsdCBleHByZXNzaW9uAGludmFsaWQgZGVjaW1hbCBlc2NhcGUgaW4gcmVndWxhciBleHByZXNzaW9uAGJhY2sgcmVmZXJlbmNlIG91dCBvZiByYW5nZSBpbiByZWd1bGFyIGV4cHJlc3Npb24AaW52YWxpZCBlc2NhcGUgc2VxdWVuY2UgaW4gcmVndWxhciBleHByZXNzaW9uAGV4cGVjdGVkICdvZicgb3IgJ2luJyBpbiBmb3IgY29udHJvbCBleHByZXNzaW9uAHRvbyBjb21wbGljYXRlZCBkZXN0cnVjdHVyaW5nIGV4cHJlc3Npb24AZXhwZWN0ZWQgJ30nIGFmdGVyIHRlbXBsYXRlIGV4cHJlc3Npb24AdG9QcmVjaXNpb24AY
 
XNpbgBqb2luAG1pbgBjb3B5V2l0aGluAHRlbXBsYXRlIGxpdGVyYWwgY2Fubm90IGFwcGVhciBpbiBhbiBvcHRpb25hbCBjaGFpbgBjaXJjdWxhciBwcm90b3R5cGUgY2hhaW4AYXNzaWduAGlzRnJvemVuAG1hcmtfY2hpbGRyZW4AKHBvcyArIGxlbikgPD0gYmNfYnVmX2xlbgB1bmV4cGVjdGVkIGVsbGlwc2lzIHRva2VuAHRoZW4Ac2V0dGVyIGlzIGZvcmJpZGRlbgBudWxsIG9yIHVuZGVmaW5lZCBhcmUgZm9yYmlkZGVuAGF0YW4AbmFuAG5vdCBhIGJvb2xlYW4AQm9vbGVhbgBnY19zY2FuAGJhZCBub3JtYWxpemF0aW9uIGZvcm0ASlNfTmV3U3ltYm9sRnJvbUF0b20AZnJvbQByYW5kb20AdHJpbQBpbXVsAG5vdCBhIHN5bWJvbABTeW1ib2wAUmVnRXhwIGV4ZWMgbWV0aG9kIG11c3QgcmV0dXJuIGFuIG9iamVjdCBvciBudWxsAHBhcmVudCBwcm90b3R5cGUgbXVzdCBiZSBhbiBvYmplY3Qgb3IgbnVsbABjYW5ub3Qgc2V0IHByb3BlcnR5ICclcycgb2YgbnVsbABjYW5ub3QgcmVhZCBwcm9wZXJ0eSAnJXMnIG9mIG51bGwATnVsbABmaWxsAG5ldyBBcnJheUJ1ZmZlciBpcyB0b28gc21hbGwAVHlwZWRBcnJheSBsZW5ndGggaXMgdG9vIHNtYWxsAGNhbGwAZG90QWxsAG1hdGNoQWxsAHJlcGxhY2VBbGwAY2VpbAB1cGRhdGVfbGFiZWwAYmNfYnVmW3Bvc10gPT0gT1BfbGFiZWwAZXZhbABpbnZhbGlkIG51bWJlciBsaXRlcmFsAG1hbGZvcm1lZCBlc2NhcGUgc2VxdWVuY2UgaW4gc3RyaW5nIGxpdGVyYWwASlNfU2V0UH
 
JvcGVydHlJbnRlcm5hbABKU19HZXRPd25Qcm9wZXJ0eU5hbWVzSW50ZXJuYWwAX19KU19FdmFsSW50ZXJuYWwAdG9FeHBvbmVudGlhbABzZWFsAGdsb2JhbABibGluawBfX2RhdGVfY2xvY2sAc3RhY2sAbHJlX2V4ZWNfYmFja3RyYWNrAHMtPmlzX3dlYWsAaQBzZXRNb250aABnZXRNb250aABzZXRVVENNb250aABnZXRVVENNb250aABpbnZhbGlkIGtleXdvcmQ6IHdpdGgAc3RhcnRzV2l0aABlbmRzV2l0aABwcm9wID09IEpTX0FUT01fbGVuZ3RoAGludmFsaWQgYXJyYXkgbGVuZ3RoAGludmFsaWQgYXJyYXkgYnVmZmVyIGxlbmd0aABpbnZhbGlkIGxlbmd0aABpbnZhbGlkIGJ5dGVMZW5ndGgATWF0aABwdXNoAGFjb3NoAEpTX1Jlc2l6ZUF0b21IYXNoAGFzaW5oAGF0YW5oAGJyZWFrIG11c3QgYmUgaW5zaWRlIGxvb3Agb3Igc3dpdGNoAG1hdGNoAGNhdGNoAHNlYXJjaABmb3JFYWNoAGxvZwBBcnJheSB0b28gbG9uZwBzdHJpbmcgdG9vIGxvbmcAQXJyYXkgbG9vIGxvbmcAc3Vic3RyaW5nAGNhbm5vdCBjb252ZXJ0IHN5bWJvbCB0byBzdHJpbmcAdW5leHBlY3RlZCBlbmQgb2Ygc3RyaW5nAG5vdCBhIHN0cmluZwBpbnZhbGlkIGNoYXJhY3RlciBpbiBhIEpTT04gc3RyaW5nAHRvU3RyaW5nAHRvRGF0ZVN0cmluZwB0b0xvY2FsZURhdGVTdHJpbmcAdG9UaW1lU3RyaW5nAHRvTG9jYWxlVGltZVN0cmluZwB0b0xvY2FsZVN0cmluZwB0b0dNVFN0cmluZwBKU1N0cmluZwB0b0lTT1N0cmluZwB0b1VUQ1N0cmluZwBkdXB
 
saWNhdGUgaW1wb3J0IGJpbmRpbmcAaW52YWxpZCBpbXBvcnQgYmluZGluZwBiaWcAcmVnZXhwIG11c3QgaGF2ZSB0aGUgJ2cnIGZsYWcAb2YAaW5mAGRpZmYgPT0gKGludDhfdClkaWZmAGRpZmYgPT0gKGludDE2X3QpZGlmZgBocmVmAGdjX2RlY3JlZgBmcmVlX3Zhcl9yZWYAb3B0aW1pemVfc2NvcGVfbWFrZV9nbG9iYWxfcmVmAHJlc2V0X3dlYWtfcmVmAGRlbGV0ZV93ZWFrX3JlZgBvcHRpbWl6ZV9zY29wZV9tYWtlX3JlZgBpbmRleE9mAGxhc3RJbmRleE9mAHZhbHVlT2YAc2V0UHJvdG90eXBlT2YAZ2V0UHJvdG90eXBlT2YAaXNQcm90b3R5cGVPZgAlLipmAGZvbnRzaXplAG5ld19zaXplIDw9IHNoLT5wcm9wX3NpemUAZGVzY3IgPCBydC0+YXRvbV9zaXplAGF0b20gPCBydC0+YXRvbV9zaXplAGNvbXB1dGVfc3RhY2tfc2l6ZQBuIDwgYnVmX3NpemUAbm9ybWFsaXplAGZyZWV6ZQByZXNvbHZlAHRvUHJpbWl0aXZlAHB1dF9sdmFsdWUAdW5rbm93biB1bmljb2RlIHByb3BlcnR5IHZhbHVlAHJlc3QgZWxlbWVudCBjYW5ub3QgaGF2ZSBhIGRlZmF1bHQgdmFsdWUAaW52YWxpZCByZXQgdmFsdWUAX19KU19BdG9tVG9WYWx1ZQBfX3F1b3RlAGlzRmluaXRlAGRlbGV0ZQBjcmVhdGUAc2V0RGF0ZQBnZXREYXRlAHNldFVUQ0RhdGUAZ2V0VVRDRGF0ZQBJbnZhbGlkIERhdGUAcmV2ZXJzZQBwYXJzZQBwcm94eSBwcmV2ZW50RXh0ZW5zaW9ucyBoYW5kbGVyIHJldHVybmVkIGZhbHNlAFByb21pc2UAdG9Mb3dlckNhc2UA
 
dG9Mb2NhbGVMb3dlckNhc2UAdG9VcHBlckNhc2UAdG9Mb2NhbGVVcHBlckNhc2UAaWdub3JlQ2FzZQBsb2NhbGVDb21wYXJlAHByb3h5OiBpbmNvbnNpc3RlbnQgcHJvdG90eXBlAHByb3h5OiBiYWQgcHJvdG90eXBlAG5vdCBhIHByb3RvdHlwZQBpbnZhbGlkIG9iamVjdCB0eXBlAHVuZXNjYXBlAG5vbmUAcmVzdCBlbGVtZW50IG11c3QgYmUgdGhlIGxhc3Qgb25lAG11bHRpbGluZQAgIHBjMmxpbmUAc29tZQBKU19GcmVlUnVudGltZQBKU1J1bnRpbWUAc2V0VGltZQBnZXRUaW1lAHNldF9vYmplY3RfbmFtZQBleHBlY3RpbmcgcHJvcGVydHkgbmFtZQB1bmtub3duIHVuaWNvZGUgcHJvcGVydHkgbmFtZQBpbnZhbGlkIHByb3BlcnR5IG5hbWUAZHVwbGljYXRlIF9fcHJvdG9fXyBwcm9wZXJ0eSBuYW1lAGludmFsaWQgcmVkZWZpbml0aW9uIG9mIHBhcmFtZXRlciBuYW1lAGV4cGVjdGluZyBncm91cCBuYW1lAGR1cGxpY2F0ZSBncm91cCBuYW1lAGludmFsaWQgZ3JvdXAgbmFtZQBkdXBsaWNhdGUgbGFiZWwgbmFtZQBpbnZhbGlkIGZpcnN0IGNoYXJhY3RlciBvZiBwcml2YXRlIG5hbWUAaW52YWxpZCBsZXhpY2FsIHZhcmlhYmxlIG5hbWUAaW52YWxpZCBtZXRob2QgbmFtZQBleHBlY3RpbmcgZmllbGQgbmFtZQBpbnZhbGlkIGZpZWxkIG5hbWUAY2xhc3Mgc3RhdGVtZW50IHJlcXVpcmVzIGEgbmFtZQBmaWxlTmFtZQBjb21waWxlAG9iamVjdCBpcyBub3QgZXh0ZW5zaWJsZQBwcm94eTogaW5jb25zaXN0ZW50IGlzR
 
Xh0ZW5zaWJsZQBjYW5ub3QgaGF2ZSBzZXR0ZXIvZ2V0dGVyIGFuZCB2YWx1ZSBvciB3cml0YWJsZQBwcm9wZXJ0eSBpcyBub3QgY29uZmlndXJhYmxlAHZhbHVlIGlzIG5vdCBpdGVyYWJsZQBwcm9wZXJ0eUlzRW51bWVyYWJsZQBtaXNzaW5nIGluaXRpYWxpemVyIGZvciBjb25zdCB2YXJpYWJsZQBsZXhpY2FsIHZhcmlhYmxlAGludmFsaWQgcmVkZWZpbml0aW9uIG9mIGEgdmFyaWFibGUAcmV2b2NhYmxlAHN0cmlrZQBpbnZhbGlkIGNsYXNzIHJhbmdlAG1lc3NhZ2UAYXN5bmNfZnVuY19mcmVlAGludmFsaWQgbHZhbHVlIGluIHN0cmljdCBtb2RlAGludmFsaWQgdmFyaWFibGUgbmFtZSBpbiBzdHJpY3QgbW9kZQBjYW5ub3QgZGVsZXRlIGEgZGlyZWN0IHJlZmVyZW5jZSBpbiBzdHJpY3QgbW9kZQBvY3RhbCBlc2NhcGUgc2VxdWVuY2VzIGFyZSBub3QgYWxsb3dlZCBpbiBzdHJpY3QgbW9kZQBvY3RhbCBsaXRlcmFscyBhcmUgZGVwcmVjYXRlZCBpbiBzdHJpY3QgbW9kZQB1bmljb2RlACAgYnl0ZWNvZGUASlNGdW5jdGlvbkJ5dGVjb2RlAHNraXBfZGVhZF9jb2RlAGludmFsaWQgYXJndW1lbnQgbmFtZSBpbiBzdHJpY3QgY29kZQBpbnZhbGlkIGZ1bmN0aW9uIG5hbWUgaW4gc3RyaWN0IGNvZGUAaW52YWxpZCByZWRlZmluaXRpb24gb2YgZ2xvYmFsIGlkZW50aWZpZXIgaW4gbW9kdWxlIGNvZGUAaW1wb3J0Lm1ldGEgb25seSB2YWxpZCBpbiBtb2R1bGUgY29kZQBmcm9tQ2hhckNvZGUAaW52YWxpZCBmb3IgaW4vb2
 
YgbGVmdCBoYW5kLXNpZGUAaW52YWxpZCBhc3NpZ25tZW50IGxlZnQtaGFuZCBzaWRlAHJlZHVjZQBzb3VyY2UAJ3RoaXMnIGNhbiBiZSBpbml0aWFsaXplZCBvbmx5IG9uY2UAcHJvcGVydHkgY29uc3RydWN0b3IgYXBwZWFycyBtb3JlIHRoYW4gb25jZQBpbnZhbGlkIFVURi04IHNlcXVlbmNlAGNpcmN1bGFyIHJlZmVyZW5jZQBzbGljZQBzcGxpY2UAcmFjZQByZXBsYWNlACUrLiplAHVuZXhwZWN0ZWQgJ2F3YWl0JyBrZXl3b3JkAHVuZXhwZWN0ZWQgJ3lpZWxkJyBrZXl3b3JkAG1hcF9kZWNyZWZfcmVjb3JkAGl0ZXJhdG9yIGRvZXMgbm90IGhhdmUgYSB0aHJvdyBtZXRob2QAb2JqZWN0IG5lZWRzIHRvSVNPU3RyaW5nIG1ldGhvZAAnc3VwZXInIGlzIG9ubHkgdmFsaWQgaW4gYSBtZXRob2QAZnJvdW5kAGJyZWFrL2NvbnRpbnVlIGxhYmVsIG5vdCBmb3VuZABvdXQgb2YgYm91bmQAZmluZABiaW5kAGludmFsaWQgaW5kZXggZm9yIGFwcGVuZABleHRyYW5lb3VzIGNoYXJhY3RlcnMgYXQgdGhlIGVuZAB1bmV4cGVjdGVkIGRhdGEgYXQgdGhlIGVuZAB1bmV4cGVjdGVkIGVuZABpbnZhbGlkIGluY3JlbWVudC9kZWNyZW1lbnQgb3BlcmFuZABpbnZhbGlkICdpbnN0YW5jZW9mJyByaWdodCBvcGVyYW5kAGludmFsaWQgJ2luJyBvcGVyYW5kAHRyaW1FbmQAcGFkRW5kAGJvbGQAJWxsZABnY19kZWNyZWZfY2hpbGQAcmVzb2x2ZV9zY29wZV9wcml2YXRlX2ZpZWxkAGNhbm5vdCBkZWxldGUgYSBwcml2YXRlIGNsYXNzIGZ
 
pZWxkAGV4cGVjdGluZyA8YnJhbmQ+IHByaXZhdGUgZmllbGQAJXMgaXMgbm90IGluaXRpYWxpemVkAGZpeGVkAHRvRml4ZWQAc2V0X29iamVjdF9uYW1lX2NvbXB1dGVkAHJlZ2V4IG5vdCBzdXBwb3J0ZWQAZXZhbCBpcyBub3Qgc3VwcG9ydGVkAFJlZ0V4cCBhcmUgbm90IHN1cHBvcnRlZABpbnRlcnJ1cHRlZAAlcyBvYmplY3QgZXhwZWN0ZWQAaWRlbnRpZmllciBleHBlY3RlZABieXRlY29kZSBmdW5jdGlvbiBleHBlY3RlZABzdHJpbmcgZXhwZWN0ZWQAZnJvbSBjbGF1c2UgZXhwZWN0ZWQAZnVuY3Rpb24gbmFtZSBleHBlY3RlZAB2YXJpYWJsZSBuYW1lIGV4cGVjdGVkAG1ldGEgZXhwZWN0ZWQAcmVqZWN0ZWQAbWVtb3J5IGFsbG9jYXRlZABtZW1vcnkgdXNlZABkZXJpdmVkIGNsYXNzIGNvbnN0cnVjdG9yIG11c3QgcmV0dXJuIGFuIG9iamVjdCBvciB1bmRlZmluZWQAY2Fubm90IHNldCBwcm9wZXJ0eSAnJXMnIG9mIHVuZGVmaW5lZABjYW5ub3QgcmVhZCBwcm9wZXJ0eSAnJXMnIG9mIHVuZGVmaW5lZABmbGFncyBtdXN0IGJlIHVuZGVmaW5lZABVbmRlZmluZWQAcHJpdmF0ZSBjbGFzcyBmaWVsZCBpcyBhbHJlYWR5IGRlZmluZWQAJyVzJyBpcyBub3QgZGVmaW5lZABncm91cCBuYW1lIG5vdCBkZWZpbmVkAGFsbFNldHRsZWQAZnVsZmlsbGVkAGNhbm5vdCBiZSBjYWxsZWQAaXNTZWFsZWQAIXNoLT5pc19oYXNoZWQAdmFyX3JlZi0+aXNfZGV0YWNoZWQAQXJyYXlCdWZmZXIgaXMgZGV0YWNoZWQAYWRkACUrMDdk
 
ACUwNGQAJTAyZCUwMmQAJTAyZC8lMDJkLyUwKmQAJS4zcyAlLjNzICUwMmQgJTAqZAA6JWQAaW52YWxpZCB0aHJvdyB2YXIgdHlwZSAlZABzYwBqc19kZWZfbWFsbG9jAHRydW5jAGdjAGV4ZWMAL3RtcC9xdWlja2pzL3F1aWNranMuYwAvdG1wL3F1aWNranMvbGlicmVnZXhwLmMAL3RtcC9xdWlja2pzL2xpYnVuaWNvZGUuYwBzdWIAcHJvbWlzZV9yZWFjdGlvbl9qb2IAanNfcHJvbWlzZV9yZXNvbHZlX3RoZW5hYmxlX2pvYgByd2EAX19sb29rdXBTZXR0ZXJfXwBfX2RlZmluZVNldHRlcl9fAF9fbG9va3VwR2V0dGVyX18AX19kZWZpbmVHZXR0ZXJfXwBfX3Byb3RvX18AW1N5bWJvbC5zcGxpdF0AW1N5bWJvbC5zcGVjaWVzXQBbU3ltYm9sLml0ZXJhdG9yXQBbU3ltYm9sLmFzeW5jSXRlcmF0b3JdAFtTeW1ib2wubWF0Y2hBbGxdAFtTeW1ib2wubWF0Y2hdAFtTeW1ib2wuc2VhcmNoXQBbU3ltYm9sLnRvU3RyaW5nVGFnXQBbU3ltYm9sLnRvUHJpbWl0aXZlXQBbdW5zdXBwb3J0ZWQgdHlwZV0AW2Z1bmN0aW9uIGJ5dGVjb2RlXQBbU3ltYm9sLmhhc0luc3RhbmNlXQBbU3ltYm9sLnJlcGxhY2VdAFsAJTAyZDolMDJkOiUwMmQuJTAzZFoAUE9TSVRJVkVfSU5GSU5JVFkATkVHQVRJVkVfSU5GSU5JVFkAcC0+Y2xhc3NfaWQgPT0gSlNfQ0xBU1NfQVJSQVkAc3RhY2tfbGVuIDwgUE9QX1NUQUNLX0xFTl9NQVgALSUwMmQtJTAyZFQASlNfQXRvbUdldFN0clJUAG9wY29kZSA8IFJFT1BfQ09VTlQAQllURVNfUEVSX0VMRU1FT
 
lQAJTAyZDolMDJkOiUwMmQgR01UAEpTX1ZBTFVFX0dFVF9UQUcoc2YtPmN1cl9mdW5jKSA9PSBKU19UQUdfT0JKRUNUAHZhcl9raW5kID09IEpTX1ZBUl9QUklWQVRFX1NFVFRFUgBNQVhfU0FGRV9JTlRFR0VSAE1JTl9TQUZFX0lOVEVHRVIAaXNOYU4ARGF0ZSB2YWx1ZSBpcyBOYU4AdG9KU09OAEVQU0lMT04ATkFOACUwMmQ6JTAyZDolMDJkICVjTQBzLT5sYWJlbF9zbG90c1tsYWJlbF0uZmlyc3RfcmVsb2MgPT0gTlVMTABsYWJlbF9zbG90c1tpXS5maXJzdF9yZWxvYyA9PSBOVUxMAHBycyAhPSBOVUxMAHNmLT5jdXJfc3AgIT0gTlVMTABzZiAhPSBOVUxMAG1yMSAhPSBOVUxMAHZhcl9raW5kICE9IEpTX1ZBUl9OT1JNQUwAYi0+ZnVuY19raW5kID09IEpTX0ZVTkNfTk9STUFMAGVuY29kZVVSSQBkZWNvZGVVUkkAUEkAc3BlY2lhbCA9PSBQVVRfTFZBTFVFX05PS0VFUCB8fCBzcGVjaWFsID09IFBVVF9MVkFMVUVfTk9LRUVQX0RFUFRIAHMtPnN0YXRlID09IEpTX0FTWU5DX0dFTkVSQVRPUl9TVEFURV9FWEVDVVRJTkcASU5GADAxMjM0NTY3ODlBQkNERUYAU0laRQBNQVhfVkFMVUUATUlOX1ZBTFVFAE5BTUUAZXZhbF90eXBlID09IEpTX0VWQUxfVFlQRV9HTE9CQUwgfHwgZXZhbF90eXBlID09IEpTX0VWQUxfVFlQRV9NT0RVTEUAcC0+Z2Nfb2JqX3R5cGUgPT0gSlNfR0NfT0JKX1RZUEVfSlNfT0JKRUNUIHx8IHAtPmdjX29ial90eXBlID09IEpTX0dDX09CSl9UWVBFX0ZVTkNUSU9OX0JZVEVDT0RFAExPRzJFAE
 
xPRzEwRQBzLT5zdGF0ZSA9PSBKU19BU1lOQ19HRU5FUkFUT1JfU1RBVEVfQVdBSVRJTkdfUkVUVVJOIHx8IHMtPnN0YXRlID09IEpTX0FTWU5DX0dFTkVSQVRPUl9TVEFURV9DT01QTEVURUQAVVRDADxpbnB1dD4APGluaXRTY3JpcHQ+ADxldmFsU2NyaXB0PgA8c2V0PgA8YW5vbnltb3VzPgA8Y29tbUZ1bj4APGNhbGxFeHRlcm5hbEZ1bmN0aW9uPgA8bnVsbD4AJnF1b3Q7AHNldFVpbnQ4AGdldFVpbnQ4AHNldEludDgAZ2V0SW50OABtYWxmb3JtZWQgVVRGLTgAcmFkaXggbXVzdCBiZSBiZXR3ZWVuIDIgYW5kIDM2AHNldFVpbnQxNgBnZXRVaW50MTYAc2V0SW50MTYAZ2V0SW50MTYAYXJnYyA9PSA1AHNldEZsb2F0NjQAZ2V0RmxvYXQ2NABhcmdjID09IDMAYXRhbjIAbG9nMgBTUVJUMV8yAFNRUlQyAExOMgBjbHozMgBzZXRVaW50MzIAZ2V0VWludDMyAHNldEludDMyAGdldEludDMyAHNldEZsb2F0MzIAZ2V0RmxvYXQzMgBzdGFja19sZW4gPj0gMgBKU19BdG9tSXNOdW1lcmljSW5kZXgxAGpzX2ZjdnQxAGV4cG0xAGxzLT5hZGRyID09IC0xAHN0YWNrX2xlbiA+PSAxAHAtPnNoYXBlLT5oZWFkZXIucmVmX2NvdW50ID09IDEAc3RhY2tfbGVuID09IDEAanNfZnJlZV9zaGFwZTAAbG9nMTAATE4xMABwLT5yZWZfY291bnQgPiAwAHZhcl9yZWYtPmhlYWRlci5yZWZfY291bnQgPiAwAHN0YWNrX3NpemUgPiAwAGNwb29sX2lkeCA+PSAwAHJ0LT5hdG9tX2NvdW50ID49IDAAbHMtPnJlZl9jb3VudCA+PSAwAHMtPmlzX2V
 
2YWwgfHwgcy0+Y2xvc3VyZV92YXJfY291bnQgPT0gMABwLT5yZWZfY291bnQgPT0gMABjdHgtPmhlYWRlci5yZWZfY291bnQgPT0gMABzaC0+aGVhZGVyLnJlZl9jb3VudCA9PSAwAHAtPm1hcmsgPT0gMAAocHItPnUuaW5pdC5yZWFsbV9hbmRfaWQgJiAzKSA9PSAwAChuZXdfaGFzaF9zaXplICYgKG5ld19oYXNoX3NpemUgLSAxKSkgPT0gMABpICE9IDAAc2l6ZSAhPSAwAF4kXC4qKz8oKVtde318LwA8LwBtaXNzaW5nIGJpbmRpbmcgcGF0dGVybi4uLgBhc3luYyBmdW5jdGlvbiAqAAp9KQBsaXN0X2VtcHR5KCZydC0+Z2Nfb2JqX2xpc3QpAGogPT0gKHNoLT5wcm9wX2NvdW50IC0gc2gtPmRlbGV0ZWRfcHJvcF9jb3VudCkASlNfSXNVbmRlZmluZWQoZnVuY19yZXQpACFfX0pTX0F0b21Jc1RhZ2dlZEludChkZXNjcikAIWF0b21faXNfZnJlZShwKQAobnVsbCkAIChuYXRpdmUpAGpzX2NsYXNzX2hhc19ieXRlY29kZShwLT5jbGFzc19pZCkAdW5jb25zaXN0ZW50IHN0YWNrIHNpemU6ICVkICVkIChwYz0lZCkAYnl0ZWNvZGUgYnVmZmVyIG92ZXJmbG93IChvcD0lZCwgcGM9JWQpAHN0YWNrIG92ZXJmbG93IChvcD0lZCwgcGM9JWQpAHN0YWNrIHVuZGVyZmxvdyAob3A9JWQsIHBjPSVkKQBpbnZhbGlkIG9wY29kZSAob3A9JWQsIHBjPSVkKQAoPzopAG5vIGZ1bmN0aW9uIGZpbGVuYW1lIGZvciBpbXBvcnQoKQAtXy4hfionKCkAIGFub255bW91cygAU3ltYm9sKABleHBlY3RpbmcgJ30nAGNsYXNzIGNvbnN0cnVjdG9y
 
cyBtdXN0IGJlIGludm9rZWQgd2l0aCAnbmV3JwBleHBlY3RpbmcgJ2FzJwB1bmV4cGVjdGVkIHRva2VuIGluIGV4cHJlc3Npb246ICclLipzJwB1bmV4cGVjdGVkIHRva2VuOiAnJS4qcycAcmVkZWNsYXJhdGlvbiBvZiAnJXMnAGR1cGxpY2F0ZSBleHBvcnRlZCBuYW1lICclcycAY2lyY3VsYXIgcmVmZXJlbmNlIHdoZW4gbG9va2luZyBmb3IgZXhwb3J0ICclcycgaW4gbW9kdWxlICclcycAQ291bGQgbm90IGZpbmQgZXhwb3J0ICclcycgaW4gbW9kdWxlICclcycAY291bGQgbm90IGxvYWQgbW9kdWxlICclcycAY2Fubm90IGRlZmluZSB2YXJpYWJsZSAnJXMnAHVuZGVmaW5lZCBwcml2YXRlIGZpZWxkICclcycAdW5zdXBwb3J0ZWQgcmVmZXJlbmNlIHRvICdzdXBlcicAaW52YWxpZCB1c2Ugb2YgJ3N1cGVyJwAnZm9yIGF3YWl0JyBsb29wIHNob3VsZCBiZSB1c2VkIHdpdGggJ29mJwBleHBlY3RpbmcgJyVjJwB1bnBhcmVudGhlc2l6ZWQgdW5hcnkgZXhwcmVzc2lvbiBjYW4ndCBhcHBlYXIgb24gdGhlIGxlZnQtaGFuZCBzaWRlIG9mICcqKicAaW52YWxpZCB1c2Ugb2YgJ2ltcG9ydCgpJwBleHBlY3RpbmcgJSUAOy8/OkAmPSskLCMAPSIAc2V0IABnZXQgAFtvYmplY3QgAGFzeW5jIGZ1bmN0aW9uIABib3VuZCAAJS4zcywgJTAyZCAlLjNzICUwKmQgAGFzeW5jIAA6IAAgICAgICAgICAgAAopIHsKAApKU09iamVjdCBjbGFzc2VzCgAlLTIwcyAlOHMgJThzCgAgICU1ZCAgJTIuMGQgJXMKACAgJTN1ICsgJS0ydSAgJ
 
XMKACAgbWFsbG9jX3VzYWJsZV9zaXplIHVuYXZhaWxhYmxlCgAlLTIwcyAlOGxsZAoAJS0yMHMgJThsbGQgJThsbGQKAF9fSlNfRnJlZVZhbHVlOiB1bmtub3duIHRhZz0lZAoAJS0yMHMgJThsbGQgJThsbGQgICglMC4xZiBwZXIgZmFzdCBhcnJheSkKACUtMjBzICU4bGxkICU4bGxkICAoJTAuMWYgcGVyIG9iamVjdCkKACUtMjBzICU4bGxkICU4bGxkICAoJTAuMWYgcGVyIGZ1bmN0aW9uKQoAJS0yMHMgJThsbGQgJThsbGQgICglMC4xZiBwZXIgYXRvbSkKACUtMjBzICU4bGxkICU4bGxkICAoJTAuMWYgcGVyIGJsb2NrKQoAJS0yMHMgJThsbGQgJThsbGQgICglZCBvdmVyaGVhZCwgJTAuMWYgYXZlcmFnZSBzbGFjaykKACUtMjBzICU4bGxkICU4bGxkICAoJTAuMWYgcGVyIHN0cmluZykKACUtMjBzICU4bGxkICU4bGxkICAoJTAuMWYgcGVyIHNoYXBlKQoAUXVpY2tKUyBtZW1vcnkgdXNhZ2UgLS0gMS4wLjAgdmVyc2lvbiwgJWQtYml0LCBtYWxsb2MgbGltaXQ6ICVsbGQKCgBB4IMBCwGMAEHsgwELDY0AAAA6AAAAOwAAAI4AQYSEAQs9jwAAADwAAAA9AAAAkAAAADwAAAA9AAAAkQAAADwAAAA9AAAAkgAAADwAAAA9AAAAkwAAADoAAAA7AAAAkwBBzIQBCw2WAAAAPAAAAD0AAACMAEHkhAEL2QKXAAAAPgAAAD8AAACXAAAAQAAAAEEAAACXAAAAQgAAAEMAAACXAAAARAAAAEUAAACYAAAAQAAAAEEAAACZAAAARgAAAEcAAACaAAAASAAAAAAAAACbAAAASQAAAAAAAACcAAAASQAAAAAAAACdAAAASgAAAEsAAACeAAAASg
 
AAAEsAAACfAAAASgAAAEsAAACgAAAASgAAAEsAAAChAAAASgAAAEsAAACiAAAASgAAAEsAAACjAAAASgAAAEsAAACkAAAASgAAAEsAAAClAAAASgAAAEsAAACmAAAASgAAAEsAAACnAAAATAAAAE0AAACoAAAATAAAAE0AAACpAAAATAAAAE0AAACqAAAATAAAAE0AAACrAAAATgAAAE8AAACsAAAATgAAAE8AAACtAAAAUAAAAFEAAACuAAAAUAAAAFEAAACvAAAAUgAAAFMAAACwAAAAVAAAAFUAQcyHAQsBVgBB3IcBCw1XAAAAAAAAAFgAAABZAEGIiAELAVoAQZSIAQsJWwAAAFwAAABdAEGwiAEL0wKRJgAA4AAAANMJAAD4AAAAwA4AADAAAACJIgAAEAAAAIgqAABYAAAAjAAAAF4AAABfAAAAYAAAAGEAAABiAAAAYwAAAGQAAABlAAAAZgAAAABTAADAUwAAcFQAAMBUAAAAVQAAIFUAAAwLBQQCAgAAsgAAAGcAAABoAAAAswAAAGkAAABqAAAAtAAAAGkAAABqAAAAtQAAAEAAAABBAAAAtgAAAGsAAABsAAAAtwAAAGsAAABsAAAALwAAAG0AAABuAAAAuAAAAEAAAABBAAAAuQAAAG8AAABwAAAAAAAAAKsVAADcFQAA5xUAAJ8VAADSFQAA9hUAALUVAADDFQAAY29weVdpdGhpbgBlbnRyaWVzAGZpbGwAZmluZABmaW5kSW5kZXgAZmxhdABmbGF0TWFwAGluY2x1ZGVzAGtleXMAdmFsdWVzAAAAAAABAQICAgMAQZCLAQuVKG51bGwAZmFsc2UAdHJ1ZQBpZgBlbHNlAHJldHVybgB2YXIAdGhpcwBkZWxldGUAdm9pZAB0eXBlb2YAbmV3AGluAGluc3RhbmNlb2YAZG8Ad2hpbGUAZm9yAGJyZWFrAGNvbnRpbnVlAHN3aXRjaABjYXNlAGRlZmF
 
1bHQAdGhyb3cAdHJ5AGNhdGNoAGZpbmFsbHkAZnVuY3Rpb24AZGVidWdnZXIAd2l0aABjbGFzcwBjb25zdABlbnVtAGV4cG9ydABleHRlbmRzAGltcG9ydABzdXBlcgBpbXBsZW1lbnRzAGludGVyZmFjZQBsZXQAcGFja2FnZQBwcml2YXRlAHByb3RlY3RlZABwdWJsaWMAc3RhdGljAHlpZWxkAGF3YWl0AABsZW5ndGgAZmlsZU5hbWUAbGluZU51bWJlcgBtZXNzYWdlAGVycm9ycwBzdGFjawBuYW1lAHRvU3RyaW5nAHRvTG9jYWxlU3RyaW5nAHZhbHVlT2YAZXZhbABwcm90b3R5cGUAY29uc3RydWN0b3IAY29uZmlndXJhYmxlAHdyaXRhYmxlAGVudW1lcmFibGUAdmFsdWUAZ2V0AHNldABvZgBfX3Byb3RvX18AdW5kZWZpbmVkAG51bWJlcgBib29sZWFuAHN0cmluZwBvYmplY3QAc3ltYm9sAGludGVnZXIAdW5rbm93bgBhcmd1bWVudHMAY2FsbGVlAGNhbGxlcgA8ZXZhbD4APHJldD4APHZhcj4APGFyZ192YXI+ADx3aXRoPgBsYXN0SW5kZXgAdGFyZ2V0AGluZGV4AGlucHV0AGRlZmluZVByb3BlcnRpZXMAYXBwbHkAam9pbgBjb25jYXQAc3BsaXQAY29uc3RydWN0AGdldFByb3RvdHlwZU9mAHNldFByb3RvdHlwZU9mAGlzRXh0ZW5zaWJsZQBwcmV2ZW50RXh0ZW5zaW9ucwBoYXMAZGVsZXRlUHJvcGVydHkAZGVmaW5lUHJvcGVydHkAZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yAG93bktleXMAYWRkAGRvbmUAbmV4dAB2YWx1ZXMAc291cmNlAGZsYWdzAGdsb2JhbAB1bmljb2RlAHJhdwBuZXcudGFyZ2V0AHRoaXMuYWN0
 
aXZlX2Z1bmMAPGhvbWVfb2JqZWN0PgA8Y29tcHV0ZWRfZmllbGQ+ADxzdGF0aWNfY29tcHV0ZWRfZmllbGQ+ADxjbGFzc19maWVsZHNfaW5pdD4APGJyYW5kPgAjY29uc3RydWN0b3IAYXMAZnJvbQBtZXRhACpkZWZhdWx0KgAqAE1vZHVsZQB0aGVuAHJlc29sdmUAcmVqZWN0AHByb21pc2UAcHJveHkAcmV2b2tlAGFzeW5jAGV4ZWMAZ3JvdXBzAHN0YXR1cwByZWFzb24AZ2xvYmFsVGhpcwB0b0pTT04AT2JqZWN0AEFycmF5AEVycm9yAE51bWJlcgBTdHJpbmcAQm9vbGVhbgBTeW1ib2wAQXJndW1lbnRzAE1hdGgASlNPTgBEYXRlAEZ1bmN0aW9uAEdlbmVyYXRvckZ1bmN0aW9uAEZvckluSXRlcmF0b3IAUmVnRXhwAEFycmF5QnVmZmVyAFNoYXJlZEFycmF5QnVmZmVyAFVpbnQ4Q2xhbXBlZEFycmF5AEludDhBcnJheQBVaW50OEFycmF5AEludDE2QXJyYXkAVWludDE2QXJyYXkASW50MzJBcnJheQBVaW50MzJBcnJheQBGbG9hdDMyQXJyYXkARmxvYXQ2NEFycmF5AERhdGFWaWV3AE1hcABTZXQAV2Vha01hcABXZWFrU2V0AE1hcCBJdGVyYXRvcgBTZXQgSXRlcmF0b3IAQXJyYXkgSXRlcmF0b3IAU3RyaW5nIEl0ZXJhdG9yAFJlZ0V4cCBTdHJpbmcgSXRlcmF0b3IAR2VuZXJhdG9yAFByb3h5AFByb21pc2UAUHJvbWlzZVJlc29sdmVGdW5jdGlvbgBQcm9taXNlUmVqZWN0RnVuY3Rpb24AQXN5bmNGdW5jdGlvbgBBc3luY0Z1bmN0aW9uUmVzb2x2ZQBBc3luY0Z1bmN0aW9uUmVqZWN0AEFzeW5jR2VuZXJhdG9yRnVuY3Rpb
 
24AQXN5bmNHZW5lcmF0b3IARXZhbEVycm9yAFJhbmdlRXJyb3IAUmVmZXJlbmNlRXJyb3IAU3ludGF4RXJyb3IAVHlwZUVycm9yAFVSSUVycm9yAEludGVybmFsRXJyb3IAPGJyYW5kPgBTeW1ib2wudG9QcmltaXRpdmUAU3ltYm9sLml0ZXJhdG9yAFN5bWJvbC5tYXRjaABTeW1ib2wubWF0Y2hBbGwAU3ltYm9sLnJlcGxhY2UAU3ltYm9sLnNlYXJjaABTeW1ib2wuc3BsaXQAU3ltYm9sLnRvU3RyaW5nVGFnAFN5bWJvbC5pc0NvbmNhdFNwcmVhZGFibGUAU3ltYm9sLmhhc0luc3RhbmNlAFN5bWJvbC5zcGVjaWVzAFN5bWJvbC51bnNjb3BhYmxlcwBTeW1ib2wuYXN5bmNJdGVyYXRvcgAAAAAAAQAAAAUAARQFAAEVBQABFQUAARcFAAEXAQABAAEAAQABAAEAAQABAAEAAQABAAEAAgABBQMAAQoBAQAAAQIBAAEDAgABAQIAAQIDAAECBAABAwYAAQIDAAEDBAABBAUAAQMDAAEEBAABBQUAAQICAAEEBAABAwMAAQMDAAEEBAABBQUAAwIBDQMBAQ0DAQANAwIBDQMCAA0DAAENAwMBCgEBAAABAAAAAQECAAEAAAABAgIAAQIAAAEBAAABAQAABgAAGAUBAQ8DAgEKAQIBAAEBAQABAQEABQABFwUAARcFAAEXBQEAFwUBABcFAgAXAQIDAAEDAAAGAAAYBgAAGAYBABgFAQEXBQECFwUCABcBAgEAAQMAAAEDAQABAgEAAQICAAEDAAABAwEAAQQAAAUCARcFAQEXAQICAAECAQABAgIAAQMCAAEDAgACAwMFBgIBGAIDAQUGAgIYBgMDGAMAARADAQAQAwEBEAMAAREDAQARAwEBEQMAARIDAQASAwEBEgMAABADAAEQAwEAEAMBABADAAESAwEAEg
 
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
 
EBKAEBgSgBAQEpAQCBKQEAASoBAAIrAQCBLAEAgS0BAQEuAQABMAEBgTABAIExAQGBMgEBATMBAAE0AQCBNAEBATUBAYE1AQEBNgEAgTcBAYE4AQABOQEAgToBAYE+AQABQAEBAUEBAIFBAQGBQwEAAUQBAIFEAQACRQEAAUYBAAFJAQGBTgEBAU8Bc4GiAUAEuAFAArsBAIO9ATCBvwEwAcMBMAPEATABxgEwAscB0AHIATCRyAEwidEBAAHWAQCD1gHTAdgBAJHYAXMB4QEAieEBAAHmAQCC5gEwgecBcwHoAXOB6AFzgeoBcwHrAQCB6wFAGOwBcwH4AXOB+AEAAfkBAIH5AaAB+gFzgfoBQIL7ATCB/AFAAv0BMIP+ATAQAAIwIAgCACAYAgAQKAJAIjACQDZFAjABYAJAjmACAIFnAkBgaAIwppgCAKawArWBwwIxJlAIMYFjCDGBZggAK2gIAIN+CBFQ0AkQBvgJIAb8CXQBQA50gUAOdAFBDnSBQQ50AUIOdIFCDnQBQw6AgUMOgAFEDjArSA4wg14OAYG8DgGBvg4BAccOQH4AD0AYPw+1AUsPtoFLD7YBTA+2gUwPtwFND4CBTQ8wAU8PQGBQDwAIgA8wCIQPAAaIDzAGjA8ACJAPMAiUDwAImA8wCJwPAAagDzAGpA+wAagPAIGoD9MBqQ8AgakP0wGqDwCBqg/TAasPAIGrDzCBrA8wga0PMIGuDzCBrw8ACLAPMAi0DwACuA8ABLkPAAK7DwECvA8BAr0PAQK+D7cIwA9nCMQPuAjID2gIzA+4CNAPaAjUDwAC2A+5AdkPsYHZD7kB2g+xAdsP14HbDzAC3A8wAt0PYQHeD3MB3w+5AeEPsoHhD7oB4g+yAeMP2IHjDzAE5A9iAeYPAALoD9AB6Q/QgekPsAHrD9CB6w8wAuwPMALtDwEC8A/TAfEP04HxD7oB8g8BgfIPsAHzD9OB8w8wAvQPMAL1DzEB9g+
 
6AfkPsoH5D7sB+g+yAfsP2YH7DzAC/A8wAv0PYgH+D6ABkxCgAZUQoIGVEDEBmRABAacQMRCwEAEQuBBAgsEQMRpbEgEaaBIxLwAWAS8YFkACMBYwATEWMIExFjABMhYAgTIWAAEzFkCGMxYwgTYWMAE3FjCBNxYwATgWQAI5FkCCOhYwAj8WQGRAFkCEdRZAAnkWACaAFgCBkxYAgZYWQC4gU0AcQFNADpFTQD6ZU0CEvFMwgb5TQAq/U0CCxVMwgcZTQATIUwEBylNAFMtTMAHVUzCB1VMwAdZTMIHWUzAB11MwAdhTMIHYUzAB2VMxgdlTQAzaU0AC4VMxAeJTMIHiUzAB41NAhONTQIL6UwGBqVUgULhVsgGAfbKBgH2yAYF92oGBfdoBgn2zgYJ9swGDfbuBiX27AYp9u4GKfbwBi327gYt9MZqQfwGaoH8xKACCASgUgjEkWIIBJGyCMTNAhgEzYIYxIFCMASBgjDEgILcBIDC3MSKA9AEikfQAQYDtAQvjAwEAnAYHTQMEEACPCwAAEQAIAFNKUQBSAFMAOlRVAFdZP11cAEZhY0JkAGYAaABqAGwAbgAAQAAAAAAaAJMAACA1ACcAIQAkIioAE2ttACYkJxQWGBscPh4/Hzk9IiFBHkAlJSYoICpJLEMuSzBMMkRCmQAAlY99foOEEoCCdncSe6N8eHmKkpimoIUAmqGTdTOVAI4AdJmYl5YAAJ4AnAChoBUuLzC0tU6qqRIUHiEiIio0NaanNh9KAACXAVraHTYFAMTDxsXIx8rJzMvE1UXWQtdG2M7Q0tTa2e72/g4HD4CfACGAo+0AwEDGYOfb5pnAAAAGYNwp/RUSBhb43QYVEoQIxhb/3wPAQABGYN7gbTc4ORUUFxYAGhkcGwBft2VERwBPYk5QAABIAAAAo6SlAAAAAAC2AABaAEgAW1ZYYF5waW9NAAA7Z7gAAEWoiouMq6xYWK+UsG+yXFteXWBfYmFk
 
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
 
dG9saWFuX0hpZXJvZ2x5cGhzLEhsdXcAQXJhYmljLEFyYWIAQXJtZW5pYW4sQXJtbgBBdmVzdGFuLEF2c3QAQmFsaW5lc2UsQmFsaQBCYW11bSxCYW11AEJhc3NhX1ZhaCxCYXNzAEJhdGFrLEJhdGsAQmVuZ2FsaSxCZW5nAEJoYWlrc3VraSxCaGtzAEJvcG9tb2ZvLEJvcG8AQnJhaG1pLEJyYWgAQnJhaWxsZSxCcmFpAEJ1Z2luZXNlLEJ1Z2kAQnVoaWQsQnVoZABDYW5hZGlhbl9BYm9yaWdpbmFsLENhbnMAQ2FyaWFuLENhcmkAQ2F1Y2FzaWFuX0FsYmFuaWFuLEFnaGIAQ2hha21hLENha20AQ2hhbSxDaGFtAENoZXJva2VlLENoZXIAQ2hvcmFzbWlhbixDaHJzAENvbW1vbixaeXl5AENvcHRpYyxDb3B0LFFhYWMAQ3VuZWlmb3JtLFhzdXgAQ3lwcmlvdCxDcHJ0AEN5cmlsbGljLEN5cmwARGVzZXJldCxEc3J0AERldmFuYWdhcmksRGV2YQBEaXZlc19Ba3VydSxEaWFrAERvZ3JhLERvZ3IARHVwbG95YW4sRHVwbABFZ3lwdGlhbl9IaWVyb2dseXBocyxFZ3lwAEVsYmFzYW4sRWxiYQBFbHltYWljLEVseW0ARXRoaW9waWMsRXRoaQBHZW9yZ2lhbixHZW9yAEdsYWdvbGl0aWMsR2xhZwBHb3RoaWMsR290aABHcmFudGhhLEdyYW4AR3JlZWssR3JlawBHdWphcmF0aSxHdWpyAEd1bmphbGFfR29uZGksR29uZwBHdXJtdWtoaSxHdXJ1AEhhbixIYW5pAEhhbmd1bCxIYW5nAEhhbmlmaV9Sb2hpbmd5YSxSb2hnAEhhbnVub28sSGFubwBIYXRyYW4sSGF0cgBIZWJyZXcsSGVicgBIaXJhZ2FuYSxIaXJhAEltcGVyaWFsX0FyYW1ha
 
WMsQXJtaQBJbmhlcml0ZWQsWmluaCxRYWFpAEluc2NyaXB0aW9uYWxfUGFobGF2aSxQaGxpAEluc2NyaXB0aW9uYWxfUGFydGhpYW4sUHJ0aQBKYXZhbmVzZSxKYXZhAEthaXRoaSxLdGhpAEthbm5hZGEsS25kYQBLYXRha2FuYSxLYW5hAEtheWFoX0xpLEthbGkAS2hhcm9zaHRoaSxLaGFyAEtobWVyLEtobXIAS2hvamtpLEtob2oAS2hpdGFuX1NtYWxsX1NjcmlwdCxLaXRzAEtodWRhd2FkaSxTaW5kAExhbyxMYW9vAExhdGluLExhdG4ATGVwY2hhLExlcGMATGltYnUsTGltYgBMaW5lYXJfQSxMaW5hAExpbmVhcl9CLExpbmIATGlzdSxMaXN1AEx5Y2lhbixMeWNpAEx5ZGlhbixMeWRpAE1ha2FzYXIsTWFrYQBNYWhhamFuaSxNYWhqAE1hbGF5YWxhbSxNbHltAE1hbmRhaWMsTWFuZABNYW5pY2hhZWFuLE1hbmkATWFyY2hlbixNYXJjAE1hc2FyYW1fR29uZGksR29ubQBNZWRlZmFpZHJpbixNZWRmAE1lZXRlaV9NYXllayxNdGVpAE1lbmRlX0tpa2FrdWksTWVuZABNZXJvaXRpY19DdXJzaXZlLE1lcmMATWVyb2l0aWNfSGllcm9nbHlwaHMsTWVybwBNaWFvLFBscmQATW9kaSxNb2RpAE1vbmdvbGlhbixNb25nAE1ybyxNcm9vAE11bHRhbmksTXVsdABNeWFubWFyLE15bXIATmFiYXRhZWFuLE5iYXQATmFuZGluYWdhcmksTmFuZABOZXdfVGFpX0x1ZSxUYWx1AE5ld2EsTmV3YQBOa28sTmtvbwBOdXNodSxOc2h1AE55aWFrZW5nX1B1YWNodWVfSG1vbmcsSG1ucABPZ2hhbSxPZ2FtAE9sX0NoaWtpLE9sY2sAT2xkX0h1bm
 
dhcmlhbixIdW5nAE9sZF9JdGFsaWMsSXRhbABPbGRfTm9ydGhfQXJhYmlhbixOYXJiAE9sZF9QZXJtaWMsUGVybQBPbGRfUGVyc2lhbixYcGVvAE9sZF9Tb2dkaWFuLFNvZ28AT2xkX1NvdXRoX0FyYWJpYW4sU2FyYgBPbGRfVHVya2ljLE9ya2gAT3JpeWEsT3J5YQBPc2FnZSxPc2dlAE9zbWFueWEsT3NtYQBQYWhhd2hfSG1vbmcsSG1uZwBQYWxteXJlbmUsUGFsbQBQYXVfQ2luX0hhdSxQYXVjAFBoYWdzX1BhLFBoYWcAUGhvZW5pY2lhbixQaG54AFBzYWx0ZXJfUGFobGF2aSxQaGxwAFJlamFuZyxSam5nAFJ1bmljLFJ1bnIAU2FtYXJpdGFuLFNhbXIAU2F1cmFzaHRyYSxTYXVyAFNoYXJhZGEsU2hyZABTaGF2aWFuLFNoYXcAU2lkZGhhbSxTaWRkAFNpZ25Xcml0aW5nLFNnbncAU2luaGFsYSxTaW5oAFNvZ2RpYW4sU29nZABTb3JhX1NvbXBlbmcsU29yYQBTb3lvbWJvLFNveW8AU3VuZGFuZXNlLFN1bmQAU3lsb3RpX05hZ3JpLFN5bG8AU3lyaWFjLFN5cmMAVGFnYWxvZyxUZ2xnAFRhZ2JhbndhLFRhZ2IAVGFpX0xlLFRhbGUAVGFpX1RoYW0sTGFuYQBUYWlfVmlldCxUYXZ0AFRha3JpLFRha3IAVGFtaWwsVGFtbABUYW5ndXQsVGFuZwBUZWx1Z3UsVGVsdQBUaGFhbmEsVGhhYQBUaGFpLFRoYWkAVGliZXRhbixUaWJ0AFRpZmluYWdoLFRmbmcAVGlyaHV0YSxUaXJoAFVnYXJpdGljLFVnYXIAVmFpLFZhaWkAV2FuY2hvLFdjaG8AV2FyYW5nX0NpdGksV2FyYQBZZXppZGksWWV6aQBZaSxZaWlpAFphbmFiYXphcl9TcXV
 
hcmUsWmFuYgBBkJkCC7EUwBmZRYUZmUWuGYBFjhmARYQZlkWAGZ5FgBnhYEWmGYRFhBmBDZMZ4A83gyuAGYIrAYMrgBmAKwOAK4AZgCuAGYIrAIArAJMrAL4rjRqPK+AkHYE34EgdAKUFAbEFAYIFALY0B5o0A4U0CoQEgBmFBIAZjQSAGYAEAIAEgBmfBIAZiQSKN5kEgDfgCwSAGaEEjYcAu4cBgoevBLGRDbpjAYJjrXsBjnsAm1ABgFAAioc0lAQAkQQKjgSAGZwE0B+DN44fgRmZH4MLAIcLAYELAZULAIYLAIALAoMLAYgLAYELAYMLB4ALA4ELAIQLAZgLAYIuAIUuA4EuAZUuAIYuAIEuAIEuAIEuAYAuAIQuA4EuAYIuAoAuBoMuAIAuBpAuCYIsAIgsAIIsAJUsAIYsAIEsAIQsAYksAIIsAIIsAYAsDoMsAYssBoYsAIJwAIdwAYFwAZVwAIZwAIFwAIRwAYhwAYFwAYJwBoJwA4FwAIRwAZFwCYGOAIWOAoKOAIOOAoGOAICOAIGOAoGOAoKOAouOA4SOAoKOAIOOAYCOBYCODZSOBIyQAIKQAJaQAI+QAoeQAIKQAIOQBoGQAIKQBIOQAYmQBoiQjDwAgjwAljwAiTwAhDwBiDwAgjwAgzwGgTwGgDwAgzwBiTwAgTwMjE8Agk8Ask8Agk8AhU8Dj08BmU8AgoEAkYECl4EAiIEAgIEBhoECgIEDhYEAgIEAh4EFiYEBgoELuZIDgBmbkiSBRACARACERACXRACARACWRAGERACARACFRAGJRAGDRB/HkwCjkwOmkwCjkwCOkwCGk4MZgZMk4D9epScAgCcEgCcBqieAGYMn4J8wyCYAgyYBhiYAgCYAgyYBqCYAgyYBoCYAgyYBhiYAgCYAgyYBjiYAuCYAgyYBwiYBnyYCmSYF1RcBhRcB4h8SnGYCynqCGYp6BoyIAIaICpQygRkIkxELjIkAgokAgYkL
 
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
 
dWF0aW9uAFBkLERhc2hfUHVuY3R1YXRpb24AUHMsT3Blbl9QdW5jdHVhdGlvbgBQZSxDbG9zZV9QdW5jdHVhdGlvbgBQaSxJbml0aWFsX1B1bmN0dWF0aW9uAFBmLEZpbmFsX1B1bmN0dWF0aW9uAFBvLE90aGVyX1B1bmN0dWF0aW9uAFpzLFNwYWNlX1NlcGFyYXRvcgBabCxMaW5lX1NlcGFyYXRvcgBacCxQYXJhZ3JhcGhfU2VwYXJhdG9yAENjLENvbnRyb2wsY250cmwAQ2YsRm9ybWF0AENzLFN1cnJvZ2F0ZQBDbyxQcml2YXRlX1VzZQBMQyxDYXNlZF9MZXR0ZXIATCxMZXR0ZXIATSxNYXJrLENvbWJpbmluZ19NYXJrAE4sTnVtYmVyAFMsU3ltYm9sAFAsUHVuY3R1YXRpb24scHVuY3QAWixTZXBhcmF0b3IAQyxPdGhlcgBBkLkCC7AIDgAAAD4AAADAAQAAAA4AAADwAAAAAH8AAACAAwEAADxBU0NJSV9IZXhfRGlnaXQsQUhleABCaWRpX0NvbnRyb2wsQmlkaV9DAERhc2gARGVwcmVjYXRlZCxEZXAARGlhY3JpdGljLERpYQBFeHRlbmRlcixFeHQASGV4X0RpZ2l0LEhleABJRFNfQmluYXJ5X09wZXJhdG9yLElEU0IASURTX1RyaW5hcnlfT3BlcmF0b3IsSURTVABJZGVvZ3JhcGhpYyxJZGVvAEpvaW5fQ29udHJvbCxKb2luX0MATG9naWNhbF9PcmRlcl9FeGNlcHRpb24sTE9FAE5vbmNoYXJhY3Rlcl9Db2RlX1BvaW50LE5DaGFyAFBhdHRlcm5fU3ludGF4LFBhdF9TeW4AUGF0dGVybl9XaGl0ZV9TcGFjZSxQYXRfV1MAUXVvdGF0aW9uX01hcmssUU1hcmsAUmFkaWNhbABSZWdpb25hbF9JbmRpY2F0b3IsUkkAU2VudGVuY
 
2VfVGVybWluYWwsU1Rlcm0AU29mdF9Eb3R0ZWQsU0QAVGVybWluYWxfUHVuY3R1YXRpb24sVGVybQBVbmlmaWVkX0lkZW9ncmFwaCxVSWRlbwBWYXJpYXRpb25fU2VsZWN0b3IsVlMAV2hpdGVfU3BhY2Usc3BhY2UAQmlkaV9NaXJyb3JlZCxCaWRpX00ARW1vamkARW1vamlfQ29tcG9uZW50LEVDb21wAEVtb2ppX01vZGlmaWVyLEVNb2QARW1vamlfTW9kaWZpZXJfQmFzZSxFQmFzZQBFbW9qaV9QcmVzZW50YXRpb24sRVByZXMARXh0ZW5kZWRfUGljdG9ncmFwaGljLEV4dFBpY3QARGVmYXVsdF9JZ25vcmFibGVfQ29kZV9Qb2ludCxESQBJRF9TdGFydCxJRFMAQ2FzZV9JZ25vcmFibGUsQ0kAQVNDSUkAQWxwaGFiZXRpYyxBbHBoYQBBbnkAQXNzaWduZWQAQ2FzZWQAQ2hhbmdlc19XaGVuX0Nhc2Vmb2xkZWQsQ1dDRgBDaGFuZ2VzX1doZW5fQ2FzZW1hcHBlZCxDV0NNAENoYW5nZXNfV2hlbl9Mb3dlcmNhc2VkLENXTABDaGFuZ2VzX1doZW5fTkZLQ19DYXNlZm9sZGVkLENXS0NGAENoYW5nZXNfV2hlbl9UaXRsZWNhc2VkLENXVABDaGFuZ2VzX1doZW5fVXBwZXJjYXNlZCxDV1UAR3JhcGhlbWVfQmFzZSxHcl9CYXNlAEdyYXBoZW1lX0V4dGVuZCxHcl9FeHQASURfQ29udGludWUsSURDAExvd2VyY2FzZSxMb3dlcgBNYXRoAFVwcGVyY2FzZSxVcHBlcgBYSURfQ29udGludWUsWElEQwBYSURfU3RhcnQsWElEUwBB0MECC7QggQAoAJcAKgCBgCoAl8ArABWBLACXAC0AgUAtAJcALgAVQS4AmQEvABYgMABCCEAAQopEAEIESg
 
CWAEwAF4FMAEICTQBCQ04AL8FPAELDUAC/QFIAQgNTAEIJVQBCCFoAlgBeAEJDXgCBwF8AQgFoAELBawCFAXEAF8NxAERIcwBEg3cAQoN5AL4CewCXQXwAQgF9AEQEfgBCDoAAQoGHAESHiQCDBKwAFwO2AIMCuAAUAtAAlgDRAIAA3QCXgN4AgIDfAJcA4QA+QeEAgMDhAL4E4gCug+oAroLyAK0B9AAuwfQAA0H1AAMD/ACBQP4APgIAAb7AAQG+AQMBvkAGAb5ADgE+AhQBvsAVAb4BFwFEgR0BREEwAUQCNAFEgTUBRIM2AUSDOAFEhjoBRAE+AYXAYQGugogBL0KdAYQBsAGEwLQBhEBKAoRATAKEAE0CLgRWAi7BcgIgAXcChMB3AoTAjAKEgI0CrkGWAoSAlwKEANICLsHSAiAB1wKEAOUCroHyAoQAEgOEADADIsExAy6BMgOugVIDhIB2A64BdwOFwIwDhcCsAy8BtwOBAMMDhMDQA4RA0wOEgNQDhMDVA4QA1wOEQNoDhMDcAy5B3QOFwN0DhADeA4VA3gOEQOADhMDkA4RA5wOEgOgDhMDpA4QA6wOEQO4DhIAJBIEAPwSEhMEGhIDEBoTBzgYgAdAGhMDQBoMDSwcfxEwHgxdPB4EAXgeD0mYHRB2AB0KJjgdEGJMHQg2fBxaCpQeFgKYHvsCmB0QNqAdEoK4HIgHAB0SDwAciAcIHRIPCByIBxAdEgsQHIgHGB0SCxgc+EcgHRILQByIB0gdEgtIHIgHUB0SD1Ac+TNYHgEDcB76A3AeAwNwHvgDdB4BA3Qe+gN0HgMDdB74A3geAQN4HvoDeB4DA3ge+AN8HgEDfByAI4AcgCOQHIAjoB74F7AeAwO4HvgDvB5dA7weAgO8HF8HvBz5E8AeAQPIHvoDyB4DA8ge+A/MHgMD0B66C9QeAwPYHPkP3B4DA+AeuA/kHgMD6Bz4B+wcCgfsHvoP8B4BA/ge+gP4
 
HgMD+B74A/weAQP8Hl4D/Bx4BAAiVhAAIgUAECJfABQiBAAkIl0AJCJmACQiBwAsIhcAMCLEADQiFgA0IscANCJcBDwiXwREIs8AVCIHAFwiVBRwIgcAeCBUCHwgfBSAIg4UiCBVEJQiXACoIGQFACIGAQAi/wEAIGUFBCIHAQQi/QEIILYVCCIFARQiXgEUIlUJGCJcASAiZQEgIl4BICIEASQiAgEkIgQBKCAKBSgiVBEsIH0JNCIFATgiZwE4IgwJPCJVCUQgZAVQIm4BUCBnGVAiXwFcIgQBYCJdAWAiZgFgIl8BYCIEAWQiXQFkImYBZCJvAWQiXAFoIgUBaCJeAWgiZwFoIlQJbCJdAXAiZgFwIl8BcCIEAXQiXQF0ImYBdCJvAXQiXAF4IgUBeCJeAXgiZwF4IFQJfCJlAYgg+gWYIvoBrCL5Bcwi+AIEIvkCCCL4Agwi+AYkIhQCLCLFAiwiFwIsIsQCMCL5AkAi+AJEIvsGRCL4BmAi+QpsIRAGdCEQBnghEAaAIRAGhCEQBogg+AqsIRAK4CCCCuggeQcoInwQYCSNFGgmXwBwJpQQdCStFHwmbwCEJoQQiCSVFJAmZwCYJJQ0nCR+NLQkfDTQJgYA6CbMAgwqZAJ0Kl0CdCpmAnQq+ALcKFQEfC4HAWwuBwKcLgcC8C60EwAutRMILrYTEC4PzxgstheALAx3jCy2I8QuBAAAMg4INDIQLEwyEQhkMIgEcDCLBHAwigR0MIkEeDCIBHwyEACUMI8EmDISAJwyFwCcMhAsrDIRCMQwiATQMIsE0DCKBNQwiQTYMIgE3DIQAPQwgwj0MhIA/DIXAPwwtSkwMH0VRDJ/KUwytFVkMA4dkDEEHgAyJgIMMKcGDDKlBhAyJAIUMKUGFDKnChQyJAIcMj0CHDI2AhwxBEogMAwKRDJkAlAyjRJQMI4OWDC0HmAyvhJsMocKdDLUAnwyzQJ8MhYCfDIMYoAwjQqwMI0Wt
 
DJfArwyhBLAMpUGyDJcAswyZQLMMl4CzDJnAswytF7QMhcC/DLMBwAyxwMAMswDBDDFBwQy1wMEMswDCDLFBwgwzAcMMMYHDDIUAxAyxQMQMM4HEDIUAxQy1QMUMt4DFDLXAxQyxAMYMNUHGDLPAxgyxAccMs8DHDLUAyAyzQMgMsYHIDC9CyQwxQcoMtcDKDLEAywyzQMsMtYDLDLHAywwvAcwMtYDMDLPAzAy1AM0MsUDNDLWAzQyFwM0MsQLODLNAzwyxgM8MhcDPDLEB0AyzwNAMsQHRDLXA0QyzANIMhUDSDLWA0gyFwNIMMwHTDLGB0wyzQNQMhYDUDLHA1AyzANUMhUDVDLWA1QyxwNUMIQXWDCWF2AylAtsMmUDcDBeB3AyZAN0Ml0HdDCcB3gyFgt4MicDfDD8E4AyZAOIMm0DiDL+D4gwZQuQMBULlDD9D5gwxwecMhUDoDLGB6AyFQOkMB4HpDIkA6gyXQOoMGYLqDJ2A6wyNwOsMPwjsDAUB8AybgPAMl8HwDJuA8QyZwPEMFwXyDJmA9AwXwfQMGUH1DJfA9QybAPYMmUD2DBeC9gwZgfcMoQT4DCVF+gwlxfwMJUH/DJnA/wwDAacpgQDcKQMB/ikDAtcqgUDaKoIUQD6Cf0o+gj9qPgKhij4QAZs+gi+cPpDFsz6XAcA+GcHAPj9BwT6vwsQ+hEHHPq0EyD6BQMo+BIPKPqADzD6gAs4+hIDPPiAB0D4gwdA+roTRPoXA0z4tMdQ+rcv0Pi+J+j4tAv8+Ly8AP6WCFz+xwBg/rwcZP6//HD+lgTw/r2Q9PzEgVD8xm2Q/MQF8P7ODfD+xQH4/vYB+P7vAfj+zAH8/AwWEP60BjD8Vw4w/LUaOPwPMkT+Vxpc/rwGcP4UAnT8vhZ0/rTqgPy9EvT8fb8A/H8HXP61f2D+BAOg/H0/oPx+D8D8fg/I/H4P0P5+B9j+DB/g/koEmRJLAKkQSgUtEEsHSRBLCL
 
kUSgW5FkgBORpKDV3QSw250Hw0AdR+NBnUfDQ11n4MTdR+JFXUfDRp1H40gdRUQJ3WfQy91n0UxdR8NNHUfjTp1lQNBdR9EQ3Wfg0V1H41HdZUHTnWfg1J1H41UdR8NW3UfjWF1Hw1odR+NbnUfDXV1H417dR8NgnUfjYh1Hw2PdR+NlXUfDZx1H42idQMBqXWfCKp1gUCudZ+DrnWBQLB1n4ywdYHAtnUtA7d1n4i4dYHAvHWfA711gcC+dZ8Mv3WBQMV1LYPFdZ8Ix3WBQMt1n4PLdYFAzXWfjM11gcDTdS0D1HWfiNV1gcDZdZ8D2nWBwNt1nwzcdYFA4nUtg+J1nwjkdYFA6HWfg+h1gUDqdZ+M6nWBwPB1LQTxdR+F83UfBfZ1H4X4dR8F+3Ufhf11LQKAe61NgXsDQoh7gcCJey1FinsDBI17gYCQewPckXstBaB7rciie4NEqHutyKp7lwBAfCFFQHwlDUR8h4BKfBXBSnwXQUt8Hw1MfBeCUnyZgFN8l8BTfJeBWnyXAGR8LwGAfIGAgHwDFoR8wQSQfAMBlHwfBfx+rAEAvhDRAL6sRwm+EDkNviyHKb4sAi2+kDcuvpD/Sb4QvGm+AAAAAAAAAAAgAAAAYQACAAQABgC8AwgACgAMABUAlQClALkAwQDDAMcAywDRANcA3QDgAOYA+AAIAQoBcwAQARIBFAEgASwBRAFNAVMBYgFoAWoBdgGSAZQBqQG7AccB0QHVAbkC1wE7ANkB2wG3AOEB/AEMAhgCHQIjAicCowMzAj8CQgJLAk4CUQJdAmACaQJsAm8CdQJ4AoECigKcAp8CowKvArkCxQLJAs0C0QLVAucC7QLxAvUC+QL9AgUDCQMNAxMDFwMbAyMDJwMrAy8DNQM9A0EDSQNNA1EDCw9XA1sDXwNjA2cDawNvA3MDeQN9A4EDhQOJA40DkQOVA5kDnQOhA9wQpQPJA80D2QPdA+ED7wPxAz0ETwSZBP
 
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";if(!S(U)){var
 ia=U;U=b.locateFile?b.locateFile(ia,t):t+ia;}function ja(){var a=U;try{if(a==U&&v)return new 
Uint8Array(v);if(S(a))try{var c=ka(a.slice(37)),d=new Uint8Array(c.length);for(a=0;a<c.length
 ;++a)d[a]=c.charCodeAt(a);var e=d;}catch(g){throw Error("Converting base64 string to bytes failed.");}else 
e=void 0;var f=e;if(f)return f;throw"both async and sync fetching of the wasm 
failed";}catch(g){x(g);}}function la(){return v||"function"!==typeof 
fetch?Promise.resolve().then(function(){return 
ja();}):fetch(U,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file 
at '"+U+"'";return a.arrayBuffer();}).catch(function(){return ja();});}function V(a){for(;0<a.length;){var 
c=a.shift();if("function"==typeof c)c(b);else{var d=c.B;"number"===typeof d?void 
0===c.A?O.get(d)():O.get(d)(c.A):d(void 0===c.A?null:c.A);}}}function W(a){var 
c=K(a)+1,d=M(c);C(a,D,d,c);return d;}function ma(){}var na=[null,[],[]];function oa(){function 
a(k){return(k=k.toTimeString().match(/\(([A-Za-z ]+)\)$/))?k[1]:"GMT";}var c=new Date().getFullYear(),d=new 
Date(c,0,1),e=new Date(c,6,1);c=d.getTimezoneOffset();var 
f=e.getTimezoneOffset(),g=Math.max(c,f);N[pa()>>2]=60*g;N[q
 
a()>>2]=Number(c!=f);d=a(d);e=a(e);d=L(d);e=L(e);f<c?(N[X()>>2]=d,N[X()+4>>2]=e):(N[X()>>2]=e,N[X()+4>>2]=d);}var
 ra;ma=(a,c,d)=>{a=H(a);c=null!==c?JSON.parse(H(c)):[];try{const e=b.externalCall(a,c);return 
e?W(e):null;}catch(e){return b.HEAPU8[d]=1,W(e.message);}};var ka="function"===typeof 
atob?atob:function(a){var c="",d=0;a=a.replace(/[^A-Za-z0-9\+\/=]/g,"");do{var 
e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));var 
f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));var 
g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));var 
k="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));e=e<<2|f>>4;f=(f&15)<<4|g>>2;var
 
m=(g&3)<<6|k;c+=String.fromCharCode(e);64!==g&&(c+=String.fromCharCode(f));64!==k&&(c+=String.fromCharCode(m));}while(d<a.length);return
 c;},sa={a:function(a,c,d,e){x("Assertion failed: "+H(a)+", at: "+[c?H(c
 ):"unknown filename",d,e?H(e):"unknown function"]);},b:function(){x("");},g:ma,f:function(a,c){a=H(a);let 
d;try{d=window.JSON.parse(a);}catch(e){d=a;}0!==c?window.alert(a):window.console.log("DUMP",d);},e:function(a){var
 c=D.length;a>>>=0;if(2147483648<a)return!1;for(var d=1;4>=d;d*=2){var 
e=c*(1+.2/d);e=Math.min(e,a+100663296);e=Math.max(a,e);0<e%65536&&(e+=65536-e%65536);a:{try{y.grow(Math.min(2147483648,e)-ba.byteLength+65535>>>16);ca();var
 f=1;break a;}catch(g){}f=void 0;}if(f)return!0;}return!1;},d:function(a,c,d,e){for(var f=0,g=0;g<d;g++){var 
k=N[c>>2],m=N[c+4>>2];c+=8;for(var w=0;w<m;w++){var 
l=D[k+w],p=na[a];0===l||10===l?((1===a?aa:u)(J(p,0)),p.length=0):p.push(l);}f+=m;}N[e>>2]=f;return 
0;},c:function(a){var c=Date.now();N[a>>2]=c/1E3|0;N[a+4>>2]=c%1E3*1E3|0;return 
0;},h:function(a,c){ra||(ra=!0,oa());a=new 
Date(1E3*N[a>>2]);N[c>>2]=a.getSeconds();N[c+4>>2]=a.getMinutes();N[c+8>>2]=a.getHours();N[c+12>>2]=a.getDate();N[c+16>>2]=a.getMonth();N[c+20>>2]=a.getFullYear()-1900
 ;N[c+24>>2]=a.getDay();var d=new 
Date(a.getFullYear(),0,1);N[c+28>>2]=(a.getTime()-d.getTime())/864E5|0;N[c+36>>2]=-(60*a.getTimezoneOffset());var
 e=new 
Date(a.getFullYear(),6,1).getTimezoneOffset();d=d.getTimezoneOffset();a=(e!=d&&a.getTimezoneOffset()==Math.min(d,e))|0;N[c+32>>2]=a;a=N[X()+(a?4:0)>>2];N[c+40>>2]=a;return
 c;},i:function(a){a=H(a);window.console.log(a);},j:function(a,c,d,e){a=H(a);c=H(c);d=H(d);d=`Quickjs -- 
${a}: ${c}\n${d}`;0!==e?window.alert(d):window.console.error(d);}};(function(){function 
a(f){b.asm=f.exports;y=b.asm.k;ca();O=b.asm.t;ea.unshift(b.asm.l);P--;b.monitorRunDependencies&&b.monitorRunDependencies(P);0==P&&(null!==Q&&(clearInterval(Q),Q=null),R&&(f=R,R=null,f()));}function
 c(f){a(f.instance);}function d(f){return la().then(function(g){return 
WebAssembly.instantiate(g,e);}).then(function(g){return g;}).then(f,function(g){u("failed to asynchronously 
prepare wasm: "+g);x(g);});}var e={a:sa};P++;b.monitorRunDependencies&&b.monitorRunDependencies(P);if(b.
 instantiateWasm)try{return b.instantiateWasm(e,a);}catch(f){return u("Module.instantiateWasm callback failed 
with error: "+f),!1;}(function(){return v||"function"!==typeof 
WebAssembly.instantiateStreaming||S(U)||"function"!==typeof 
fetch?d(c):fetch(U,{credentials:"same-origin"}).then(function(f){return 
WebAssembly.instantiateStreaming(f,e).then(c,function(g){u("wasm streaming compile failed: "+g);u("falling 
back to ArrayBuffer instantiation");return 
d(c);});});})().catch(q);return{};})();b.___wasm_call_ctors=function(){return(b.___wasm_call_ctors=b.asm.l).apply(null,arguments);};b._evalInSandbox=function(){return(b._evalInSandbox=b.asm.m).apply(null,arguments);};b._nukeSandbox=function(){return(b._nukeSandbox=b.asm.n).apply(null,arguments);};b._init=function(){return(b._init=b.asm.o).apply(null,arguments);};b._commFun=function(){return(b._commFun=b.asm.p).apply(null,arguments);};b._dumpMemoryUse=function(){return(b._dumpMemoryUse=b.asm.q).apply(null,arguments);};var
 M=b._malloc=func
 
tion(){return(M=b._malloc=b.asm.r).apply(null,arguments);};b._free=function(){return(b._free=b.asm.s).apply(null,arguments);};var
 
X=b.__get_tzname=function(){return(X=b.__get_tzname=b.asm.u).apply(null,arguments);},qa=b.__get_daylight=function(){return(qa=b.__get_daylight=b.asm.v).apply(null,arguments);},pa=b.__get_timezone=function(){return(pa=b.__get_timezone=b.asm.w).apply(null,arguments);},F=b.stackSave=function(){return(F=b.stackSave=b.asm.x).apply(null,arguments);},G=b.stackRestore=function(){return(G=b.stackRestore=b.asm.y).apply(null,arguments);},B=b.stackAlloc=function(){return(B=b.stackAlloc=b.asm.z).apply(null,arguments);};b.ccall=A;b.cwrap=function(a,c,d,e){d=d||[];var
 f=d.every(function(g){return"number"===g;});return"string"!==c&&f&&!e?b["_"+a]:function(){return 
A(a,c,d,arguments,e);};};b.stringToNewUTF8=W;var Y;R=function ta(){Y||Z();Y||(R=ta);};function Z(){function 
a(){if(!Y&&(Y=!0,b.calledRun=!0,!z)){V(ea);n(b);if(b.onRuntimeInitialized)b.onRuntimeInitialized();if(
 b.postRun)for("function"==typeof b.postRun&&(b.postRun=[b.postRun]);b.postRun.length;){var 
c=b.postRun.shift();fa.unshift(c);}V(fa);}}if(!(0<P)){if(b.preRun)for("function"==typeof 
b.preRun&&(b.preRun=[b.preRun]);b.preRun.length;)ha();V(da);0<P||(b.setStatus?(b.setStatus("Running..."),setTimeout(function(){setTimeout(function(){b.setStatus("");},1);a();},1)):a());}}b.run=Z;if(b.preInit)for("function"==typeof
 b.preInit&&(b.preInit=[b.preInit]);0<b.preInit.length;)b.preInit.pop()();Z();return Module.ready;};})();var 
_default=Module;exports["default"]=_default;
 
 /***/ }),
 /* 2 */
@@ -215,8 +215,8 @@ var _pdfSandboxExternal = __w_pdfjs_require__(2);
 
 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
-const pdfjsVersion = '2.12.313';
-const pdfjsBuild = 'a2ae56f39';
+const pdfjsVersion = '2.13.216';
+const pdfjsBuild = '399a0ec60';
 
 class SandboxSupport extends _pdfSandboxExternal.SandboxSupportBase {
   exportValueToSandbox(val) {
@@ -242,7 +242,7 @@ class Sandbox {
   }
 
   create(data) {
-    const code = ['(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.scripting", [], factory);\n\telse if(typeof 
exports === \'object\')\n\t\texports["pdfjs-dist/build/pdf.scripting"] = 
factory();\n\telse\n\t\troot.pdfjsScripting = factory();\n})(this, function() {\nreturn /******/ (() => { // 
webpackBootstrap\n/******/ \t"use strict";\n/******/ \tvar __webpack_modules__ = ([\n/* 0 */,\n/* 1 */\n/***/ 
((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, 
"__esModule", ({\n  value: true\n}));\nexports.initSandbox = initSandbox;\n\nvar _constants = 
__w_pdfjs_require__(2);\n\nvar _field = __w_pdfjs_require__(3);\n\nvar _aform = 
__w_pdfjs_require__(8);\n\nvar _app = __w_pdfjs_require__(9);\n\nvar _color = __w_pdfjs_require__(5);\n\nvar 
_conso
 le = __w_pdfjs_require__(13);\n\nvar _doc = __w_pdfjs_require__(14);\n\nvar _proxy = 
__w_pdfjs_require__(16);\n\nvar _util = __w_pdfjs_require__(17);\n\nfunction initSandbox(params) {\n  delete 
globalThis.pdfjsScripting;\n  const externalCall = globalThis.callExternalFunction;\n  delete 
globalThis.callExternalFunction;\n\n  const globalEval = code => globalThis.eval(code);\n\n  const send = 
data => externalCall("send", [data]);\n\n  const proxyHandler = new _proxy.ProxyHandler();\n  const {\n    
data\n  } = params;\n  const doc = new _doc.Doc({\n    send,\n    globalEval,\n    ...data.docInfo\n  });\n  
const _document = {\n    obj: doc,\n    wrapped: new Proxy(doc, proxyHandler)\n  };\n  const app = new 
_app.App({\n    send,\n    globalEval,\n    externalCall,\n    _document,\n    calculationOrder: 
data.calculationOrder,\n    proxyHandler,\n    ...data.appInfo\n  });\n  const util = new _util.Util({\n    
externalCall\n  });\n  const appObjects = app._objects;\n\n  if (data.objects) 
 {\n    const annotations = [];\n\n    for (const [name, objs] of Object.entries(data.objects)) {\n      
annotations.length = 0;\n      let container = null;\n\n      for (const obj of objs) {\n        if (obj.type 
!== "") {\n          annotations.push(obj);\n        } else {\n          container = obj;\n        }\n      
}\n\n      let obj = container;\n\n      if (annotations.length > 0) {\n        obj = annotations[0];\n       
 obj.send = send;\n      }\n\n      obj.globalEval = globalEval;\n      obj.doc = _document;\n      
obj.fieldPath = name;\n      obj.appObjects = appObjects;\n      let field;\n\n      switch (obj.type) {\n    
    case "radiobutton":\n          {\n            const otherButtons = annotations.slice(1);\n            
field = new _field.RadioButtonField(otherButtons, obj);\n            break;\n          }\n\n        case 
"checkbox":\n          {\n            const otherButtons = annotations.slice(1);\n            field = new 
_field.CheckboxField(otherButtons, obj
 );\n            break;\n          }\n\n        case "text":\n          if (annotations.length <= 1) {\n      
      field = new _field.Field(obj);\n            break;\n          }\n\n          obj.siblings = 
annotations.map(x => x.id).slice(1);\n          field = new _field.Field(obj);\n          break;\n\n        
default:\n          field = new _field.Field(obj);\n      }\n\n      const wrapped = new Proxy(field, 
proxyHandler);\n\n      doc._addField(name, wrapped);\n\n      const _object = {\n        obj: field,\n       
 wrapped\n      };\n\n      for (const object of objs) {\n        appObjects[object.id] = _object;\n      
}\n\n      if (container) {\n        appObjects[container.id] = _object;\n      }\n    }\n  }\n\n  const 
color = new _color.Color();\n  globalThis.event = null;\n  globalThis.global = Object.create(null);\n  
globalThis.app = new Proxy(app, proxyHandler);\n  globalThis.color = new Proxy(color, proxyHandler);\n  
globalThis.console = new Proxy(new _console.Console(
 {\n    send\n  }), proxyHandler);\n  globalThis.util = new Proxy(util, proxyHandler);\n  globalThis.border = 
_constants.Border;\n  globalThis.cursor = _constants.Cursor;\n  globalThis.display = _constants.Display;\n  
globalThis.font = _constants.Font;\n  globalThis.highlight = _constants.Highlight;\n  globalThis.position = 
_constants.Position;\n  globalThis.scaleHow = _constants.ScaleHow;\n  globalThis.scaleWhen = 
_constants.ScaleWhen;\n  globalThis.style = _constants.Style;\n  globalThis.trans = _constants.Trans;\n  
globalThis.zoomtype = _constants.ZoomType;\n  globalThis.ADBE = {\n    Reader_Value_Asked: true,\n    
Viewer_Value_Asked: true\n  };\n  const aform = new _aform.AForm(doc, app, util, color);\n\n  for (const name 
of Object.getOwnPropertyNames(_aform.AForm.prototype)) {\n    if (name !== "constructor" && 
!name.startsWith("_")) {\n      globalThis[name] = aform[name].bind(aform);\n    }\n  }\n\n  for (const 
[name, value] of Object.entries(_constants.GlobalConstants)) {\n  
   Object.defineProperty(globalThis, name, {\n      value,\n      writable: false\n    });\n  }\n\n  
Object.defineProperties(globalThis, {\n    ColorConvert: {\n      value: color.convert.bind(color),\n      
writable: true\n    },\n    ColorEqual: {\n      value: color.equal.bind(color),\n      writable: true\n    
}\n  });\n  const properties = Object.create(null);\n\n  for (const name of 
Object.getOwnPropertyNames(_doc.Doc.prototype)) {\n    if (name === "constructor" || name.startsWith("_")) 
{\n      continue;\n    }\n\n    const descriptor = Object.getOwnPropertyDescriptor(_doc.Doc.prototype, 
name);\n\n    if (descriptor.get) {\n      properties[name] = {\n        get: descriptor.get.bind(doc),\n     
   set: descriptor.set.bind(doc)\n      };\n    } else {\n      properties[name] = {\n        value: 
_doc.Doc.prototype[name].bind(doc)\n      };\n    }\n  }\n\n  Object.defineProperties(globalThis, 
properties);\n  const functions = {\n    dispatchEvent: app._dispatchEvent.bind(app),\
 n    timeoutCb: app._evalCallback.bind(app)\n  };\n  return (name, args) => {\n    try {\n      
functions[name](args);\n    } catch (error) {\n      const value = `${error.toString()}\\n${error.stack}`;\n  
    send({\n        command: "error",\n        value\n      });\n    }\n  };\n}\n\n/***/ }),\n/* 2 */\n/***/ 
((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: 
true\n}));\nexports.ZoomType = exports.Trans = exports.Style = exports.ScaleWhen = exports.ScaleHow = 
exports.Position = exports.Highlight = exports.GlobalConstants = exports.Font = exports.Display = 
exports.Cursor = exports.Border = void 0;\nconst Border = Object.freeze({\n  s: "solid",\n  d: "dashed",\n  
b: "beveled",\n  i: "inset",\n  u: "underline"\n});\nexports.Border = Border;\nconst Cursor = 
Object.freeze({\n  visible: 0,\n  hidden: 1,\n  delay: 2\n});\nexports.Cursor = Cursor;\nconst Display = 
Object.freeze({\n  visible: 0,\n  hidden: 1,\n  noPrint: 2,\n  noView
 : 3\n});\nexports.Display = Display;\nconst Font = Object.freeze({\n  Times: "Times-Roman",\n  TimesB: 
"Times-Bold",\n  TimesI: "Times-Italic",\n  TimesBI: "Times-BoldItalic",\n  Helv: "Helvetica",\n  HelvB: 
"Helvetica-Bold",\n  HelvI: "Helvetica-Oblique",\n  HelvBI: "Helvetica-BoldOblique",\n  Cour: "Courier",\n  
CourB: "Courier-Bold",\n  CourI: "Courier-Oblique",\n  CourBI: "Courier-BoldOblique",\n  Symbol: "Symbol",\n  
ZapfD: "ZapfDingbats",\n  KaGo: "HeiseiKakuGo-W5-UniJIS-UCS2-H",\n  KaMi: 
"HeiseiMin-W3-UniJIS-UCS2-H"\n});\nexports.Font = Font;\nconst Highlight = Object.freeze({\n  n: "none",\n  
i: "invert",\n  p: "push",\n  o: "outline"\n});\nexports.Highlight = Highlight;\nconst Position = 
Object.freeze({\n  textOnly: 0,\n  iconOnly: 1,\n  iconTextV: 2,\n  textIconV: 3,\n  iconTextH: 4,\n  
textIconH: 5,\n  overlay: 6\n});\nexports.Position = Position;\nconst ScaleHow = Object.freeze({\n  
proportional: 0,\n  anamorphic: 1\n});\nexports.ScaleHow = ScaleHow;\nconst ScaleWhen = O
 bject.freeze({\n  always: 0,\n  never: 1,\n  tooBig: 2,\n  tooSmall: 3\n});\nexports.ScaleWhen = 
ScaleWhen;\nconst Style = Object.freeze({\n  ch: "check",\n  cr: "cross",\n  di: "diamond",\n  ci: 
"circle",\n  st: "star",\n  sq: "square"\n});\nexports.Style = Style;\nconst Trans = Object.freeze({\n  
blindsH: "BlindsHorizontal",\n  blindsV: "BlindsVertical",\n  boxI: "BoxIn",\n  boxO: "BoxOut",\n  dissolve: 
"Dissolve",\n  glitterD: "GlitterDown",\n  glitterR: "GlitterRight",\n  glitterRD: "GlitterRightDown",\n  
random: "Random",\n  replace: "Replace",\n  splitHI: "SplitHorizontalIn",\n  splitHO: "SplitHorizontalOut",\n 
 splitVI: "SplitVerticalIn",\n  splitVO: "SplitVerticalOut",\n  wipeD: "WipeDown",\n  wipeL: "WipeLeft",\n  
wipeR: "WipeRight",\n  wipeU: "WipeUp"\n});\nexports.Trans = Trans;\nconst ZoomType = Object.freeze({\n  
none: "NoVary",\n  fitP: "FitPage",\n  fitW: "FitWidth",\n  fitH: "FitHeight",\n  fitV: "FitVisibleWidth",\n  
pref: "Preferred",\n  refW: "ReflowWidth"\n});\ne
 xports.ZoomType = ZoomType;\nconst GlobalConstants = Object.freeze({\n  IDS_GREATER_THAN: "Invalid value: 
must be greater than or equal to % s.",\n  IDS_GT_AND_LT: "Invalid value: must be greater than or equal to % 
s " + "and less than or equal to % s.",\n  IDS_LESS_THAN: "Invalid value: must be less than or equal to % 
s.",\n  IDS_INVALID_MONTH: "** Invalid **",\n  IDS_INVALID_DATE: "Invalid date / time: please ensure that the 
date / time exists.Field",\n  IDS_INVALID_DATE2: " should match format ",\n  IDS_INVALID_VALUE: "The value 
entered does not match the format of the field",\n  IDS_AM: "am",\n  IDS_PM: "pm",\n  IDS_MONTH_INFO: 
"January[1] February[2] March[3] April[4] May[5] " + "June[6] July[7] August[8] September[9] October[10] " + 
"November[11] December[12] Sept[9] Jan[1] Feb[2] Mar[3] " + "Apr[4] Jun[6] Jul[7] Aug[8] Sep[9] Oct[10] 
Nov[11] Dec[12]",\n  IDS_STARTUP_CONSOLE_MSG: "** ^ _ ^ **",\n  RE_NUMBER_ENTRY_DOT_SEP: 
["[+-]?\\\\d*\\\\.?\\\\d*"],\n  RE_NUMBER_COMMIT_DOT_SE
 P: ["[+-]?\\\\d+(\\\\.\\\\d+)?", "[+-]?\\\\.\\\\d+", "[+-]?\\\\d+\\\\."],\n  RE_NUMBER_ENTRY_COMMA_SEP: 
["[+-]?\\\\d*,?\\\\d*"],\n  RE_NUMBER_COMMIT_COMMA_SEP: ["[+-]?\\\\d+([.,]\\\\d+)?", "[+-]?[.,]\\\\d+", 
"[+-]?\\\\d+[.,]"],\n  RE_ZIP_ENTRY: ["\\\\d{0,5}"],\n  RE_ZIP_COMMIT: ["\\\\d{5}"],\n  RE_ZIP4_ENTRY: 
["\\\\d{0,5}(\\\\.|[- ])?\\\\d{0,4}"],\n  RE_ZIP4_COMMIT: ["\\\\d{5}(\\\\.|[- ])?\\\\d{4}"],\n  
RE_PHONE_ENTRY: ["\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,4}", "\\\\(\\\\d{0,3}", 
"\\\\(\\\\d{0,3}\\\\)(\\\\.|[- ])?\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,4}", "\\\\(\\\\d{0,3}(\\\\.|[- 
])?\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,4}", "\\\\d{0,3}\\\\)(\\\\.|[- ])?\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,4}", 
"011(\\\\.|[- \\\\d])*"],\n  RE_PHONE_COMMIT: ["\\\\d{3}(\\\\.|[- ])?\\\\d{4}", "\\\\d{3}(\\\\.|[- 
])?\\\\d{3}(\\\\.|[- ])?\\\\d{4}", "\\\\(\\\\d{3}\\\\)(\\\\.|[- ])?\\\\d{3}(\\\\.|[- ])?\\\\d{4}", 
"011(\\\\.|[- \\\\d])*"],\n  RE_SSN_ENTRY: ["\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,2}(\\\\.|[- ])?\\\\d
 {0,4}"],\n  RE_SSN_COMMIT: ["\\\\d{3}(\\\\.|[- ])?\\\\d{2}(\\\\.|[- 
])?\\\\d{4}"]\n});\nexports.GlobalConstants = GlobalConstants;\n\n/***/ }),\n/* 3 */\n/***/ 
((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, 
"__esModule", ({\n  value: true\n}));\nexports.RadioButtonField = exports.Field = exports.CheckboxField = 
void 0;\n\nvar _common = __w_pdfjs_require__(4);\n\nvar _color = __w_pdfjs_require__(5);\n\nvar _pdf_object = 
__w_pdfjs_require__(7);\n\nclass Field extends _pdf_object.PDFObject {\n  constructor(data) {\n    
super(data);\n    this.alignment = data.alignment || "left";\n    this.borderStyle = data.borderStyle || 
"";\n    this.buttonAlignX = data.buttonAlignX || 50;\n    this.buttonAlignY = data.buttonAlignY || 50;\n    
this.buttonFitBounds = data.buttonFitBounds;\n    this.buttonPosition = data.buttonPosition;\n    
this.buttonScaleHow = data.buttonScaleHow;\n    this.ButtonScaleWhen = data.buttonScaleWhen;\n    this.calcOrd
 erIndex = data.calcOrderIndex;\n    this.charLimit = data.charLimit;\n    this.comb = data.comb;\n    
this.commitOnSelChange = data.commitOnSelChange;\n    this.currentValueIndices = data.currentValueIndices;\n  
  this.defaultStyle = data.defaultStyle;\n    this.defaultValue = data.defaultValue;\n    this.doNotScroll = 
data.doNotScroll;\n    this.doNotSpellCheck = data.doNotSpellCheck;\n    this.delay = data.delay;\n    
this.display = data.display;\n    this.doc = data.doc.wrapped;\n    this.editable = data.editable;\n    
this.exportValues = data.exportValues;\n    this.fileSelect = data.fileSelect;\n    this.hidden = 
data.hidden;\n    this.highlight = data.highlight;\n    this.lineWidth = data.lineWidth;\n    this.multiline 
= data.multiline;\n    this.multipleSelection = !!data.multipleSelection;\n    this.name = data.name;\n    
this.password = data.password;\n    this.print = data.print;\n    this.radiosInUnison = 
data.radiosInUnison;\n    this.readonly = data.readonly;\n    this.
 rect = data.rect;\n    this.required = data.required;\n    this.richText = data.richText;\n    
this.richValue = data.richValue;\n    this.rotation = data.rotation;\n    this.style = data.style;\n    
this.submitName = data.submitName;\n    this.textFont = data.textFont;\n    this.textSize = data.textSize;\n  
  this.type = data.type;\n    this.userName = data.userName;\n    this._actions = (0, 
_common.createActionsMap)(data.actions);\n    this._browseForFileToSubmit = data.browseForFileToSubmit || 
null;\n    this._buttonCaption = null;\n    this._buttonIcon = null;\n    this._children = null;\n    
this._currentValueIndices = data.currentValueIndices || 0;\n    this._document = data.doc;\n    
this._fieldPath = data.fieldPath;\n    this._fillColor = data.fillColor || ["T"];\n    this._isChoice = 
Array.isArray(data.items);\n    this._items = data.items || [];\n    this._page = data.page || 0;\n    
this._strokeColor = data.strokeColor || ["G", 0];\n    this._textColor = data.textColor || 
 ["G", 0];\n    this._value = data.value || "";\n    this._kidIds = data.kidIds || null;\n    this._fieldType 
= (0, _common.getFieldType)(this._actions);\n    this._siblings = data.siblings || null;\n    
this._globalEval = data.globalEval;\n    this._appObjects = data.appObjects;\n    this.valueAsString = 
data.valueAsString || this._value;\n  }\n\n  get currentValueIndices() {\n    if (!this._isChoice) {\n      
return 0;\n    }\n\n    return this._currentValueIndices;\n  }\n\n  set currentValueIndices(indices) {\n    
if (!this._isChoice) {\n      return;\n    }\n\n    if (!Array.isArray(indices)) {\n      indices = 
[indices];\n    }\n\n    if (!indices.every(i => typeof i === "number" && Number.isInteger(i) && i >= 0 && i 
< this.numItems)) {\n      return;\n    }\n\n    indices.sort();\n\n    if (this.multipleSelection) {\n      
this._currentValueIndices = indices;\n      this._value = [];\n      indices.forEach(i => {\n        
this._value.push(this._items[i].displayValue);\n      })
 ;\n    } else {\n      if (indices.length > 0) {\n        indices = indices.splice(1, indices.length - 1);\n 
       this._currentValueIndices = indices[0];\n        this._value = 
this._items[this._currentValueIndices];\n      }\n    }\n\n    this._send({\n      id: this._id,\n      
indices\n    });\n  }\n\n  get fillColor() {\n    return this._fillColor;\n  }\n\n  set fillColor(color) {\n  
  if (_color.Color._isValidColor(color)) {\n      this._fillColor = color;\n    }\n  }\n\n  get bgColor() {\n 
   return this.fillColor;\n  }\n\n  set bgColor(color) {\n    this.fillColor = color;\n  }\n\n  get 
numItems() {\n    if (!this._isChoice) {\n      throw new Error("Not a choice widget");\n    }\n\n    return 
this._items.length;\n  }\n\n  set numItems(_) {\n    throw new Error("field.numItems is read-only");\n  }\n\n 
 get strokeColor() {\n    return this._strokeColor;\n  }\n\n  set strokeColor(color) {\n    if 
(_color.Color._isValidColor(color)) {\n      this._strokeColor = color;\n    }\n
   }\n\n  get borderColor() {\n    return this.strokeColor;\n  }\n\n  set borderColor(color) {\n    
this.strokeColor = color;\n  }\n\n  get page() {\n    return this._page;\n  }\n\n  set page(_) {\n    throw 
new Error("field.page is read-only");\n  }\n\n  get textColor() {\n    return this._textColor;\n  }\n\n  set 
textColor(color) {\n    if (_color.Color._isValidColor(color)) {\n      this._textColor = color;\n    }\n  
}\n\n  get fgColor() {\n    return this.textColor;\n  }\n\n  set fgColor(color) {\n    this.textColor = 
color;\n  }\n\n  get value() {\n    return this._value;\n  }\n\n  set value(value) {\n    if (value === "") 
{\n      this._value = "";\n    } else if (typeof value === "string") {\n      switch (this._fieldType) {\n   
     case _common.FieldType.number:\n        case _common.FieldType.percent:\n          value = 
parseFloat(value);\n\n          if (!isNaN(value)) {\n            this._value = value;\n          }\n\n       
   break;\n\n        default:\n          this.
 _value = value;\n      }\n    } else {\n      this._value = value;\n    }\n\n    if (this._isChoice) {\n     
 if (this.multipleSelection) {\n        const values = new Set(value);\n        
this._currentValueIndices.length = 0;\n\n        this._items.forEach(({\n          displayValue\n        }, 
i) => {\n          if (values.has(displayValue)) {\n            this._currentValueIndices.push(i);\n          
}\n        });\n      } else {\n        this._currentValueIndices = this._items.findIndex(({\n          
displayValue\n        }) => value === displayValue);\n      }\n    }\n  }\n\n  get valueAsString() {\n    if 
(this._valueAsString === undefined) {\n      this._valueAsString = this._value ? this._value.toString() : 
"";\n    }\n\n    return this._valueAsString;\n  }\n\n  set valueAsString(val) {\n    this._valueAsString = 
val ? val.toString() : "";\n  }\n\n  browseForFileToSubmit() {\n    if (this._browseForFileToSubmit) {\n      
this._browseForFileToSubmit();\n    }\n  }\n\n  butto
 nGetCaption(nFace = 0) {\n    if (this._buttonCaption) {\n      return this._buttonCaption[nFace];\n    
}\n\n    return "";\n  }\n\n  buttonGetIcon(nFace = 0) {\n    if (this._buttonIcon) {\n      return 
this._buttonIcon[nFace];\n    }\n\n    return null;\n  }\n\n  buttonImportIcon(cPath = null, nPave = 0) 
{}\n\n  buttonSetCaption(cCaption, nFace = 0) {\n    if (!this._buttonCaption) {\n      this._buttonCaption = 
["", "", ""];\n    }\n\n    this._buttonCaption[nFace] = cCaption;\n  }\n\n  buttonSetIcon(oIcon, nFace = 0) 
{\n    if (!this._buttonIcon) {\n      this._buttonIcon = [null, null, null];\n    }\n\n    
this._buttonIcon[nFace] = oIcon;\n  }\n\n  checkThisBox(nWidget, bCheckIt = true) {}\n\n  clearItems() {\n    
if (!this._isChoice) {\n      throw new Error("Not a choice widget");\n    }\n\n    this._items = [];\n\n    
this._send({\n      id: this._id,\n      clear: null\n    });\n  }\n\n  deleteItemAt(nIdx = null) {\n    if 
(!this._isChoice) {\n      throw new Error("Not a c
 hoice widget");\n    }\n\n    if (!this.numItems) {\n      return;\n    }\n\n    if (nIdx === null) {\n      
nIdx = Array.isArray(this._currentValueIndices) ? this._currentValueIndices[0] : this._currentValueIndices;\n 
     nIdx = nIdx || 0;\n    }\n\n    if (nIdx < 0 || nIdx >= this.numItems) {\n      nIdx = this.numItems - 
1;\n    }\n\n    this._items.splice(nIdx, 1);\n\n    if (Array.isArray(this._currentValueIndices)) {\n      
let index = this._currentValueIndices.findIndex(i => i >= nIdx);\n\n      if (index !== -1) {\n        if 
(this._currentValueIndices[index] === nIdx) {\n          this._currentValueIndices.splice(index, 1);\n        
}\n\n        for (const ii = this._currentValueIndices.length; index < ii; index++) {\n          
--this._currentValueIndices[index];\n        }\n      }\n    } else {\n      if (this._currentValueIndices 
=== nIdx) {\n        this._currentValueIndices = this.numItems > 0 ? 0 : -1;\n      } else if 
(this._currentValueIndices > nIdx) {\n        --
 this._currentValueIndices;\n      }\n    }\n\n    this._send({\n      id: this._id,\n      remove: nIdx\n    
});\n  }\n\n  getItemAt(nIdx = -1, bExportValue = false) {\n    if (!this._isChoice) {\n      throw new 
Error("Not a choice widget");\n    }\n\n    if (nIdx < 0 || nIdx >= this.numItems) {\n      nIdx = 
this.numItems - 1;\n    }\n\n    const item = this._items[nIdx];\n    return bExportValue ? item.exportValue 
: item.displayValue;\n  }\n\n  getArray() {\n    if (this._kidIds) {\n      return this._kidIds.map(id => 
this._appObjects[id].wrapped);\n    }\n\n    if (this._children === null) {\n      this._children = 
this._document.obj._getChildren(this._fieldPath);\n    }\n\n    return this._children;\n  }\n\n  getLock() 
{\n    return undefined;\n  }\n\n  isBoxChecked(nWidget) {\n    return false;\n  }\n\n  
isDefaultChecked(nWidget) {\n    return false;\n  }\n\n  insertItemAt(cName, cExport = undefined, nIdx = 0) 
{\n    if (!this._isChoice) {\n      throw new Error("Not a choice 
 widget");\n    }\n\n    if (!cName) {\n      return;\n    }\n\n    if (nIdx < 0 || nIdx > this.numItems) {\n 
     nIdx = this.numItems;\n    }\n\n    if (this._items.some(({\n      displayValue\n    }) => displayValue 
=== cName)) {\n      return;\n    }\n\n    if (cExport === undefined) {\n      cExport = cName;\n    }\n\n    
const data = {\n      displayValue: cName,\n      exportValue: cExport\n    };\n\n    
this._items.splice(nIdx, 0, data);\n\n    if (Array.isArray(this._currentValueIndices)) {\n      let index = 
this._currentValueIndices.findIndex(i => i >= nIdx);\n\n      if (index !== -1) {\n        for (const ii = 
this._currentValueIndices.length; index < ii; index++) {\n          ++this._currentValueIndices[index];\n     
   }\n      }\n    } else if (this._currentValueIndices >= nIdx) {\n      ++this._currentValueIndices;\n    
}\n\n    this._send({\n      id: this._id,\n      insert: {\n        index: nIdx,\n        ...data\n      }\n 
   });\n  }\n\n  setAction(cTrigger, cS
 cript) {\n    if (typeof cTrigger !== "string" || typeof cScript !== "string") {\n      return;\n    }\n\n   
 if (!(cTrigger in this._actions)) {\n      this._actions[cTrigger] = [];\n    }\n\n    
this._actions[cTrigger].push(cScript);\n  }\n\n  setFocus() {\n    this._send({\n      id: this._id,\n      
focus: true\n    });\n  }\n\n  setItems(oArray) {\n    if (!this._isChoice) {\n      throw new Error("Not a 
choice widget");\n    }\n\n    this._items.length = 0;\n\n    for (const element of oArray) {\n      let 
displayValue, exportValue;\n\n      if (Array.isArray(element)) {\n        displayValue = 
element[0]?.toString() || "";\n        exportValue = element[1]?.toString() || "";\n      } else {\n        
displayValue = exportValue = element?.toString() || "";\n      }\n\n      this._items.push({\n        
displayValue,\n        exportValue\n      });\n    }\n\n    this._currentValueIndices = 0;\n\n    
this._send({\n      id: this._id,\n      items: this._items\n    });\n  }\n\n  se
 tLock() {}\n\n  signatureGetModifications() {}\n\n  signatureGetSeedValue() {}\n\n  signatureInfo() {}\n\n  
signatureSetSeedValue() {}\n\n  signatureSign() {}\n\n  signatureValidate() {}\n\n  _isButton() {\n    return 
false;\n  }\n\n  _reset() {\n    this.value = this.valueAsString = this.defaultValue;\n  }\n\n  
_runActions(event) {\n    const eventName = event.name;\n\n    if (!this._actions.has(eventName)) {\n      
return false;\n    }\n\n    const actions = this._actions.get(eventName);\n\n    try {\n      for (const 
action of actions) {\n        this._globalEval(action);\n      }\n    } catch (error) {\n      event.rc = 
false;\n      throw error;\n    }\n\n    return true;\n  }\n\n}\n\nexports.Field = Field;\n\nclass 
RadioButtonField extends Field {\n  constructor(otherButtons, data) {\n    super(data);\n    
this.exportValues = [this.exportValues];\n    this._radioIds = [this._id];\n    this._radioActions = 
[this._actions];\n\n    for (const radioData of otherButtons) {\n      t
 his.exportValues.push(radioData.exportValues);\n\n      this._radioIds.push(radioData.id);\n\n      
this._radioActions.push((0, _common.createActionsMap)(radioData.actions));\n\n      if (this._value === 
radioData.exportValues) {\n        this._id = radioData.id;\n      }\n    }\n  }\n\n  get value() {\n    
return this._value;\n  }\n\n  set value(value) {\n    if (value === null || value === undefined) {\n      
this._value = "";\n    }\n\n    const i = this.exportValues.indexOf(value);\n\n    if (0 <= i && i < 
this._radioIds.length) {\n      this._id = this._radioIds[i];\n      this._value = value;\n    } else if 
(value === "Off" && this._radioIds.length === 2) {\n      const nextI = (1 + 
this._radioIds.indexOf(this._id)) % 2;\n      this._id = this._radioIds[nextI];\n      this._value = 
this.exportValues[nextI];\n    }\n  }\n\n  checkThisBox(nWidget, bCheckIt = true) {\n    if (nWidget < 0 || 
nWidget >= this._radioIds.length || !bCheckIt) {\n      return;\n    }\n\n    this._id = t
 his._radioIds[nWidget];\n    this._value = this.exportValues[nWidget];\n\n    this._send({\n      id: 
this._id,\n      value: this._value\n    });\n  }\n\n  isBoxChecked(nWidget) {\n    return nWidget >= 0 && 
nWidget < this._radioIds.length && this._id === this._radioIds[nWidget];\n  }\n\n  isDefaultChecked(nWidget) 
{\n    return nWidget >= 0 && nWidget < this.exportValues.length && this.defaultValue === 
this.exportValues[nWidget];\n  }\n\n  _getExportValue(state) {\n    const i = 
this._radioIds.indexOf(this._id);\n\n    return this.exportValues[i];\n  }\n\n  _runActions(event) {\n    
const i = this._radioIds.indexOf(this._id);\n\n    this._actions = this._radioActions[i];\n    return 
super._runActions(event);\n  }\n\n  _isButton() {\n    return true;\n  }\n\n}\n\nexports.RadioButtonField = 
RadioButtonField;\n\nclass CheckboxField extends RadioButtonField {\n  get value() {\n    return 
this._value;\n  }\n\n  set value(value) {\n    if (!value || value === "Off") {\n      this._value
  = "Off";\n    } else {\n      super.value = value;\n    }\n  }\n\n  _getExportValue(state) {\n    return 
state ? super._getExportValue(state) : "Off";\n  }\n\n  isBoxChecked(nWidget) {\n    if (this._value === 
"Off") {\n      return false;\n    }\n\n    return super.isBoxChecked(nWidget);\n  }\n\n  
isDefaultChecked(nWidget) {\n    if (this.defaultValue === "Off") {\n      return this._value === "Off";\n    
}\n\n    return super.isDefaultChecked(nWidget);\n  }\n\n  checkThisBox(nWidget, bCheckIt = true) {\n    if 
(nWidget < 0 || nWidget >= this._radioIds.length) {\n      return;\n    }\n\n    this._id = 
this._radioIds[nWidget];\n    this._value = bCheckIt ? this.exportValues[nWidget] : "Off";\n\n    
this._send({\n      id: this._id,\n      value: this._value\n    });\n  }\n\n}\n\nexports.CheckboxField = 
CheckboxField;\n\n/***/ }),\n/* 4 */\n/***/ ((__unused_webpack_module, exports) => 
{\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.FieldType = 
 void 0;\nexports.createActionsMap = createActionsMap;\nexports.getFieldType = getFieldType;\nconst FieldType 
= {\n  none: 0,\n  number: 1,\n  percent: 2,\n  date: 3,\n  time: 4\n};\nexports.FieldType = 
FieldType;\n\nfunction createActionsMap(actions) {\n  const actionsMap = new Map();\n\n  if (actions) {\n    
for (const [eventType, actionsForEvent] of Object.entries(actions)) {\n      actionsMap.set(eventType, 
actionsForEvent);\n    }\n  }\n\n  return actionsMap;\n}\n\nfunction getFieldType(actions) {\n  let format = 
actions.get("Format");\n\n  if (!format) {\n    return FieldType.none;\n  }\n\n  format = format[0];\n  
format = format.trim();\n\n  if (format.startsWith("AFNumber_")) {\n    return FieldType.number;\n  }\n\n  if 
(format.startsWith("AFPercent_")) {\n    return FieldType.percent;\n  }\n\n  if 
(format.startsWith("AFDate_")) {\n    return FieldType.date;\n  }\n\n  if (format.startsWith("AFTime__")) {\n 
   return FieldType.time;\n  }\n\n  return FieldType.none;\n}\n\n/***/
  }),\n/* 5 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => 
{\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.Color = void 0;\n\nvar 
_scripting_utils = __w_pdfjs_require__(6);\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nclass Color 
extends _pdf_object.PDFObject {\n  constructor() {\n    super({});\n    this.transparent = ["T"];\n    
this.black = ["G", 0];\n    this.white = ["G", 1];\n    this.red = ["RGB", 1, 0, 0];\n    this.green = 
["RGB", 0, 1, 0];\n    this.blue = ["RGB", 0, 0, 1];\n    this.cyan = ["CMYK", 1, 0, 0, 0];\n    this.magenta 
= ["CMYK", 0, 1, 0, 0];\n    this.yellow = ["CMYK", 0, 0, 1, 0];\n    this.dkGray = ["G", 0.25];\n    
this.gray = ["G", 0.5];\n    this.ltGray = ["G", 0.75];\n  }\n\n  static _isValidSpace(cColorSpace) {\n    
return typeof cColorSpace === "string" && (cColorSpace === "T" || cColorSpace === "G" || cColorSpace === 
"RGB" || cColorSpace === "CMYK");\n  }\n\n  static _isValidColor(colorArr
 ay) {\n    if (!Array.isArray(colorArray) || colorArray.length === 0) {\n      return false;\n    }\n\n    
const space = colorArray[0];\n\n    if (!Color._isValidSpace(space)) {\n      return false;\n    }\n\n    
switch (space) {\n      case "T":\n        if (colorArray.length !== 1) {\n          return false;\n        
}\n\n        break;\n\n      case "G":\n        if (colorArray.length !== 2) {\n          return false;\n     
   }\n\n        break;\n\n      case "RGB":\n        if (colorArray.length !== 4) {\n          return 
false;\n        }\n\n        break;\n\n      case "CMYK":\n        if (colorArray.length !== 5) {\n          
return false;\n        }\n\n        break;\n\n      default:\n        return false;\n    }\n\n    return 
colorArray.slice(1).every(c => typeof c === "number" && c >= 0 && c <= 1);\n  }\n\n  static 
_getCorrectColor(colorArray) {\n    return Color._isValidColor(colorArray) ? colorArray : ["G", 0];\n  }\n\n  
convert(colorArray, cColorSpace) {\n    if (!Col
 or._isValidSpace(cColorSpace)) {\n      return this.black;\n    }\n\n    if (cColorSpace === "T") {\n      
return ["T"];\n    }\n\n    colorArray = Color._getCorrectColor(colorArray);\n\n    if (colorArray[0] === 
cColorSpace) {\n      return colorArray;\n    }\n\n    if (colorArray[0] === "T") {\n      return 
this.convert(this.black, cColorSpace);\n    }\n\n    return 
_scripting_utils.ColorConverters[`${colorArray[0]}_${cColorSpace}`](colorArray.slice(1));\n  }\n\n  
equal(colorArray1, colorArray2) {\n    colorArray1 = Color._getCorrectColor(colorArray1);\n    colorArray2 = 
Color._getCorrectColor(colorArray2);\n\n    if (colorArray1[0] === "T" || colorArray2[0] === "T") {\n      
return colorArray1[0] === "T" && colorArray2[0] === "T";\n    }\n\n    if (colorArray1[0] !== colorArray2[0]) 
{\n      colorArray2 = this.convert(colorArray2, colorArray1[0]);\n    }\n\n    return 
colorArray1.slice(1).every((c, i) => c === colorArray2[i + 1]);\n  }\n\n}\n\nexports.Color = Color;\n\n/***/ 
}),\
 n/* 6 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", 
({\n  value: true\n}));\nexports.ColorConverters = void 0;\n\nfunction makeColorComp(n) {\n  return 
Math.floor(Math.max(0, Math.min(1, n)) * 255).toString(16).padStart(2, "0");\n}\n\nclass ColorConverters {\n  
static CMYK_G([c, y, m, k]) {\n    return ["G", 1 - Math.min(1, 0.3 * c + 0.59 * m + 0.11 * y + k)];\n  }\n\n 
 static G_CMYK([g]) {\n    return ["CMYK", 0, 0, 0, 1 - g];\n  }\n\n  static G_RGB([g]) {\n    return ["RGB", 
g, g, g];\n  }\n\n  static G_HTML([g]) {\n    const G = makeColorComp(g);\n    return `#${G}${G}${G}`;\n  
}\n\n  static RGB_G([r, g, b]) {\n    return ["G", 0.3 * r + 0.59 * g + 0.11 * b];\n  }\n\n  static 
RGB_HTML([r, g, b]) {\n    const R = makeColorComp(r);\n    const G = makeColorComp(g);\n    const B = 
makeColorComp(b);\n    return `#${R}${G}${B}`;\n  }\n\n  static T_HTML() {\n    return "#00000000";\n  }\n\n  
static CMYK_RGB([c, y, m, k]) {\n    re
 turn ["RGB", 1 - Math.min(1, c + k), 1 - Math.min(1, m + k), 1 - Math.min(1, y + k)];\n  }\n\n  static 
CMYK_HTML(components) {\n    return this.RGB_HTML(this.CMYK_RGB(components));\n  }\n\n  static RGB_CMYK([r, 
g, b]) {\n    const c = 1 - r;\n    const m = 1 - g;\n    const y = 1 - b;\n    const k = Math.min(c, m, 
y);\n    return ["CMYK", c, m, y, k];\n  }\n\n}\n\nexports.ColorConverters = ColorConverters;\n\n/***/ 
}),\n/* 7 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, 
"__esModule", ({\n  value: true\n}));\nexports.PDFObject = void 0;\n\nclass PDFObject {\n  constructor(data) 
{\n    this._expandos = Object.create(null);\n    this._send = data.send || null;\n    this._id = data.id || 
null;\n  }\n\n}\n\nexports.PDFObject = PDFObject;\n\n/***/ }),\n/* 8 */\n/***/ ((__unused_webpack_module, 
exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: 
true\n}));\nexports.AForm = void 0;\n\nvar _constants =
  __w_pdfjs_require__(2);\n\nclass AForm {\n  constructor(document, app, util, color) {\n    this._document = 
document;\n    this._app = app;\n    this._util = util;\n    this._color = color;\n    this._dateFormats = 
["m/d", "m/d/yy", "mm/dd/yy", "mm/yy", "d-mmm", "d-mmm-yy", "dd-mmm-yy", "yy-mm-dd", "mmm-yy", "mmmm-yy", 
"mmm d, yyyy", "mmmm d, yyyy", "m/d/yy h:MM tt", "m/d/yy HH:MM"];\n    this._timeFormats = ["HH:MM", "h:MM 
tt", "HH:MM:ss", "h:MM:ss tt"];\n    this._emailRegex = new RegExp("^[a-zA-Z0-9.!#$%&\'*+\\\\/=?^_`{|}~-]+" + 
"@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?" + 
"(?:\\\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$");\n  }\n\n  _mkTargetName(event) {\n    return 
event.target ? `[ ${event.target.name} ]` : "";\n  }\n\n  _parseDate(cFormat, cDate) {\n    const ddate = 
Date.parse(cDate);\n\n    if (isNaN(ddate)) {\n      try {\n        return this._util.scand(cFormat, 
cDate);\n      } catch (error) {\n        return null;\n      }\n    } else {\n      return ne
 w Date(ddate);\n    }\n  }\n\n  AFMergeChange(event = globalThis.event) {\n    if (event.willCommit) {\n     
 return event.value.toString();\n    }\n\n    return this._app._eventDispatcher.mergeChange(event);\n  }\n\n  
AFParseDateEx(cString, cOrder) {\n    return this._parseDate(cOrder, cString);\n  }\n\n  AFExtractNums(str) 
{\n    if (typeof str === "number") {\n      return [str];\n    }\n\n    if (!str || typeof str !== "string") 
{\n      return null;\n    }\n\n    const first = str.charAt(0);\n\n    if (first === "." || first === ",") 
{\n      str = `0${str}`;\n    }\n\n    const numbers = str.match(/(\\d+)/g);\n\n    if (numbers.length === 
0) {\n      return null;\n    }\n\n    return numbers;\n  }\n\n  AFMakeNumber(str) {\n    if (typeof str === 
"number") {\n      return str;\n    }\n\n    if (typeof str !== "string") {\n      return null;\n    }\n\n    
str = str.trim().replace(",", ".");\n    const number = parseFloat(str);\n\n    if (isNaN(number) || 
!isFinite(number)) {\n  
     return null;\n    }\n\n    return number;\n  }\n\n  AFMakeArrayFromList(string) {\n    if (typeof string 
=== "string") {\n      return string.split(/, ?/g);\n    }\n\n    return string;\n  }\n\n  
AFNumber_Format(nDec, sepStyle, negStyle, currStyle, strCurrency, bCurrencyPrepend) {\n    const event = 
globalThis.event;\n\n    if (!event.value) {\n      return;\n    }\n\n    let value = 
this.AFMakeNumber(event.value);\n\n    if (value === null) {\n      event.value = "";\n      return;\n    
}\n\n    const sign = Math.sign(value);\n    const buf = [];\n    let hasParen = false;\n\n    if (sign === 
-1 && bCurrencyPrepend && negStyle === 0) {\n      buf.push("-");\n    }\n\n    if ((negStyle === 2 || 
negStyle === 3) && sign === -1) {\n      buf.push("(");\n      hasParen = true;\n    }\n\n    if 
(bCurrencyPrepend) {\n      buf.push(strCurrency);\n    }\n\n    sepStyle = Math.min(Math.max(0, 
Math.floor(sepStyle)), 4);\n    buf.push("%,", sepStyle, ".", nDec.toString(), "f");\n\n    if 
 (!bCurrencyPrepend) {\n      buf.push(strCurrency);\n    }\n\n    if (hasParen) {\n      buf.push(")");\n    
}\n\n    if (negStyle === 1 || negStyle === 3) {\n      event.target.textColor = sign === 1 ? 
this._color.black : this._color.red;\n    }\n\n    if ((negStyle !== 0 || bCurrencyPrepend) && sign === -1) 
{\n      value = -value;\n    }\n\n    const formatStr = buf.join("");\n    event.value = 
this._util.printf(formatStr, value);\n  }\n\n  AFNumber_Keystroke(nDec, sepStyle, negStyle, currStyle, 
strCurrency, bCurrencyPrepend) {\n    const event = globalThis.event;\n    let value = 
this.AFMergeChange(event);\n\n    if (!value) {\n      return;\n    }\n\n    value = value.trim();\n    let 
pattern;\n\n    if (sepStyle > 1) {\n      pattern = event.willCommit ? /^[+-]?(\\d+(,\\d*)?|,\\d+)$/ : 
/^[+-]?\\d*,?\\d*$/;\n    } else {\n      pattern = event.willCommit ? /^[+-]?(\\d+(\\.\\d*)?|\\.\\d+)$/ : 
/^[+-]?\\d*\\.?\\d*$/;\n    }\n\n    if (!pattern.test(value)) {\n      if (event.willC
 ommit) {\n        const err = `${_constants.GlobalConstants.IDS_INVALID_VALUE} 
${this._mkTargetName(event)}`;\n\n        this._app.alert(err);\n      }\n\n      event.rc = false;\n    
}\n\n    if (event.willCommit && sepStyle > 1) {\n      event.value = parseFloat(value.replace(",", "."));\n  
  }\n  }\n\n  AFPercent_Format(nDec, sepStyle, percentPrepend = false) {\n    if (typeof nDec !== "number") 
{\n      return;\n    }\n\n    if (typeof sepStyle !== "number") {\n      return;\n    }\n\n    if (nDec < 0) 
{\n      throw new Error("Invalid nDec value in AFPercent_Format");\n    }\n\n    const event = 
globalThis.event;\n\n    if (nDec > 512) {\n      event.value = "%";\n      return;\n    }\n\n    nDec = 
Math.floor(nDec);\n    sepStyle = Math.min(Math.max(0, Math.floor(sepStyle)), 4);\n    let value = 
this.AFMakeNumber(event.value);\n\n    if (value === null) {\n      event.value = "%";\n      return;\n    
}\n\n    const formatStr = `%,${sepStyle}.${nDec}f`;\n    value = this._util.p
 rintf(formatStr, value * 100);\n\n    if (percentPrepend) {\n      event.value = `%${value}`;\n    } else 
{\n      event.value = `${value}%`;\n    }\n  }\n\n  AFPercent_Keystroke(nDec, sepStyle) {\n    
this.AFNumber_Keystroke(nDec, sepStyle, 0, 0, "", true);\n  }\n\n  AFDate_FormatEx(cFormat) {\n    const 
event = globalThis.event;\n    const value = event.value;\n\n    if (!value) {\n      return;\n    }\n\n    
const date = this._parseDate(cFormat, value);\n\n    if (date !== null) {\n      event.value = 
this._util.printd(cFormat, date);\n    }\n  }\n\n  AFDate_Format(pdf) {\n    if (pdf >= 0 && pdf < 
this._dateFormats.length) {\n      this.AFDate_FormatEx(this._dateFormats[pdf]);\n    }\n  }\n\n  
AFDate_KeystrokeEx(cFormat) {\n    const event = globalThis.event;\n\n    if (!event.willCommit) {\n      
return;\n    }\n\n    const value = this.AFMergeChange(event);\n\n    if (!value) {\n      return;\n    }\n\n 
   if (this._parseDate(cFormat, value) === null) {\n      const invalid = 
 _constants.GlobalConstants.IDS_INVALID_DATE;\n      const invalid2 = 
_constants.GlobalConstants.IDS_INVALID_DATE2;\n      const err = `${invalid} 
${this._mkTargetName(event)}${invalid2}${cFormat}`;\n\n      this._app.alert(err);\n\n      event.rc = 
false;\n    }\n  }\n\n  AFDate_Keystroke(pdf) {\n    if (pdf >= 0 && pdf < this._dateFormats.length) {\n      
this.AFDate_KeystrokeEx(this._dateFormats[pdf]);\n    }\n  }\n\n  AFRange_Validate(bGreaterThan, 
nGreaterThan, bLessThan, nLessThan) {\n    const event = globalThis.event;\n\n    if (!event.value) {\n      
return;\n    }\n\n    const value = this.AFMakeNumber(event.value);\n\n    if (value === null) {\n      
return;\n    }\n\n    bGreaterThan = !!bGreaterThan;\n    bLessThan = !!bLessThan;\n\n    if (bGreaterThan) 
{\n      nGreaterThan = this.AFMakeNumber(nGreaterThan);\n\n      if (nGreaterThan === null) {\n        
return;\n      }\n    }\n\n    if (bLessThan) {\n      nLessThan = this.AFMakeNumber(nLessThan);\n\n      if 
(nLessT
 han === null) {\n        return;\n      }\n    }\n\n    let err = "";\n\n    if (bGreaterThan && bLessThan) 
{\n      if (value < nGreaterThan || value > nLessThan) {\n        err = 
this._util.printf(_constants.GlobalConstants.IDS_GT_AND_LT, nGreaterThan, nLessThan);\n      }\n    } else if 
(bGreaterThan) {\n      if (value < nGreaterThan) {\n        err = 
this._util.printf(_constants.GlobalConstants.IDS_GREATER_THAN, nGreaterThan);\n      }\n    } else if (value 
nLessThan) {\n      err = this._util.printf(_constants.GlobalConstants.IDS_LESS_THAN, nLessThan);\n    
}\n\n    if (err) {\n      this._app.alert(err);\n\n      event.rc = false;\n    }\n  }\n\n  
AFSimple(cFunction, nValue1, nValue2) {\n    const value1 = this.AFMakeNumber(nValue1);\n\n    if (value1 === 
null) {\n      throw new Error("Invalid nValue1 in AFSimple");\n    }\n\n    const value2 = 
this.AFMakeNumber(nValue2);\n\n    if (value2 === null) {\n      throw new Error("Invalid nValue2 in 
AFSimple");\n    }\n\n    swi
 tch (cFunction) {\n      case "AVG":\n        return (value1 + value2) / 2;\n\n      case "SUM":\n        
return value1 + value2;\n\n      case "PRD":\n        return value1 * value2;\n\n      case "MIN":\n        
return Math.min(value1, value2);\n\n      case "MAX":\n        return Math.max(value1, value2);\n    }\n\n    
throw new Error("Invalid cFunction in AFSimple");\n  }\n\n  AFSimple_Calculate(cFunction, cFields) {\n    
const actions = {\n      AVG: args => args.reduce((acc, value) => acc + value, 0) / args.length,\n      SUM: 
args => args.reduce((acc, value) => acc + value, 0),\n      PRD: args => args.reduce((acc, value) => acc * 
value, 1),\n      MIN: args => args.reduce((acc, value) => Math.min(acc, value), Number.MAX_VALUE),\n      
MAX: args => args.reduce((acc, value) => Math.max(acc, value), Number.MIN_VALUE)\n    };\n\n    if 
(!(cFunction in actions)) {\n      throw new TypeError("Invalid function in AFSimple_Calculate");\n    }\n\n  
  const event = globalThis.event;\n
     const values = [];\n\n    for (const cField of cFields) {\n      const field = 
this._document.getField(cField);\n\n      const number = this.AFMakeNumber(field.value);\n\n      if (number 
!== null) {\n        values.push(number);\n      }\n    }\n\n    if (values.length === 0) {\n      
event.value = cFunction === "PRD" ? 1 : 0;\n      return;\n    }\n\n    const res = 
actions[cFunction](values);\n    event.value = Math.round(1e6 * res) / 1e6;\n  }\n\n  AFSpecial_Format(psf) 
{\n    const event = globalThis.event;\n\n    if (!event.value) {\n      return;\n    }\n\n    psf = 
this.AFMakeNumber(psf);\n\n    if (psf === null) {\n      throw new Error("Invalid psf in 
AFSpecial_Format");\n    }\n\n    let formatStr = "";\n\n    switch (psf) {\n      case 0:\n        formatStr 
= "99999";\n        break;\n\n      case 1:\n        formatStr = "99999-9999";\n        break;\n\n      case 
2:\n        if (this._util.printx("9999999999", event.value).length >= 10) {\n          formatStr = "(99
 9) 999-9999";\n        } else {\n          formatStr = "999-9999";\n        }\n\n        break;\n\n      
case 3:\n        formatStr = "999-99-9999";\n        break;\n\n      default:\n        throw new 
Error("Invalid psf in AFSpecial_Format");\n    }\n\n    event.value = this._util.printx(formatStr, 
event.value);\n  }\n\n  AFSpecial_KeystrokeEx(cMask) {\n    if (!cMask) {\n      return;\n    }\n\n    const 
event = globalThis.event;\n    const value = this.AFMergeChange(event);\n    const checkers = new Map([["9", 
char => char >= "0" && char <= "9"], ["A", char => "a" <= char && char <= "z" || "A" <= char && char <= "Z"], 
["O", char => "a" <= char && char <= "z" || "A" <= char && char <= "Z" || "0" <= char && char <= "9"], ["X", 
char => true]]);\n\n    function _checkValidity(_value, _cMask) {\n      for (let i = 0, ii = value.length; i 
< ii; i++) {\n        const mask = _cMask.charAt(i);\n\n        const char = _value.charAt(i);\n\n        
const checker = checkers.get(mask);\n\n    
     if (checker) {\n          if (!checker(char)) {\n            return false;\n          }\n        } else 
if (mask !== char) {\n          return false;\n        }\n      }\n\n      return true;\n    }\n\n    if 
(!value) {\n      return;\n    }\n\n    const err = `${_constants.GlobalConstants.IDS_INVALID_VALUE} = 
"${cMask}"`;\n\n    if (value.length > cMask.length) {\n      this._app.alert(err);\n\n      event.rc = 
false;\n      return;\n    }\n\n    if (event.willCommit) {\n      if (value.length < cMask.length) {\n       
 this._app.alert(err);\n\n        event.rc = false;\n        return;\n      }\n\n      if 
(!_checkValidity(value, cMask)) {\n        this._app.alert(err);\n\n        event.rc = false;\n        
return;\n      }\n\n      event.value += cMask.substring(value.length);\n      return;\n    }\n\n    if 
(value.length < cMask.length) {\n      cMask = cMask.substring(0, value.length);\n    }\n\n    if 
(!_checkValidity(value, cMask)) {\n      this._app.alert(err);\n\n      
 event.rc = false;\n    }\n  }\n\n  AFSpecial_Keystroke(psf) {\n    const event = globalThis.event;\n\n    if 
(!event.value) {\n      return;\n    }\n\n    psf = this.AFMakeNumber(psf);\n\n    if (psf === null) {\n      
throw new Error("Invalid psf in AFSpecial_Keystroke");\n    }\n\n    let formatStr;\n\n    switch (psf) {\n   
   case 0:\n        formatStr = "99999";\n        break;\n\n      case 1:\n        formatStr = 
"99999-9999";\n        break;\n\n      case 2:\n        const finalLen = event.value.length + 
event.change.length + event.selStart - event.selEnd;\n\n        if (finalLen >= 8) {\n          formatStr = 
"(999) 999-9999";\n        } else {\n          formatStr = "999-9999";\n        }\n\n        break;\n\n      
case 3:\n        formatStr = "999-99-9999";\n        break;\n\n      default:\n        throw new 
Error("Invalid psf in AFSpecial_Keystroke");\n    }\n\n    this.AFSpecial_KeystrokeEx(formatStr);\n  }\n\n  
AFTime_FormatEx(cFormat) {\n    this.AFDate_FormatEx(cFor
 mat);\n  }\n\n  AFTime_Format(pdf) {\n    if (pdf >= 0 && pdf < this._timeFormats.length) {\n      
this.AFDate_FormatEx(this._timeFormats[pdf]);\n    }\n  }\n\n  AFTime_KeystrokeEx(cFormat) {\n    
this.AFDate_KeystrokeEx(cFormat);\n  }\n\n  AFTime_Keystroke(pdf) {\n    if (pdf >= 0 && pdf < 
this._timeFormats.length) {\n      this.AFDate_KeystrokeEx(this._timeFormats[pdf]);\n    }\n  }\n\n  
eMailValidate(str) {\n    return this._emailRegex.test(str);\n  }\n\n}\n\nexports.AForm = AForm;\n\n/***/ 
}),\n/* 9 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => 
{\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.App = void 0;\n\nvar 
_color = __w_pdfjs_require__(5);\n\nvar _event = __w_pdfjs_require__(10);\n\nvar _fullscreen = 
__w_pdfjs_require__(11);\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nvar _thermometer = 
__w_pdfjs_require__(12);\n\nconst VIEWER_TYPE = "PDF.js";\nconst VIEWER_VARIATION = "Full";\nconst 
VIEWER_VERSION = 21.0072
 0099;\nconst FORMS_VERSION = 21.00720099;\n\nclass App extends _pdf_object.PDFObject {\n  constructor(data) 
{\n    super(data);\n    this._constants = null;\n    this._focusRect = true;\n    this._fs = null;\n    
this._language = App._getLanguage(data.language);\n    this._openInPlace = false;\n    this._platform = 
App._getPlatform(data.platform);\n    this._runtimeHighlight = false;\n    this._runtimeHighlightColor = 
["T"];\n    this._thermometer = null;\n    this._toolbar = false;\n    this._document = data._document;\n    
this._proxyHandler = data.proxyHandler;\n    this._objects = Object.create(null);\n    this._eventDispatcher 
= new _event.EventDispatcher(this._document, data.calculationOrder, this._objects);\n    this._timeoutIds = 
new WeakMap();\n\n    if (typeof FinalizationRegistry !== "undefined") {\n      this._timeoutIdsRegistry = 
new FinalizationRegistry(this._cleanTimeout.bind(this));\n    } else {\n      this._timeoutIdsRegistry = 
null;\n    }\n\n    this._timeoutCall
 backIds = new Map();\n    this._timeoutCallbackId = 0;\n    this._globalEval = data.globalEval;\n    
this._externalCall = data.externalCall;\n    this._document = data._document;\n  }\n\n  
_dispatchEvent(pdfEvent) {\n    this._eventDispatcher.dispatch(pdfEvent);\n  }\n\n  
_registerTimeoutCallback(cExpr) {\n    const id = this._timeoutCallbackId++;\n\n    
this._timeoutCallbackIds.set(id, cExpr);\n\n    return id;\n  }\n\n  _unregisterTimeoutCallback(id) {\n    
this._timeoutCallbackIds.delete(id);\n  }\n\n  _evalCallback({\n    callbackId,\n    interval\n  }) {\n    
const expr = this._timeoutCallbackIds.get(callbackId);\n\n    if (!interval) {\n      
this._unregisterTimeoutCallback(callbackId);\n    }\n\n    if (expr) {\n      this._globalEval(expr);\n    
}\n  }\n\n  _registerTimeout(callbackId, interval) {\n    const timeout = Object.create(null);\n    const id 
= {\n      callbackId,\n      interval\n    };\n\n    this._timeoutIds.set(timeout, id);\n\n    if 
(this._timeoutIdsRegistry
 ) {\n      this._timeoutIdsRegistry.register(timeout, id);\n    }\n\n    return timeout;\n  }\n\n  
_unregisterTimeout(timeout) {\n    if (this._timeoutIdsRegistry) {\n      
this._timeoutIdsRegistry.unregister(timeout);\n    }\n\n    const data = this._timeoutIds.get(timeout);\n\n   
 if (!data) {\n      return;\n    }\n\n    this._timeoutIds.delete(timeout);\n\n    
this._cleanTimeout(data);\n  }\n\n  _cleanTimeout({\n    callbackId,\n    interval\n  }) {\n    
this._unregisterTimeoutCallback(callbackId);\n\n    if (interval) {\n      
this._externalCall("clearInterval", [callbackId]);\n    } else {\n      this._externalCall("clearTimeout", 
[callbackId]);\n    }\n  }\n\n  static _getPlatform(platform) {\n    if (typeof platform === "string") {\n    
  platform = platform.toLowerCase();\n\n      if (platform.includes("win")) {\n        return "WIN";\n      } 
else if (platform.includes("mac")) {\n        return "MAC";\n      }\n    }\n\n    return "UNIX";\n  }\n\n  
static _getLanguage(lang
 uage) {\n    const [main, sub] = language.toLowerCase().split(/[-_]/);\n\n    switch (main) {\n      case 
"zh":\n        if (sub === "cn" || sub === "sg") {\n          return "CHS";\n        }\n\n        return 
"CHT";\n\n      case "da":\n        return "DAN";\n\n      case "de":\n        return "DEU";\n\n      case 
"es":\n        return "ESP";\n\n      case "fr":\n        return "FRA";\n\n      case "it":\n        return 
"ITA";\n\n      case "ko":\n        return "KOR";\n\n      case "ja":\n        return "JPN";\n\n      case 
"nl":\n        return "NLD";\n\n      case "no":\n        return "NOR";\n\n      case "pt":\n        if (sub 
=== "br") {\n          return "PTB";\n        }\n\n        return "ENU";\n\n      case "fi":\n        return 
"SUO";\n\n      case "SV":\n        return "SVE";\n\n      default:\n        return "ENU";\n    }\n  }\n\n  
get activeDocs() {\n    return [this._document.wrapped];\n  }\n\n  set activeDocs(_) {\n    throw new 
Error("app.activeDocs is read-only")
 ;\n  }\n\n  get calculate() {\n    return this._document.obj.calculate;\n  }\n\n  set calculate(calculate) 
{\n    this._document.obj.calculate = calculate;\n  }\n\n  get constants() {\n    if (!this._constants) {\n   
   this._constants = Object.freeze({\n        align: Object.freeze({\n          left: 0,\n          center: 
1,\n          right: 2,\n          top: 3,\n          bottom: 4\n        })\n      });\n    }\n\n    return 
this._constants;\n  }\n\n  set constants(_) {\n    throw new Error("app.constants is read-only");\n  }\n\n  
get focusRect() {\n    return this._focusRect;\n  }\n\n  set focusRect(val) {\n    this._focusRect = val;\n  
}\n\n  get formsVersion() {\n    return FORMS_VERSION;\n  }\n\n  set formsVersion(_) {\n    throw new 
Error("app.formsVersion is read-only");\n  }\n\n  get fromPDFConverters() {\n    return [];\n  }\n\n  set 
fromPDFConverters(_) {\n    throw new Error("app.fromPDFConverters is read-only");\n  }\n\n  get fs() {\n    
if (this._fs === null) {\n    
   this._fs = new Proxy(new _fullscreen.FullScreen({\n        send: this._send\n      }), 
this._proxyHandler);\n    }\n\n    return this._fs;\n  }\n\n  set fs(_) {\n    throw new Error("app.fs is 
read-only");\n  }\n\n  get language() {\n    return this._language;\n  }\n\n  set language(_) {\n    throw 
new Error("app.language is read-only");\n  }\n\n  get media() {\n    return undefined;\n  }\n\n  set media(_) 
{\n    throw new Error("app.media is read-only");\n  }\n\n  get monitors() {\n    return [];\n  }\n\n  set 
monitors(_) {\n    throw new Error("app.monitors is read-only");\n  }\n\n  get numPlugins() {\n    return 
0;\n  }\n\n  set numPlugins(_) {\n    throw new Error("app.numPlugins is read-only");\n  }\n\n  get 
openInPlace() {\n    return this._openInPlace;\n  }\n\n  set openInPlace(val) {\n    this._openInPlace = 
val;\n  }\n\n  get platform() {\n    return this._platform;\n  }\n\n  set platform(_) {\n    throw new 
Error("app.platform is read-only");\n  }\n\n  get plugins() {\n 
    return [];\n  }\n\n  set plugins(_) {\n    throw new Error("app.plugins is read-only");\n  }\n\n  get 
printColorProfiles() {\n    return [];\n  }\n\n  set printColorProfiles(_) {\n    throw new 
Error("app.printColorProfiles is read-only");\n  }\n\n  get printerNames() {\n    return [];\n  }\n\n  set 
printerNames(_) {\n    throw new Error("app.printerNames is read-only");\n  }\n\n  get runtimeHighlight() {\n 
   return this._runtimeHighlight;\n  }\n\n  set runtimeHighlight(val) {\n    this._runtimeHighlight = val;\n  
}\n\n  get runtimeHighlightColor() {\n    return this._runtimeHighlightColor;\n  }\n\n  set 
runtimeHighlightColor(val) {\n    if (_color.Color._isValidColor(val)) {\n      this._runtimeHighlightColor = 
val;\n    }\n  }\n\n  get thermometer() {\n    if (this._thermometer === null) {\n      this._thermometer = 
new Proxy(new _thermometer.Thermometer({\n        send: this._send\n      }), this._proxyHandler);\n    }\n\n 
   return this._thermometer;\n  }\n\n  set thermomete
 r(_) {\n    throw new Error("app.thermometer is read-only");\n  }\n\n  get toolbar() {\n    return 
this._toolbar;\n  }\n\n  set toolbar(val) {\n    this._toolbar = val;\n  }\n\n  get toolbarHorizontal() {\n   
 return this.toolbar;\n  }\n\n  set toolbarHorizontal(value) {\n    this.toolbar = value;\n  }\n\n  get 
toolbarVertical() {\n    return this.toolbar;\n  }\n\n  set toolbarVertical(value) {\n    this.toolbar = 
value;\n  }\n\n  get viewerType() {\n    return VIEWER_TYPE;\n  }\n\n  set viewerType(_) {\n    throw new 
Error("app.viewerType is read-only");\n  }\n\n  get viewerVariation() {\n    return VIEWER_VARIATION;\n  
}\n\n  set viewerVariation(_) {\n    throw new Error("app.viewerVariation is read-only");\n  }\n\n  get 
viewerVersion() {\n    return VIEWER_VERSION;\n  }\n\n  set viewerVersion(_) {\n    throw new 
Error("app.viewerVersion is read-only");\n  }\n\n  addMenuItem() {}\n\n  addSubMenu() {}\n\n  addToolButton() 
{}\n\n  alert(cMsg, nIcon = 0, nType = 0, cTitle = "PDF.js",
  oDoc = null, oCheckbox = null) {\n    if (typeof cMsg === "object") {\n      nType = cMsg.nType;\n      
cMsg = cMsg.cMsg;\n    }\n\n    cMsg = (cMsg || "").toString();\n    nType = typeof nType !== "number" || 
isNaN(nType) || nType < 0 || nType > 3 ? 0 : nType;\n\n    if (nType >= 2) {\n      return 
this._externalCall("confirm", [cMsg]) ? 4 : 3;\n    }\n\n    this._externalCall("alert", [cMsg]);\n\n    
return 1;\n  }\n\n  beep() {}\n\n  beginPriv() {}\n\n  browseForDoc() {}\n\n  clearInterval(oInterval) {\n    
this._unregisterTimeout(oInterval);\n  }\n\n  clearTimeOut(oTime) {\n    this._unregisterTimeout(oTime);\n  
}\n\n  endPriv() {}\n\n  execDialog() {}\n\n  execMenuItem(item) {\n    switch (item) {\n      case 
"SaveAs":\n      case "FirstPage":\n      case "LastPage":\n      case "NextPage":\n      case "PrevPage":\n  
    case "ZoomViewIn":\n      case "ZoomViewOut":\n        this._send({\n          command: item\n        
});\n\n        break;\n\n      case "FitPage":\n        
 this._send({\n          command: "zoom",\n          value: "page-fit"\n        });\n\n        break;\n\n     
 case "Print":\n        this._send({\n          command: "print"\n        });\n\n        break;\n    }\n  
}\n\n  getNthPlugInName() {}\n\n  getPath() {}\n\n  goBack() {}\n\n  goForward() {}\n\n  hideMenuItem() 
{}\n\n  hideToolbarButton() {}\n\n  launchURL() {}\n\n  listMenuItems() {}\n\n  listToolbarButtons() {}\n\n  
loadPolicyFile() {}\n\n  mailGetAddrs() {}\n\n  mailMsg() {}\n\n  newDoc() {}\n\n  newCollection() {}\n\n  
newFDF() {}\n\n  openDoc() {}\n\n  openFDF() {}\n\n  popUpMenu() {}\n\n  popUpMenuEx() {}\n\n  
removeToolButton() {}\n\n  response(cQuestion, cTitle = "", cDefault = "", bPassword = "", cLabel = "") {\n   
 if (typeof cQuestion === "object") {\n      cDefault = cQuestion.cDefault;\n      cQuestion = 
cQuestion.cQuestion;\n    }\n\n    cQuestion = (cQuestion || "").toString();\n    cDefault = (cDefault || 
"").toString();\n    return this._externalCall("prompt",
  [cQuestion, cDefault || ""]);\n  }\n\n  setInterval(cExpr, nMilliseconds = 0) {\n    if (typeof cExpr === 
"object") {\n      nMilliseconds = cExpr.nMilliseconds || 0;\n      cExpr = cExpr.cExpr;\n    }\n\n    if 
(typeof cExpr !== "string") {\n      throw new TypeError("First argument of app.setInterval must be a 
string");\n    }\n\n    if (typeof nMilliseconds !== "number") {\n      throw new TypeError("Second argument 
of app.setInterval must be a number");\n    }\n\n    const callbackId = 
this._registerTimeoutCallback(cExpr);\n\n    this._externalCall("setInterval", [callbackId, 
nMilliseconds]);\n\n    return this._registerTimeout(callbackId, true);\n  }\n\n  setTimeOut(cExpr, 
nMilliseconds = 0) {\n    if (typeof cExpr === "object") {\n      nMilliseconds = cExpr.nMilliseconds || 0;\n 
     cExpr = cExpr.cExpr;\n    }\n\n    if (typeof cExpr !== "string") {\n      throw new TypeError("First 
argument of app.setTimeOut must be a string");\n    }\n\n    if (typeof nMilliseconds !== "n
 umber") {\n      throw new TypeError("Second argument of app.setTimeOut must be a number");\n    }\n\n    
const callbackId = this._registerTimeoutCallback(cExpr);\n\n    this._externalCall("setTimeout", [callbackId, 
nMilliseconds]);\n\n    return this._registerTimeout(callbackId, false);\n  }\n\n  trustedFunction() {}\n\n  
trustPropagatorFunction() {}\n\n}\n\nexports.App = App;\n\n/***/ }),\n/* 10 */\n/***/ 
((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: 
true\n}));\nexports.EventDispatcher = exports.Event = void 0;\n\nclass Event {\n  constructor(data) {\n    
this.change = data.change || "";\n    this.changeEx = data.changeEx || null;\n    this.commitKey = 
data.commitKey || 0;\n    this.fieldFull = data.fieldFull || false;\n    this.keyDown = data.keyDown || 
false;\n    this.modifier = data.modifier || false;\n    this.name = data.name;\n    this.rc = true;\n    
this.richChange = data.richChange || [];\n    this.richChangeEx 
 = data.richChangeEx || [];\n    this.richValue = data.richValue || [];\n    this.selEnd = data.selEnd || 
-1;\n    this.selStart = data.selStart || -1;\n    this.shift = data.shift || false;\n    this.source = 
data.source || null;\n    this.target = data.target || null;\n    this.targetName = "";\n    this.type = 
"Field";\n    this.value = data.value || "";\n    this.willCommit = data.willCommit || false;\n  
}\n\n}\n\nexports.Event = Event;\n\nclass EventDispatcher {\n  constructor(document, calculationOrder, 
objects) {\n    this._document = document;\n    this._calculationOrder = calculationOrder;\n    this._objects 
= objects;\n    this._document.obj._eventDispatcher = this;\n  }\n\n  mergeChange(event) {\n    let value = 
event.value;\n\n    if (typeof value !== "string") {\n      value = value.toString();\n    }\n\n    const 
prefix = event.selStart >= 0 ? value.substring(0, event.selStart) : "";\n    const postfix = event.selEnd >= 
0 && event.selEnd <= value.length ? value.substrin
 g(event.selEnd) : "";\n    return `${prefix}${event.change}${postfix}`;\n  }\n\n  dispatch(baseEvent) {\n    
const id = baseEvent.id;\n\n    if (!(id in this._objects)) {\n      let event;\n\n      if (id === "doc" || 
id === "page") {\n        event = globalThis.event = new Event(baseEvent);\n        event.source = 
event.target = this._document.wrapped;\n        event.name = baseEvent.name;\n      }\n\n      if (id === 
"doc") {\n        this._document.obj._dispatchDocEvent(event.name);\n      } else if (id === "page") {\n      
  this._document.obj._dispatchPageEvent(event.name, baseEvent.actions, baseEvent.pageNumber);\n      } else 
if (id === "app" && baseEvent.name === "ResetForm") {\n        for (const fieldId of baseEvent.ids) {\n       
   const obj = this._objects[fieldId];\n\n          if (obj) {\n            obj.obj._reset();\n          }\n  
      }\n      }\n\n      return;\n    }\n\n    const name = baseEvent.name;\n    const source = 
this._objects[id];\n    const event = g
 lobalThis.event = new Event(baseEvent);\n    let savedChange;\n\n    if (source.obj._isButton()) {\n      
source.obj._id = id;\n      event.value = source.obj._getExportValue(event.value);\n\n      if (name === 
"Action") {\n        source.obj._value = event.value;\n      }\n    }\n\n    switch (name) {\n      case 
"Keystroke":\n        savedChange = {\n          value: event.value,\n          change: event.change,\n       
   selStart: event.selStart,\n          selEnd: event.selEnd\n        };\n        break;\n\n      case 
"Blur":\n      case "Focus":\n        Object.defineProperty(event, "value", {\n          configurable: 
false,\n          writable: false,\n          enumerable: true,\n          value: event.value\n        });\n  
      break;\n\n      case "Validate":\n        this.runValidation(source, event);\n        return;\n\n      
case "Action":\n        this.runActions(source, source, event, name);\n\n        if 
(this._document.obj.calculate) {\n          this.runCalculate(
 source, event);\n        }\n\n        return;\n    }\n\n    this.runActions(source, source, event, 
name);\n\n    if (name === "Keystroke") {\n      if (event.rc) {\n        if (event.willCommit) {\n          
this.runValidation(source, event);\n        } else if (event.change !== savedChange.change || event.selStart 
!== savedChange.selStart || event.selEnd !== savedChange.selEnd) {\n          source.wrapped.value = 
this.mergeChange(event);\n        }\n      } else if (!event.willCommit) {\n        source.obj._send({\n      
    id: source.obj._id,\n          value: savedChange.value,\n          selRange: [savedChange.selStart, 
savedChange.selEnd]\n        });\n      }\n    }\n  }\n\n  runValidation(source, event) {\n    const hasRan = 
this.runActions(source, source, event, "Validate");\n\n    if (event.rc) {\n      if (hasRan) {\n        
source.wrapped.value = event.value;\n        source.wrapped.valueAsString = event.value;\n      } else {\n    
    source.obj.value = event.value;\n  
       source.obj.valueAsString = event.value;\n      }\n\n      if (this._document.obj.calculate) {\n        
this.runCalculate(source, event);\n      }\n\n      event.value = source.obj.value;\n      
this.runActions(source, source, event, "Format");\n      source.wrapped.valueAsString = event.value;\n    }\n 
 }\n\n  runActions(source, target, event, eventName) {\n    event.source = source.wrapped;\n    event.target 
= target.wrapped;\n    event.name = eventName;\n    event.targetName = target.obj.name;\n    event.rc = 
true;\n    return target.obj._runActions(event);\n  }\n\n  calculateNow() {\n    if (!this._calculationOrder) 
{\n      return;\n    }\n\n    const first = this._calculationOrder[0];\n    const source = 
this._objects[first];\n    globalThis.event = new Event({});\n    this.runCalculate(source, 
globalThis.event);\n  }\n\n  runCalculate(source, event) {\n    if (!this._calculationOrder) {\n      
return;\n    }\n\n    for (const targetId of this._calculationOrder) {\n      
 if (!(targetId in this._objects)) {\n        continue;\n      }\n\n      if (!this._document.obj.calculate) 
{\n        continue;\n      }\n\n      event.value = null;\n      const target = this._objects[targetId];\n   
   this.runActions(source, target, event, "Calculate");\n\n      if (!event.rc) {\n        continue;\n      
}\n\n      if (event.value !== null) {\n        target.wrapped.value = event.value;\n      }\n\n      
event.value = target.obj.value;\n      this.runActions(target, target, event, "Validate");\n\n      if 
(!event.rc) {\n        continue;\n      }\n\n      event.value = target.obj.value;\n      
this.runActions(target, target, event, "Format");\n\n      if (event.value !== null) {\n        
target.wrapped.valueAsString = event.value;\n      }\n    }\n  }\n\n}\n\nexports.EventDispatcher = 
EventDispatcher;\n\n/***/ }),\n/* 11 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => 
{\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}
 ));\nexports.FullScreen = void 0;\n\nvar _constants = __w_pdfjs_require__(2);\n\nvar _pdf_object = 
__w_pdfjs_require__(7);\n\nclass FullScreen extends _pdf_object.PDFObject {\n  constructor(data) {\n    
super(data);\n    this._backgroundColor = [];\n    this._clickAdvances = true;\n    this._cursor = 
_constants.Cursor.hidden;\n    this._defaultTransition = "";\n    this._escapeExits = true;\n    
this._isFullScreen = true;\n    this._loop = false;\n    this._timeDelay = 3600;\n    this._usePageTiming = 
false;\n    this._useTimer = false;\n  }\n\n  get backgroundColor() {\n    return this._backgroundColor;\n  
}\n\n  set backgroundColor(_) {}\n\n  get clickAdvances() {\n    return this._clickAdvances;\n  }\n\n  set 
clickAdvances(_) {}\n\n  get cursor() {\n    return this._cursor;\n  }\n\n  set cursor(_) {}\n\n  get 
defaultTransition() {\n    return this._defaultTransition;\n  }\n\n  set defaultTransition(_) {}\n\n  get 
escapeExits() {\n    return this._escapeExits;\n  }\n\n  set escape
 Exits(_) {}\n\n  get isFullScreen() {\n    return this._isFullScreen;\n  }\n\n  set isFullScreen(_) {}\n\n  
get loop() {\n    return this._loop;\n  }\n\n  set loop(_) {}\n\n  get timeDelay() {\n    return 
this._timeDelay;\n  }\n\n  set timeDelay(_) {}\n\n  get transitions() {\n    return ["Replace", "WipeRight", 
"WipeLeft", "WipeDown", "WipeUp", "SplitHorizontalIn", "SplitHorizontalOut", "SplitVerticalIn", 
"SplitVerticalOut", "BlindsHorizontal", "BlindsVertical", "BoxIn", "BoxOut", "GlitterRight", "GlitterDown", 
"GlitterRightDown", "Dissolve", "Random"];\n  }\n\n  set transitions(_) {\n    throw new 
Error("fullscreen.transitions is read-only");\n  }\n\n  get usePageTiming() {\n    return 
this._usePageTiming;\n  }\n\n  set usePageTiming(_) {}\n\n  get useTimer() {\n    return this._useTimer;\n  
}\n\n  set useTimer(_) {}\n\n}\n\nexports.FullScreen = FullScreen;\n\n/***/ }),\n/* 12 */\n/***/ 
((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(expo
 rts, "__esModule", ({\n  value: true\n}));\nexports.Thermometer = void 0;\n\nvar _pdf_object = 
__w_pdfjs_require__(7);\n\nclass Thermometer extends _pdf_object.PDFObject {\n  constructor(data) {\n    
super(data);\n    this._cancelled = false;\n    this._duration = 100;\n    this._text = "";\n    this._value 
= 0;\n  }\n\n  get cancelled() {\n    return this._cancelled;\n  }\n\n  set cancelled(_) {\n    throw new 
Error("thermometer.cancelled is read-only");\n  }\n\n  get duration() {\n    return this._duration;\n  }\n\n  
set duration(val) {\n    this._duration = val;\n  }\n\n  get text() {\n    return this._text;\n  }\n\n  set 
text(val) {\n    this._text = val;\n  }\n\n  get value() {\n    return this._value;\n  }\n\n  set value(val) 
{\n    this._value = val;\n  }\n\n  begin() {}\n\n  end() {}\n\n}\n\nexports.Thermometer = 
Thermometer;\n\n/***/ }),\n/* 13 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => 
{\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  v
 alue: true\n}));\nexports.Console = void 0;\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nclass Console 
extends _pdf_object.PDFObject {\n  clear() {\n    this._send({\n      id: "clear"\n    });\n  }\n\n  hide() 
{}\n\n  println(msg) {\n    if (typeof msg === "string") {\n      this._send({\n        command: "println",\n 
       value: "PDF.js Console:: " + msg\n      });\n    }\n  }\n\n  show() {}\n\n}\n\nexports.Console = 
Console;\n\n/***/ }),\n/* 14 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => 
{\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.Doc = void 0;\n\nvar 
_common = __w_pdfjs_require__(4);\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nvar _print_params = 
__w_pdfjs_require__(15);\n\nvar _constants = __w_pdfjs_require__(2);\n\nclass InfoProxyHandler {\n  static 
get(obj, prop) {\n    return obj[prop.toLowerCase()];\n  }\n\n  static set(obj, prop, value) {\n    throw new 
Error(`doc.info.${prop} is read-only`);\n  
 }\n\n}\n\nclass Doc extends _pdf_object.PDFObject {\n  constructor(data) {\n    super(data);\n    
this._expandos = globalThis;\n    this._baseURL = data.baseURL || "";\n    this._calculate = true;\n    
this._delay = false;\n    this._dirty = false;\n    this._disclosed = false;\n    this._media = undefined;\n  
  this._metadata = data.metadata || "";\n    this._noautocomplete = undefined;\n    this._nocache = 
undefined;\n    this._spellDictionaryOrder = [];\n    this._spellLanguageOrder = [];\n    this._printParams = 
null;\n    this._fields = new Map();\n    this._fieldNames = [];\n    this._event = null;\n    this._author = 
data.Author || "";\n    this._creator = data.Creator || "";\n    this._creationDate = 
this._getDate(data.CreationDate) || null;\n    this._docID = data.docID || ["", ""];\n    
this._documentFileName = data.filename || "";\n    this._filesize = data.filesize || 0;\n    this._keywords = 
data.Keywords || "";\n    this._layout = data.layout || "";\n    this._modDate 
 = this._getDate(data.ModDate) || null;\n    this._numFields = 0;\n    this._numPages = data.numPages || 1;\n 
   this._pageNum = data.pageNum || 0;\n    this._producer = data.Producer || "";\n    this._securityHandler = 
data.EncryptFilterName || null;\n    this._subject = data.Subject || "";\n    this._title = data.Title || 
"";\n    this._URL = data.URL || "";\n    this._info = new Proxy({\n      title: this._title,\n      author: 
this._author,\n      authors: data.authors || [this._author],\n      subject: this._subject,\n      keywords: 
this._keywords,\n      creator: this._creator,\n      producer: this._producer,\n      creationdate: 
this._creationDate,\n      moddate: this._modDate,\n      trapped: data.Trapped || "Unknown"\n    }, 
InfoProxyHandler);\n    this._zoomType = _constants.ZoomType.none;\n    this._zoom = data.zoom || 100;\n    
this._actions = (0, _common.createActionsMap)(data.actions);\n    this._globalEval = data.globalEval;\n    
this._pageActions = new Map();\n  }\
 n\n  _dispatchDocEvent(name) {\n    if (name === "Open") {\n      const dontRun = new Set(["WillClose", 
"WillSave", "DidSave", "WillPrint", "DidPrint", "OpenAction"]);\n\n      for (const actionName of 
this._actions.keys()) {\n        if (!dontRun.has(actionName)) {\n          this._runActions(actionName);\n   
     }\n      }\n\n      this._runActions("OpenAction");\n    } else {\n      this._runActions(name);\n    
}\n  }\n\n  _dispatchPageEvent(name, actions, pageNumber) {\n    if (name === "PageOpen") {\n      if 
(!this._pageActions.has(pageNumber)) {\n        this._pageActions.set(pageNumber, (0, 
_common.createActionsMap)(actions));\n      }\n\n      this._pageNum = pageNumber - 1;\n    }\n\n    actions 
= this._pageActions.get(pageNumber)?.get(name);\n\n    if (actions) {\n      for (const action of actions) 
{\n        this._globalEval(action);\n      }\n    }\n  }\n\n  _runActions(name) {\n    const actions = 
this._actions.get(name);\n\n    if (actions) {\n      for (const actio
 n of actions) {\n        this._globalEval(action);\n      }\n    }\n  }\n\n  _addField(name, field) {\n    
this._fields.set(name, field);\n\n    this._fieldNames.push(name);\n\n    this._numFields++;\n  }\n\n  
_getDate(date) {\n    if (!date || date.length < 15 || !date.startsWith("D:")) {\n      return date;\n    
}\n\n    date = date.substring(2);\n    const year = date.substring(0, 4);\n    const month = 
date.substring(4, 6);\n    const day = date.substring(6, 8);\n    const hour = date.substring(8, 10);\n    
const minute = date.substring(10, 12);\n    const o = date.charAt(12);\n    let second, offsetPos;\n\n    if 
(o === "Z" || o === "+" || o === "-") {\n      second = "00";\n      offsetPos = 12;\n    } else {\n      
second = date.substring(12, 14);\n      offsetPos = 14;\n    }\n\n    const offset = 
date.substring(offsetPos).replaceAll("\'", "");\n    return new 
Date(`${year}-${month}-${day}T${hour}:${minute}:${second}${offset}`);\n  }\n\n  get author() {\n    return 
this._aut
 hor;\n  }\n\n  set author(_) {\n    throw new Error("doc.author is read-only");\n  }\n\n  get baseURL() {\n  
  return this._baseURL;\n  }\n\n  set baseURL(baseURL) {\n    this._baseURL = baseURL;\n  }\n\n  get 
bookmarkRoot() {\n    return undefined;\n  }\n\n  set bookmarkRoot(_) {\n    throw new 
Error("doc.bookmarkRoot is read-only");\n  }\n\n  get calculate() {\n    return this._calculate;\n  }\n\n  
set calculate(calculate) {\n    this._calculate = calculate;\n  }\n\n  get creator() {\n    return 
this._creator;\n  }\n\n  set creator(_) {\n    throw new Error("doc.creator is read-only");\n  }\n\n  get 
dataObjects() {\n    return [];\n  }\n\n  set dataObjects(_) {\n    throw new Error("doc.dataObjects is 
read-only");\n  }\n\n  get delay() {\n    return this._delay;\n  }\n\n  set delay(delay) {\n    this._delay = 
delay;\n  }\n\n  get dirty() {\n    return this._dirty;\n  }\n\n  set dirty(dirty) {\n    this._dirty = 
dirty;\n  }\n\n  get disclosed() {\n    return this._disclosed;\n  }\n
 \n  set disclosed(disclosed) {\n    this._disclosed = disclosed;\n  }\n\n  get docID() {\n    return 
this._docID;\n  }\n\n  set docID(_) {\n    throw new Error("doc.docID is read-only");\n  }\n\n  get 
documentFileName() {\n    return this._documentFileName;\n  }\n\n  set documentFileName(_) {\n    throw new 
Error("doc.documentFileName is read-only");\n  }\n\n  get dynamicXFAForm() {\n    return false;\n  }\n\n  set 
dynamicXFAForm(_) {\n    throw new Error("doc.dynamicXFAForm is read-only");\n  }\n\n  get external() {\n    
return true;\n  }\n\n  set external(_) {\n    throw new Error("doc.external is read-only");\n  }\n\n  get 
filesize() {\n    return this._filesize;\n  }\n\n  set filesize(_) {\n    throw new Error("doc.filesize is 
read-only");\n  }\n\n  get hidden() {\n    return false;\n  }\n\n  set hidden(_) {\n    throw new 
Error("doc.hidden is read-only");\n  }\n\n  get hostContainer() {\n    return undefined;\n  }\n\n  set 
hostContainer(_) {\n    throw new Error("doc.hostContai
 ner is read-only");\n  }\n\n  get icons() {\n    return undefined;\n  }\n\n  set icons(_) {\n    throw new 
Error("doc.icons is read-only");\n  }\n\n  get info() {\n    return this._info;\n  }\n\n  set info(_) {\n    
throw new Error("doc.info is read-only");\n  }\n\n  get innerAppWindowRect() {\n    return [0, 0, 0, 0];\n  
}\n\n  set innerAppWindowRect(_) {\n    throw new Error("doc.innerAppWindowRect is read-only");\n  }\n\n  get 
innerDocWindowRect() {\n    return [0, 0, 0, 0];\n  }\n\n  set innerDocWindowRect(_) {\n    throw new 
Error("doc.innerDocWindowRect is read-only");\n  }\n\n  get isModal() {\n    return false;\n  }\n\n  set 
isModal(_) {\n    throw new Error("doc.isModal is read-only");\n  }\n\n  get keywords() {\n    return 
this._keywords;\n  }\n\n  set keywords(_) {\n    throw new Error("doc.keywords is read-only");\n  }\n\n  get 
layout() {\n    return this._layout;\n  }\n\n  set layout(value) {\n    if (typeof value !== "string") {\n    
  return;\n    }\n\n    if (value !
 == "SinglePage" && value !== "OneColumn" && value !== "TwoColumnLeft" && value !== "TwoPageLeft" && value 
!== "TwoColumnRight" && value !== "TwoPageRight") {\n      value = "SinglePage";\n    }\n\n    this._send({\n 
     command: "layout",\n      value\n    });\n\n    this._layout = value;\n  }\n\n  get media() {\n    
return this._media;\n  }\n\n  set media(media) {\n    this._media = media;\n  }\n\n  get metadata() {\n    
return this._metadata;\n  }\n\n  set metadata(metadata) {\n    this._metadata = metadata;\n  }\n\n  get 
modDate() {\n    return this._modDate;\n  }\n\n  set modDate(_) {\n    throw new Error("doc.modDate is 
read-only");\n  }\n\n  get mouseX() {\n    return 0;\n  }\n\n  set mouseX(_) {\n    throw new 
Error("doc.mouseX is read-only");\n  }\n\n  get mouseY() {\n    return 0;\n  }\n\n  set mouseY(_) {\n    
throw new Error("doc.mouseY is read-only");\n  }\n\n  get noautocomplete() {\n    return 
this._noautocomplete;\n  }\n\n  set noautocomplete(noautocomplete) {\n    t
 his._noautocomplete = noautocomplete;\n  }\n\n  get nocache() {\n    return this._nocache;\n  }\n\n  set 
nocache(nocache) {\n    this._nocache = nocache;\n  }\n\n  get numFields() {\n    return this._numFields;\n  
}\n\n  set numFields(_) {\n    throw new Error("doc.numFields is read-only");\n  }\n\n  get numPages() {\n    
return this._numPages;\n  }\n\n  set numPages(_) {\n    throw new Error("doc.numPages is read-only");\n  
}\n\n  get numTemplates() {\n    return 0;\n  }\n\n  set numTemplates(_) {\n    throw new 
Error("doc.numTemplates is read-only");\n  }\n\n  get outerAppWindowRect() {\n    return [0, 0, 0, 0];\n  
}\n\n  set outerAppWindowRect(_) {\n    throw new Error("doc.outerAppWindowRect is read-only");\n  }\n\n  get 
outerDocWindowRect() {\n    return [0, 0, 0, 0];\n  }\n\n  set outerDocWindowRect(_) {\n    throw new 
Error("doc.outerDocWindowRect is read-only");\n  }\n\n  get pageNum() {\n    return this._pageNum;\n  }\n\n  
set pageNum(value) {\n    if (typeof value !== "num
 ber" || value < 0 || value >= this._numPages) {\n      return;\n    }\n\n    this._send({\n      command: 
"page-num",\n      value\n    });\n\n    this._pageNum = value;\n  }\n\n  get pageWindowRect() {\n    return 
[0, 0, 0, 0];\n  }\n\n  set pageWindowRect(_) {\n    throw new Error("doc.pageWindowRect is read-only");\n  
}\n\n  get path() {\n    return "";\n  }\n\n  set path(_) {\n    throw new Error("doc.path is read-only");\n  
}\n\n  get permStatusReady() {\n    return true;\n  }\n\n  set permStatusReady(_) {\n    throw new 
Error("doc.permStatusReady is read-only");\n  }\n\n  get producer() {\n    return this._producer;\n  }\n\n  
set producer(_) {\n    throw new Error("doc.producer is read-only");\n  }\n\n  get requiresFullSave() {\n    
return false;\n  }\n\n  set requiresFullSave(_) {\n    throw new Error("doc.requiresFullSave is 
read-only");\n  }\n\n  get securityHandler() {\n    return this._securityHandler;\n  }\n\n  set 
securityHandler(_) {\n    throw new Error("doc.securityH
 andler is read-only");\n  }\n\n  get selectedAnnots() {\n    return [];\n  }\n\n  set selectedAnnots(_) {\n  
  throw new Error("doc.selectedAnnots is read-only");\n  }\n\n  get sounds() {\n    return [];\n  }\n\n  set 
sounds(_) {\n    throw new Error("doc.sounds is read-only");\n  }\n\n  get spellDictionaryOrder() {\n    
return this._spellDictionaryOrder;\n  }\n\n  set spellDictionaryOrder(spellDictionaryOrder) {\n    
this._spellDictionaryOrder = spellDictionaryOrder;\n  }\n\n  get spellLanguageOrder() {\n    return 
this._spellLanguageOrder;\n  }\n\n  set spellLanguageOrder(spellLanguageOrder) {\n    
this._spellLanguageOrder = spellLanguageOrder;\n  }\n\n  get subject() {\n    return this._subject;\n  }\n\n  
set subject(_) {\n    throw new Error("doc.subject is read-only");\n  }\n\n  get templates() {\n    return 
[];\n  }\n\n  set templates(_) {\n    throw new Error("doc.templates is read-only");\n  }\n\n  get title() 
{\n    return this._title;\n  }\n\n  set title(_) {\n    throw ne
 w Error("doc.title is read-only");\n  }\n\n  get URL() {\n    return this._URL;\n  }\n\n  set URL(_) {\n    
throw new Error("doc.URL is read-only");\n  }\n\n  get viewState() {\n    return undefined;\n  }\n\n  set 
viewState(_) {\n    throw new Error("doc.viewState is read-only");\n  }\n\n  get xfa() {\n    return 
this._xfa;\n  }\n\n  set xfa(_) {\n    throw new Error("doc.xfa is read-only");\n  }\n\n  get XFAForeground() 
{\n    return false;\n  }\n\n  set XFAForeground(_) {\n    throw new Error("doc.XFAForeground is 
read-only");\n  }\n\n  get zoomType() {\n    return this._zoomType;\n  }\n\n  set zoomType(type) {\n    if 
(typeof type !== "string") {\n      return;\n    }\n\n    switch (type) {\n      case 
_constants.ZoomType.none:\n        this._send({\n          command: "zoom",\n          value: 1\n        
});\n\n        break;\n\n      case _constants.ZoomType.fitP:\n        this._send({\n          command: 
"zoom",\n          value: "page-fit"\n        });\n\n        break;\n\n  
     case _constants.ZoomType.fitW:\n        this._send({\n          command: "zoom",\n          value: 
"page-width"\n        });\n\n        break;\n\n      case _constants.ZoomType.fitH:\n        this._send({\n   
       command: "zoom",\n          value: "page-height"\n        });\n\n        break;\n\n      case 
_constants.ZoomType.fitV:\n        this._send({\n          command: "zoom",\n          value: "auto"\n        
});\n\n        break;\n\n      case _constants.ZoomType.pref:\n      case _constants.ZoomType.refW:\n        
break;\n\n      default:\n        return;\n    }\n\n    this._zoomType = type;\n  }\n\n  get zoom() {\n    
return this._zoom;\n  }\n\n  set zoom(value) {\n    if (typeof value !== "number" || value < 8.33 || value > 
6400) {\n      return;\n    }\n\n    this._send({\n      command: "zoom",\n      value: value / 100\n    
});\n  }\n\n  addAnnot() {}\n\n  addField() {}\n\n  addIcon() {}\n\n  addLink() {}\n\n  
addRecipientListCryptFilter() {}\n\n  addRequirement() 
 {}\n\n  addScript() {}\n\n  addThumbnails() {}\n\n  addWatermarkFromFile() {}\n\n  addWatermarkFromText() 
{}\n\n  addWeblinks() {}\n\n  bringToFront() {}\n\n  calculateNow() {\n    
this._eventDispatcher.calculateNow();\n  }\n\n  closeDoc() {}\n\n  colorConvertPage() {}\n\n  
createDataObject() {}\n\n  createTemplate() {}\n\n  deletePages() {}\n\n  deleteSound() {}\n\n  
embedDocAsDataObject() {}\n\n  embedOutputIntent() {}\n\n  encryptForRecipients() {}\n\n  
encryptUsingPolicy() {}\n\n  exportAsFDF() {}\n\n  exportAsFDFStr() {}\n\n  exportAsText() {}\n\n  
exportAsXFDF() {}\n\n  exportAsXFDFStr() {}\n\n  exportDataObject() {}\n\n  exportXFAData() {}\n\n  
extractPages() {}\n\n  flattenPages() {}\n\n  getAnnot() {}\n\n  getAnnots() {}\n\n  getAnnot3D() {}\n\n  
getAnnots3D() {}\n\n  getColorConvertAction() {}\n\n  getDataObject() {}\n\n  getDataObjectContents() {}\n\n  
getField(cName) {\n    if (typeof cName === "object") {\n      cName = cName.cName;\n    }\n\n    if (typeof 
cName !== "s
 tring") {\n      throw new TypeError("Invalid field name: must be a string");\n    }\n\n    const 
searchedField = this._fields.get(cName);\n\n    if (searchedField) {\n      return searchedField;\n    }\n\n  
  const parts = cName.split("#");\n    let childIndex = NaN;\n\n    if (parts.length === 2) {\n      
childIndex = Math.floor(parseFloat(parts[1]));\n      cName = parts[0];\n    }\n\n    for (const [name, 
field] of this._fields.entries()) {\n      if (name.endsWith(cName)) {\n        if (!isNaN(childIndex)) {\n   
       const children = this._getChildren(name);\n\n          if (childIndex < 0 || childIndex >= 
children.length) {\n            childIndex = 0;\n          }\n\n          if (childIndex < children.length) 
{\n            this._fields.set(cName, children[childIndex]);\n\n            return children[childIndex];\n   
       }\n        }\n\n        this._fields.set(cName, field);\n\n        return field;\n      }\n    }\n\n   
 return null;\n  }\n\n  _getChildren(fieldName) 
 {\n    const len = fieldName.length;\n    const children = [];\n    const pattern = /^\\.[^.]+$/;\n\n    for 
(const [name, field] of this._fields.entries()) {\n      if (name.startsWith(fieldName)) {\n        const 
finalPart = name.slice(len);\n\n        if (finalPart.match(pattern)) {\n          children.push(field);\n    
    }\n      }\n    }\n\n    return children;\n  }\n\n  getIcon() {}\n\n  getLegalWarnings() {}\n\n  
getLinks() {}\n\n  getNthFieldName(nIndex) {\n    if (typeof nIndex === "object") {\n      nIndex = 
nIndex.nIndex;\n    }\n\n    if (typeof nIndex !== "number") {\n      throw new TypeError("Invalid field 
index: must be a number");\n    }\n\n    if (0 <= nIndex && nIndex < this.numFields) {\n      return 
this._fieldNames[Math.trunc(nIndex)];\n    }\n\n    return null;\n  }\n\n  getNthTemplate() {\n    return 
null;\n  }\n\n  getOCGs() {}\n\n  getOCGOrder() {}\n\n  getPageBox() {}\n\n  getPageLabel() {}\n\n  
getPageNthWord() {}\n\n  getPageNthWordQuads() {}\n\n  getP
 ageNumWords() {}\n\n  getPageRotation() {}\n\n  getPageTransition() {}\n\n  getPrintParams() {\n    if 
(!this._printParams) {\n      this._printParams = new _print_params.PrintParams({\n        lastPage: 
this._numPages - 1\n      });\n    }\n\n    return this._printParams;\n  }\n\n  getSound() {}\n\n  
getTemplate() {}\n\n  getURL() {}\n\n  gotoNamedDest() {}\n\n  importAnFDF() {}\n\n  importAnXFDF() {}\n\n  
importDataObject() {}\n\n  importIcon() {}\n\n  importSound() {}\n\n  importTextData() {}\n\n  
importXFAData() {}\n\n  insertPages() {}\n\n  mailDoc() {}\n\n  mailForm() {}\n\n  movePage() {}\n\n  
newPage() {}\n\n  openDataObject() {}\n\n  print(bUI = true, nStart = 0, nEnd = -1, bSilent = false, 
bShrinkToFit = false, bPrintAsImage = false, bReverse = false, bAnnotations = true, printParams = null) {\n   
 if (typeof bUI === "object") {\n      nStart = bUI.nStart;\n      nEnd = bUI.nEnd;\n      bSilent = 
bUI.bSilent;\n      bShrinkToFit = bUI.bShrinkToFit;\n      bPrintAsImage = b
 UI.bPrintAsImage;\n      bReverse = bUI.bReverse;\n      bAnnotations = bUI.bAnnotations;\n      printParams 
= bUI.printParams;\n      bUI = bUI.bUI;\n    }\n\n    if (printParams) {\n      nStart = 
printParams.firstPage;\n      nEnd = printParams.lastPage;\n    }\n\n    if (typeof nStart === "number") {\n  
    nStart = Math.max(0, Math.trunc(nStart));\n    } else {\n      nStart = 0;\n    }\n\n    if (typeof nEnd 
=== "number") {\n      nEnd = Math.max(0, Math.trunc(nEnd));\n    } else {\n      nEnd = -1;\n    }\n\n    
this._send({\n      command: "print",\n      start: nStart,\n      end: nEnd\n    });\n  }\n\n  
removeDataObject() {}\n\n  removeField() {}\n\n  removeIcon() {}\n\n  removeLinks() {}\n\n  
removeRequirement() {}\n\n  removeScript() {}\n\n  removeTemplate() {}\n\n  removeThumbnails() {}\n\n  
removeWeblinks() {}\n\n  replacePages() {}\n\n  resetForm(aFields = null) {\n    if (aFields && 
!Array.isArray(aFields) && typeof aFields === "object") {\n      aFields = aFields.aF
 ields;\n    }\n\n    let mustCalculate = false;\n\n    if (aFields) {\n      for (const fieldName of 
aFields) {\n        if (!fieldName) {\n          continue;\n        }\n\n        const field = 
this.getField(fieldName);\n\n        if (!field) {\n          continue;\n        }\n\n        field.value = 
field.defaultValue;\n        field.valueAsString = field.value;\n        mustCalculate = true;\n      }\n    
} else {\n      mustCalculate = this._fields.size !== 0;\n\n      for (const field of this._fields.values()) 
{\n        field.value = field.defaultValue;\n        field.valueAsString = field.value;\n      }\n    }\n\n  
  if (mustCalculate) {\n      this.calculateNow();\n    }\n  }\n\n  saveAs() {}\n\n  scroll() {}\n\n  
selectPageNthWord() {}\n\n  setAction() {}\n\n  setDataObjectContents() {}\n\n  setOCGOrder() {}\n\n  
setPageAction() {}\n\n  setPageBoxes() {}\n\n  setPageLabels() {}\n\n  setPageRotations() {}\n\n  
setPageTabOrder() {}\n\n  setPageTransitions() {}\n\n  spawnPag
 eFromTemplate() {}\n\n  submitForm() {}\n\n  syncAnnotScan() {}\n\n}\n\nexports.Doc = Doc;\n\n/***/ }),\n/* 
15 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", 
({\n  value: true\n}));\nexports.PrintParams = void 0;\n\nclass PrintParams {\n  constructor(data) {\n    
this.binaryOk = true;\n    this.bitmapDPI = 150;\n    this.booklet = {\n      binding: 0,\n      duplexMode: 
0,\n      subsetFrom: 0,\n      subsetTo: -1\n    };\n    this.colorOverride = 0;\n    this.colorProfile = 
"";\n    this.constants = Object.freeze({\n      bookletBindings: Object.freeze({\n        Left: 0,\n        
Right: 1,\n        LeftTall: 2,\n        RightTall: 3\n      }),\n      bookletDuplexMode: Object.freeze({\n  
      BothSides: 0,\n        FrontSideOnly: 1,\n        BasicSideOnly: 2\n      }),\n      colorOverrides: 
Object.freeze({\n        auto: 0,\n        gray: 1,\n        mono: 2\n      }),\n      fontPolicies: 
Object.freeze({\n        everyPage
 : 0,\n        jobStart: 1,\n        pageRange: 2\n      }),\n      handling: Object.freeze({\n        none: 
0,\n        fit: 1,\n        shrink: 2,\n        tileAll: 3,\n        tileLarge: 4,\n        nUp: 5,\n        
booklet: 6\n      }),\n      interactionLevel: Object.freeze({\n        automatic: 0,\n        full: 1,\n     
   silent: 2\n      }),\n      nUpPageOrders: Object.freeze({\n        Horizontal: 0,\n        
HorizontalReversed: 1,\n        Vertical: 2\n      }),\n      printContents: Object.freeze({\n        doc: 
0,\n        docAndComments: 1,\n        formFieldsOnly: 2\n      }),\n      flagValues: Object.freeze({\n     
   applyOverPrint: 1,\n        applySoftProofSettings: 1 << 1,\n        applyWorkingColorSpaces: 1 << 2,\n    
    emitHalftones: 1 << 3,\n        emitPostScriptXObjects: 1 << 4,\n        emitFormsAsPSForms: 1 << 5,\n    
    maxJP2KRes: 1 << 6,\n        setPageSize: 1 << 7,\n        suppressBG: 1 << 8,\n        suppressCenter: 1 
<< 9,\n        suppressCJKF
 ontSubst: 1 << 10,\n        suppressCropClip: 1 << 1,\n        suppressRotate: 1 << 12,\n        
suppressTransfer: 1 << 13,\n        suppressUCR: 1 << 14,\n        useTrapAnnots: 1 << 15,\n        
usePrintersMarks: 1 << 16\n      }),\n      rasterFlagValues: Object.freeze({\n        textToOutline: 1,\n    
    strokesToOutline: 1 << 1,\n        allowComplexClip: 1 << 2,\n        preserveOverprint: 1 << 3\n      
}),\n      subsets: Object.freeze({\n        all: 0,\n        even: 1,\n        odd: 2\n      }),\n      
tileMarks: Object.freeze({\n        none: 0,\n        west: 1,\n        east: 2\n      }),\n      usages: 
Object.freeze({\n        auto: 0,\n        use: 1,\n        noUse: 2\n      })\n    });\n    
this.downloadFarEastFonts = false;\n    this.fileName = "";\n    this.firstPage = 0;\n    this.flags = 0;\n   
 this.fontPolicy = 0;\n    this.gradientDPI = 150;\n    this.interactive = 1;\n    this.lastPage = 
data.lastPage;\n    this.npUpAutoRotate = false;\n    this.npUpNumPage
 sH = 2;\n    this.npUpNumPagesV = 2;\n    this.npUpPageBorder = false;\n    this.npUpPageOrder = 0;\n    
this.pageHandling = 0;\n    this.pageSubset = 0;\n    this.printAsImage = false;\n    this.printContent = 
0;\n    this.printerName = "";\n    this.psLevel = 0;\n    this.rasterFlags = 0;\n    this.reversePages = 
false;\n    this.tileLabel = false;\n    this.tileMark = 0;\n    this.tileOverlap = 0;\n    this.tileScale = 
1.0;\n    this.transparencyLevel = 75;\n    this.usePrinterCRD = 0;\n    this.useT1Conversion = 0;\n  
}\n\n}\n\nexports.PrintParams = PrintParams;\n\n/***/ }),\n/* 16 */\n/***/ ((__unused_webpack_module, 
exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: 
true\n}));\nexports.ProxyHandler = void 0;\n\nclass ProxyHandler {\n  constructor() {\n    this.nosend = new 
Set(["delay"]);\n  }\n\n  get(obj, prop) {\n    if (prop in obj._expandos) {\n      const val = 
obj._expandos[prop];\n\n      if (typeof val === "function") {\n        return val.
 bind(obj);\n      }\n\n      return val;\n    }\n\n    if (typeof prop === "string" && !prop.startsWith("_") 
&& prop in obj) {\n      const val = obj[prop];\n\n      if (typeof val === "function") {\n        return 
val.bind(obj);\n      }\n\n      return val;\n    }\n\n    return undefined;\n  }\n\n  set(obj, prop, value) 
{\n    if (obj._kidIds) {\n      obj._kidIds.forEach(id => {\n        obj._appObjects[id].wrapped[prop] = 
value;\n      });\n    }\n\n    if (typeof prop === "string" && !prop.startsWith("_") && prop in obj) {\n     
 const old = obj[prop];\n      obj[prop] = value;\n\n      if (!this.nosend.has(prop) && obj._send && obj._id 
!== null && typeof old !== "function") {\n        const data = {\n          id: obj._id\n        };\n        
data[prop] = obj[prop];\n\n        if (!obj._siblings) {\n          obj._send(data);\n        } else {\n      
    data.siblings = obj._siblings;\n\n          obj._send(data);\n        }\n      }\n    } else {\n      
obj._expandos[prop] = 
 value;\n    }\n\n    return true;\n  }\n\n  has(obj, prop) {\n    return prop in obj._expandos || typeof 
prop === "string" && !prop.startsWith("_") && prop in obj;\n  }\n\n  getPrototypeOf(obj) {\n    return 
null;\n  }\n\n  setPrototypeOf(obj, proto) {\n    return false;\n  }\n\n  isExtensible(obj) {\n    return 
true;\n  }\n\n  preventExtensions(obj) {\n    return false;\n  }\n\n  getOwnPropertyDescriptor(obj, prop) {\n 
   if (prop in obj._expandos) {\n      return {\n        configurable: true,\n        enumerable: true,\n     
   value: obj._expandos[prop]\n      };\n    }\n\n    if (typeof prop === "string" && !prop.startsWith("_") 
&& prop in obj) {\n      return {\n        configurable: true,\n        enumerable: true,\n        value: 
obj[prop]\n      };\n    }\n\n    return undefined;\n  }\n\n  defineProperty(obj, key, descriptor) {\n    
Object.defineProperty(obj._expandos, key, descriptor);\n    return true;\n  }\n\n  deleteProperty(obj, prop) 
{\n    if (prop in obj._expandos) 
 {\n      delete obj._expandos[prop];\n    }\n  }\n\n  ownKeys(obj) {\n    const fromExpandos = 
Reflect.ownKeys(obj._expandos);\n    const fromObj = Reflect.ownKeys(obj).filter(k => !k.startsWith("_"));\n  
  return fromExpandos.concat(fromObj);\n  }\n\n}\n\nexports.ProxyHandler = ProxyHandler;\n\n/***/ }),\n/* 17 
*/\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, 
"__esModule", ({\n  value: true\n}));\nexports.Util = void 0;\n\nvar _pdf_object = 
__w_pdfjs_require__(7);\n\nclass Util extends _pdf_object.PDFObject {\n  constructor(data) {\n    
super(data);\n    this._scandCache = new Map();\n    this._months = ["January", "February", "March", "April", 
"May", "June", "July", "August", "September", "October", "November", "December"];\n    this._days = 
["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];\n    this.MILLISECONDS_IN_DAY 
= 86400000;\n    this.MILLISECONDS_IN_WEEK = 604800000;\n    this._exter
 nalCall = data.externalCall;\n  }\n\n  printf(...args) {\n    if (args.length === 0) {\n      throw new 
Error("Invalid number of params in printf");\n    }\n\n    if (typeof args[0] !== "string") {\n      throw 
new TypeError("First argument of printf must be a string");\n    }\n\n    const pattern = /%(,[0-4])?([+ 
0#]+)?(\\d+)?(\\.\\d+)?(.)/g;\n    const PLUS = 1;\n    const SPACE = 2;\n    const ZERO = 4;\n    const HASH 
= 8;\n    let i = 0;\n    return args[0].replace(pattern, function (match, nDecSep, cFlags, nWidth, 
nPrecision, cConvChar) {\n      if (cConvChar !== "d" && cConvChar !== "f" && cConvChar !== "s" && cConvChar 
!== "x") {\n        const buf = ["%"];\n\n        for (const str of [nDecSep, cFlags, nWidth, nPrecision, 
cConvChar]) {\n          if (str) {\n            buf.push(str);\n          }\n        }\n\n        return 
buf.join("");\n      }\n\n      i++;\n\n      if (i === args.length) {\n        throw new Error("Not enough 
arguments in printf");\n      }\n\n      c
 onst arg = args[i];\n\n      if (cConvChar === "s") {\n        return arg.toString();\n      }\n\n      let 
flags = 0;\n\n      if (cFlags) {\n        for (const flag of cFlags) {\n          switch (flag) {\n          
  case "+":\n              flags |= PLUS;\n              break;\n\n            case " ":\n              flags 
|= SPACE;\n              break;\n\n            case "0":\n              flags |= ZERO;\n              
break;\n\n            case "#":\n              flags |= HASH;\n              break;\n          }\n        }\n 
     }\n\n      cFlags = flags;\n\n      if (nWidth) {\n        nWidth = parseInt(nWidth);\n      }\n\n      
let intPart = Math.trunc(arg);\n\n      if (cConvChar === "x") {\n        let hex = 
Math.abs(intPart).toString(16).toUpperCase();\n\n        if (nWidth !== undefined) {\n          hex = 
hex.padStart(nWidth, cFlags & ZERO ? "0" : " ");\n        }\n\n        if (cFlags & HASH) {\n          hex = 
`0x${hex}`;\n        }\n\n        return hex;\n      
 }\n\n      if (nPrecision) {\n        nPrecision = parseInt(nPrecision.substring(1));\n      }\n\n      
nDecSep = nDecSep ? nDecSep.substring(1) : "0";\n      const separators = {\n        0: [",", "."],\n        
1: ["", "."],\n        2: [".", ","],\n        3: ["", ","],\n        4: ["\'", "."]\n      };\n      const 
[thousandSep, decimalSep] = separators[nDecSep];\n      let decPart = "";\n\n      if (cConvChar === "f") {\n 
       if (nPrecision !== undefined) {\n          decPart = Math.abs(arg - intPart).toFixed(nPrecision);\n    
    } else {\n          decPart = Math.abs(arg - intPart).toString();\n        }\n\n        if 
(decPart.length > 2) {\n          decPart = `${decimalSep}${decPart.substring(2)}`;\n        } else if 
(cFlags & HASH) {\n          decPart = ".";\n        } else {\n          decPart = "";\n        }\n      
}\n\n      let sign = "";\n\n      if (intPart < 0) {\n        sign = "-";\n        intPart = -intPart;\n     
 } else if (cFlags & PLUS) {\n        sign 
 = "+";\n      } else if (cFlags & SPACE) {\n        sign = " ";\n      }\n\n      if (thousandSep && intPart 
= 1000) {\n        const buf = [];\n\n        while (true) {\n          buf.push((intPart % 
1000).toString().padStart(3, "0"));\n          intPart = Math.trunc(intPart / 1000);\n\n          if (intPart 
< 1000) {\n            buf.push(intPart.toString());\n            break;\n          }\n        }\n\n        
intPart = buf.reverse().join(thousandSep);\n      } else {\n        intPart = intPart.toString();\n      
}\n\n      let n = `${intPart}${decPart}`;\n\n      if (nWidth !== undefined) {\n        n = 
n.padStart(nWidth - sign.length, cFlags & ZERO ? "0" : " ");\n      }\n\n      return `${sign}${n}`;\n    
});\n  }\n\n  iconStreamFromIcon() {}\n\n  printd(cFormat, oDate) {\n    switch (cFormat) {\n      case 0:\n  
      return this.printd("D:yyyymmddHHMMss", oDate);\n\n      case 1:\n        return this.printd("yyyy.mm.dd 
HH:MM:ss", oDate);\n\n      case 2:\n        return t
 his.printd("m/d/yy h:MM:ss tt", oDate);\n    }\n\n    const handlers = {\n      mmmm: data => {\n        
return this._months[data.month];\n      },\n      mmm: data => {\n        return 
this._months[data.month].substring(0, 3);\n      },\n      mm: data => {\n        return (data.month + 
1).toString().padStart(2, "0");\n      },\n      m: data => {\n        return (data.month + 1).toString();\n  
    },\n      dddd: data => {\n        return this._days[data.dayOfWeek];\n      },\n      ddd: data => {\n   
     return this._days[data.dayOfWeek].substring(0, 3);\n      },\n      dd: data => {\n        return 
data.day.toString().padStart(2, "0");\n      },\n      d: data => {\n        return data.day.toString();\n    
  },\n      yyyy: data => {\n        return data.year.toString();\n      },\n      yy: data => {\n        
return (data.year % 100).toString().padStart(2, "0");\n      },\n      HH: data => {\n        return 
data.hours.toString().padStart(2, "0");\n      },\n      H: data => 
 {\n        return data.hours.toString();\n      },\n      hh: data => {\n        return (1 + (data.hours + 
11) % 12).toString().padStart(2, "0");\n      },\n      h: data => {\n        return (1 + (data.hours + 11) % 
12).toString();\n      },\n      MM: data => {\n        return data.minutes.toString().padStart(2, "0");\n    
  },\n      M: data => {\n        return data.minutes.toString();\n      },\n      ss: data => {\n        
return data.seconds.toString().padStart(2, "0");\n      },\n      s: data => {\n        return 
data.seconds.toString();\n      },\n      tt: data => {\n        return data.hours < 12 ? "am" : "pm";\n      
},\n      t: data => {\n        return data.hours < 12 ? "a" : "p";\n      }\n    };\n    const data = {\n    
  year: oDate.getFullYear(),\n      month: oDate.getMonth(),\n      day: oDate.getDate(),\n      dayOfWeek: 
oDate.getDay(),\n      hours: oDate.getHours(),\n      minutes: oDate.getMinutes(),\n      seconds: 
oDate.getSeconds()\n    };\n    const pat
 terns = /(mmmm|mmm|mm|m|dddd|ddd|dd|d|yyyy|yy|HH|H|hh|h|MM|M|ss|s|tt|t|\\\\.)/g;\n    return 
cFormat.replace(patterns, function (match, pattern) {\n      if (pattern in handlers) {\n        return 
handlers[pattern](data);\n      }\n\n      return pattern.charCodeAt(1);\n    });\n  }\n\n  printx(cFormat, 
cSource) {\n    const handlers = [x => x, x => x.toUpperCase(), x => x.toLowerCase()];\n    const buf = [];\n 
   let i = 0;\n    const ii = cSource.length;\n    let currCase = handlers[0];\n    let escaped = false;\n\n  
  for (const command of cFormat) {\n      if (escaped) {\n        buf.push(command);\n        escaped = 
false;\n        continue;\n      }\n\n      if (i >= ii) {\n        break;\n      }\n\n      switch (command) 
{\n        case "?":\n          buf.push(currCase(cSource.charAt(i++)));\n          break;\n\n        case 
"X":\n          while (i < ii) {\n            const char = cSource.charAt(i++);\n\n            if ("a" <= 
char && char <= "z" || "A" <= char && char <=
  "Z" || "0" <= char && char <= "9") {\n              buf.push(currCase(char));\n              break;\n       
     }\n          }\n\n          break;\n\n        case "A":\n          while (i < ii) {\n            const 
char = cSource.charAt(i++);\n\n            if ("a" <= char && char <= "z" || "A" <= char && char <= "Z") {\n  
            buf.push(currCase(char));\n              break;\n            }\n          }\n\n          
break;\n\n        case "9":\n          while (i < ii) {\n            const char = cSource.charAt(i++);\n\n    
        if ("0" <= char && char <= "9") {\n              buf.push(char);\n              break;\n            
}\n          }\n\n          break;\n\n        case "*":\n          while (i < ii) {\n            
buf.push(currCase(cSource.charAt(i++)));\n          }\n\n          break;\n\n        case "\\\\":\n          
escaped = true;\n          break;\n\n        case ">":\n          currCase = handlers[1];\n          
break;\n\n        case "<":\n          currC
 ase = handlers[2];\n          break;\n\n        case "=":\n          currCase = handlers[0];\n          
break;\n\n        default:\n          buf.push(command);\n      }\n    }\n\n    return buf.join("");\n  }\n\n 
 scand(cFormat, cDate) {\n    if (cDate === "") {\n      return new Date();\n    }\n\n    switch (cFormat) 
{\n      case 0:\n        return this.scand("D:yyyymmddHHMMss", cDate);\n\n      case 1:\n        return 
this.scand("yyyy.mm.dd HH:MM:ss", cDate);\n\n      case 2:\n        return this.scand("m/d/yy h:MM:ss tt", 
cDate);\n    }\n\n    if (!this._scandCache.has(cFormat)) {\n      const months = this._months;\n      const 
days = this._days;\n      const handlers = {\n        mmmm: {\n          pattern: `(${months.join("|")})`,\n  
        action: (value, data) => {\n            data.month = months.indexOf(value);\n          }\n        
},\n        mmm: {\n          pattern: `(${months.map(month => month.substring(0, 3)).join("|")})`,\n         
 action: (value, data) => {\n
             data.month = months.findIndex(month => month.substring(0, 3) === value);\n          }\n        
},\n        mm: {\n          pattern: `(\\\\d{2})`,\n          action: (value, data) => {\n            
data.month = parseInt(value) - 1;\n          }\n        },\n        m: {\n          pattern: 
`(\\\\d{1,2})`,\n          action: (value, data) => {\n            data.month = parseInt(value) - 1;\n        
  }\n        },\n        dddd: {\n          pattern: `(${days.join("|")})`,\n          action: (value, data) 
=> {\n            data.day = days.indexOf(value);\n          }\n        },\n        ddd: {\n          
pattern: `(${days.map(day => day.substring(0, 3)).join("|")})`,\n          action: (value, data) => {\n       
     data.day = days.findIndex(day => day.substring(0, 3) === value);\n          }\n        },\n        dd: 
{\n          pattern: "(\\\\d{2})",\n          action: (value, data) => {\n            data.day = 
parseInt(value);\n          }\n        },\n        d: {\n
           pattern: "(\\\\d{1,2})",\n          action: (value, data) => {\n            data.day = 
parseInt(value);\n          }\n        },\n        yyyy: {\n          pattern: "(\\\\d{4})",\n          
action: (value, data) => {\n            data.year = parseInt(value);\n          }\n        },\n        yy: 
{\n          pattern: "(\\\\d{2})",\n          action: (value, data) => {\n            data.year = 2000 + 
parseInt(value);\n          }\n        },\n        HH: {\n          pattern: "(\\\\d{2})",\n          action: 
(value, data) => {\n            data.hours = parseInt(value);\n          }\n        },\n        H: {\n        
  pattern: "(\\\\d{1,2})",\n          action: (value, data) => {\n            data.hours = parseInt(value);\n 
         }\n        },\n        hh: {\n          pattern: "(\\\\d{2})",\n          action: (value, data) => 
{\n            data.hours = parseInt(value);\n          }\n        },\n        h: {\n          pattern: 
"(\\\\d{1,2})",\n          action: (value
 , data) => {\n            data.hours = parseInt(value);\n          }\n        },\n        MM: {\n          
pattern: "(\\\\d{2})",\n          action: (value, data) => {\n            data.minutes = parseInt(value);\n   
       }\n        },\n        M: {\n          pattern: "(\\\\d{1,2})",\n          action: (value, data) => 
{\n            data.minutes = parseInt(value);\n          }\n        },\n        ss: {\n          pattern: 
"(\\\\d{2})",\n          action: (value, data) => {\n            data.seconds = parseInt(value);\n          
}\n        },\n        s: {\n          pattern: "(\\\\d{1,2})",\n          action: (value, data) => {\n       
     data.seconds = parseInt(value);\n          }\n        },\n        tt: {\n          pattern: 
"([aApP][mM])",\n          action: (value, data) => {\n            const char = value.charAt(0);\n            
data.am = char === "a" || char === "A";\n          }\n        },\n        t: {\n          pattern: 
"([aApP])",\n          action: (value, dat
 a) => {\n            data.am = value === "a" || value === "A";\n          }\n        }\n      };\n      
const escapedFormat = cFormat.replace(/[.*+\\-?^${}()|[\\]\\\\]/g, "\\\\$&");\n      const patterns = 
/(mmmm|mmm|mm|m|dddd|ddd|dd|d|yyyy|yy|HH|H|hh|h|MM|M|ss|s|tt|t)/g;\n      const actions = [];\n      const re 
= escapedFormat.replace(patterns, function (match, patternElement) {\n        const {\n          pattern,\n   
       action\n        } = handlers[patternElement];\n        actions.push(action);\n        return 
pattern;\n      });\n\n      this._scandCache.set(cFormat, [re, actions]);\n    }\n\n    const [re, actions] 
= this._scandCache.get(cFormat);\n\n    const matches = new RegExp(re, "g").exec(cDate);\n\n    if (!matches 
|| matches.length !== actions.length + 1) {\n      return null;\n    }\n\n    const data = {\n      year: 
0,\n      month: 0,\n      day: 0,\n      hours: 0,\n      minutes: 0,\n      seconds: 0,\n      am: null\n   
 };\n    actions.forEach((action, i) 
 => action(matches[i + 1], data));\n\n    if (data.am !== null) {\n      data.hours = data.hours % 12 + 
(data.am ? 0 : 12);\n    }\n\n    return new Date(data.year, data.month, data.day, data.hours, data.minutes, 
data.seconds);\n  }\n\n  spansToXML() {}\n\n  stringFromStream() {}\n\n  xmlToSpans() {}\n\n}\n\nexports.Util 
= Util;\n\n/***/ })\n/******/ 
\t]);\n/************************************************************************/\n/******/ \t// The module 
cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require 
function\n/******/ \tfunction __w_pdfjs_require__(moduleId) {\n/******/ \t\t// Check if module is in 
cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== 
undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new 
module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = 
{\n/******/ \t\t\t// no module
 .id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ 
\t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, 
module.exports, __w_pdfjs_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the 
module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ 
\t\n/************************************************************************/\nvar __webpack_exports__ = 
{};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the 
chunk.\n(() => {\nvar exports = __webpack_exports__;\n\n\nObject.defineProperty(exports, "__esModule", ({\n  
value: true\n}));\nObject.defineProperty(exports, "initSandbox", ({\n  enumerable: true,\n  get: function () 
{\n    return _initialization.initSandbox;\n  }\n}));\n\nvar _initialization = 
__w_pdfjs_require__(1);\n\nconst pdfjsVersion = \'2.12.313\';\nconst pdfjsBuild = 
\'a2ae56f39\';\n})();\n\n/******
 / \treturn __webpack_exports__;\n/******/ })()\n;\n});'];
+    const code = ['(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.scripting", [], factory);\n\telse if(typeof 
exports === \'object\')\n\t\texports["pdfjs-dist/build/pdf.scripting"] = 
factory();\n\telse\n\t\troot.pdfjsScripting = factory();\n})(this, function() {\nreturn /******/ (() => { // 
webpackBootstrap\n/******/ \t"use strict";\n/******/ \tvar __webpack_modules__ = ([\n/* 0 */,\n/* 1 */\n/***/ 
((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, 
"__esModule", ({\n  value: true\n}));\nexports.initSandbox = initSandbox;\n\nvar _constants = 
__w_pdfjs_require__(2);\n\nvar _field = __w_pdfjs_require__(3);\n\nvar _aform = 
__w_pdfjs_require__(8);\n\nvar _app = __w_pdfjs_require__(9);\n\nvar _color = __w_pdfjs_require__(5);\n\nvar 
_conso
 le = __w_pdfjs_require__(13);\n\nvar _doc = __w_pdfjs_require__(14);\n\nvar _proxy = 
__w_pdfjs_require__(16);\n\nvar _util = __w_pdfjs_require__(17);\n\nfunction initSandbox(params) {\n  delete 
globalThis.pdfjsScripting;\n  const externalCall = globalThis.callExternalFunction;\n  delete 
globalThis.callExternalFunction;\n\n  const globalEval = code => globalThis.eval(code);\n\n  const send = 
data => externalCall("send", [data]);\n\n  const proxyHandler = new _proxy.ProxyHandler();\n  const {\n    
data\n  } = params;\n  const doc = new _doc.Doc({\n    send,\n    globalEval,\n    ...data.docInfo\n  });\n  
const _document = {\n    obj: doc,\n    wrapped: new Proxy(doc, proxyHandler)\n  };\n  const app = new 
_app.App({\n    send,\n    globalEval,\n    externalCall,\n    _document,\n    calculationOrder: 
data.calculationOrder,\n    proxyHandler,\n    ...data.appInfo\n  });\n  const util = new _util.Util({\n    
externalCall\n  });\n  const appObjects = app._objects;\n\n  if (data.objects) 
 {\n    const annotations = [];\n\n    for (const [name, objs] of Object.entries(data.objects)) {\n      
annotations.length = 0;\n      let container = null;\n\n      for (const obj of objs) {\n        if (obj.type 
!== "") {\n          annotations.push(obj);\n        } else {\n          container = obj;\n        }\n      
}\n\n      let obj = container;\n\n      if (annotations.length > 0) {\n        obj = annotations[0];\n       
 obj.send = send;\n      }\n\n      obj.globalEval = globalEval;\n      obj.doc = _document;\n      
obj.fieldPath = name;\n      obj.appObjects = appObjects;\n      let field;\n\n      switch (obj.type) {\n    
    case "radiobutton":\n          {\n            const otherButtons = annotations.slice(1);\n            
field = new _field.RadioButtonField(otherButtons, obj);\n            break;\n          }\n\n        case 
"checkbox":\n          {\n            const otherButtons = annotations.slice(1);\n            field = new 
_field.CheckboxField(otherButtons, obj
 );\n            break;\n          }\n\n        case "text":\n          if (annotations.length <= 1) {\n      
      field = new _field.Field(obj);\n            break;\n          }\n\n          obj.siblings = 
annotations.map(x => x.id).slice(1);\n          field = new _field.Field(obj);\n          break;\n\n        
default:\n          field = new _field.Field(obj);\n      }\n\n      const wrapped = new Proxy(field, 
proxyHandler);\n\n      doc._addField(name, wrapped);\n\n      const _object = {\n        obj: field,\n       
 wrapped\n      };\n\n      for (const object of objs) {\n        appObjects[object.id] = _object;\n      
}\n\n      if (container) {\n        appObjects[container.id] = _object;\n      }\n    }\n  }\n\n  const 
color = new _color.Color();\n  globalThis.event = null;\n  globalThis.global = Object.create(null);\n  
globalThis.app = new Proxy(app, proxyHandler);\n  globalThis.color = new Proxy(color, proxyHandler);\n  
globalThis.console = new Proxy(new _console.Console(
 {\n    send\n  }), proxyHandler);\n  globalThis.util = new Proxy(util, proxyHandler);\n  globalThis.border = 
_constants.Border;\n  globalThis.cursor = _constants.Cursor;\n  globalThis.display = _constants.Display;\n  
globalThis.font = _constants.Font;\n  globalThis.highlight = _constants.Highlight;\n  globalThis.position = 
_constants.Position;\n  globalThis.scaleHow = _constants.ScaleHow;\n  globalThis.scaleWhen = 
_constants.ScaleWhen;\n  globalThis.style = _constants.Style;\n  globalThis.trans = _constants.Trans;\n  
globalThis.zoomtype = _constants.ZoomType;\n  globalThis.ADBE = {\n    Reader_Value_Asked: true,\n    
Viewer_Value_Asked: true\n  };\n  const aform = new _aform.AForm(doc, app, util, color);\n\n  for (const name 
of Object.getOwnPropertyNames(_aform.AForm.prototype)) {\n    if (name !== "constructor" && 
!name.startsWith("_")) {\n      globalThis[name] = aform[name].bind(aform);\n    }\n  }\n\n  for (const 
[name, value] of Object.entries(_constants.GlobalConstants)) {\n  
   Object.defineProperty(globalThis, name, {\n      value,\n      writable: false\n    });\n  }\n\n  
Object.defineProperties(globalThis, {\n    ColorConvert: {\n      value: color.convert.bind(color),\n      
writable: true\n    },\n    ColorEqual: {\n      value: color.equal.bind(color),\n      writable: true\n    
}\n  });\n  const properties = Object.create(null);\n\n  for (const name of 
Object.getOwnPropertyNames(_doc.Doc.prototype)) {\n    if (name === "constructor" || name.startsWith("_")) 
{\n      continue;\n    }\n\n    const descriptor = Object.getOwnPropertyDescriptor(_doc.Doc.prototype, 
name);\n\n    if (descriptor.get) {\n      properties[name] = {\n        get: descriptor.get.bind(doc),\n     
   set: descriptor.set.bind(doc)\n      };\n    } else {\n      properties[name] = {\n        value: 
_doc.Doc.prototype[name].bind(doc)\n      };\n    }\n  }\n\n  Object.defineProperties(globalThis, 
properties);\n  const functions = {\n    dispatchEvent: app._dispatchEvent.bind(app),\
 n    timeoutCb: app._evalCallback.bind(app)\n  };\n  return (name, args) => {\n    try {\n      
functions[name](args);\n    } catch (error) {\n      const value = `${error.toString()}\\n${error.stack}`;\n  
    send({\n        command: "error",\n        value\n      });\n    }\n  };\n}\n\n/***/ }),\n/* 2 */\n/***/ 
((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: 
true\n}));\nexports.ZoomType = exports.Trans = exports.Style = exports.ScaleWhen = exports.ScaleHow = 
exports.Position = exports.Highlight = exports.GlobalConstants = exports.Font = exports.Display = 
exports.Cursor = exports.Border = void 0;\nconst Border = Object.freeze({\n  s: "solid",\n  d: "dashed",\n  
b: "beveled",\n  i: "inset",\n  u: "underline"\n});\nexports.Border = Border;\nconst Cursor = 
Object.freeze({\n  visible: 0,\n  hidden: 1,\n  delay: 2\n});\nexports.Cursor = Cursor;\nconst Display = 
Object.freeze({\n  visible: 0,\n  hidden: 1,\n  noPrint: 2,\n  noView
 : 3\n});\nexports.Display = Display;\nconst Font = Object.freeze({\n  Times: "Times-Roman",\n  TimesB: 
"Times-Bold",\n  TimesI: "Times-Italic",\n  TimesBI: "Times-BoldItalic",\n  Helv: "Helvetica",\n  HelvB: 
"Helvetica-Bold",\n  HelvI: "Helvetica-Oblique",\n  HelvBI: "Helvetica-BoldOblique",\n  Cour: "Courier",\n  
CourB: "Courier-Bold",\n  CourI: "Courier-Oblique",\n  CourBI: "Courier-BoldOblique",\n  Symbol: "Symbol",\n  
ZapfD: "ZapfDingbats",\n  KaGo: "HeiseiKakuGo-W5-UniJIS-UCS2-H",\n  KaMi: 
"HeiseiMin-W3-UniJIS-UCS2-H"\n});\nexports.Font = Font;\nconst Highlight = Object.freeze({\n  n: "none",\n  
i: "invert",\n  p: "push",\n  o: "outline"\n});\nexports.Highlight = Highlight;\nconst Position = 
Object.freeze({\n  textOnly: 0,\n  iconOnly: 1,\n  iconTextV: 2,\n  textIconV: 3,\n  iconTextH: 4,\n  
textIconH: 5,\n  overlay: 6\n});\nexports.Position = Position;\nconst ScaleHow = Object.freeze({\n  
proportional: 0,\n  anamorphic: 1\n});\nexports.ScaleHow = ScaleHow;\nconst ScaleWhen = O
 bject.freeze({\n  always: 0,\n  never: 1,\n  tooBig: 2,\n  tooSmall: 3\n});\nexports.ScaleWhen = 
ScaleWhen;\nconst Style = Object.freeze({\n  ch: "check",\n  cr: "cross",\n  di: "diamond",\n  ci: 
"circle",\n  st: "star",\n  sq: "square"\n});\nexports.Style = Style;\nconst Trans = Object.freeze({\n  
blindsH: "BlindsHorizontal",\n  blindsV: "BlindsVertical",\n  boxI: "BoxIn",\n  boxO: "BoxOut",\n  dissolve: 
"Dissolve",\n  glitterD: "GlitterDown",\n  glitterR: "GlitterRight",\n  glitterRD: "GlitterRightDown",\n  
random: "Random",\n  replace: "Replace",\n  splitHI: "SplitHorizontalIn",\n  splitHO: "SplitHorizontalOut",\n 
 splitVI: "SplitVerticalIn",\n  splitVO: "SplitVerticalOut",\n  wipeD: "WipeDown",\n  wipeL: "WipeLeft",\n  
wipeR: "WipeRight",\n  wipeU: "WipeUp"\n});\nexports.Trans = Trans;\nconst ZoomType = Object.freeze({\n  
none: "NoVary",\n  fitP: "FitPage",\n  fitW: "FitWidth",\n  fitH: "FitHeight",\n  fitV: "FitVisibleWidth",\n  
pref: "Preferred",\n  refW: "ReflowWidth"\n});\ne
 xports.ZoomType = ZoomType;\nconst GlobalConstants = Object.freeze({\n  IDS_GREATER_THAN: "Invalid value: 
must be greater than or equal to % s.",\n  IDS_GT_AND_LT: "Invalid value: must be greater than or equal to % 
s " + "and less than or equal to % s.",\n  IDS_LESS_THAN: "Invalid value: must be less than or equal to % 
s.",\n  IDS_INVALID_MONTH: "** Invalid **",\n  IDS_INVALID_DATE: "Invalid date / time: please ensure that the 
date / time exists.Field",\n  IDS_INVALID_DATE2: " should match format ",\n  IDS_INVALID_VALUE: "The value 
entered does not match the format of the field",\n  IDS_AM: "am",\n  IDS_PM: "pm",\n  IDS_MONTH_INFO: 
"January[1] February[2] March[3] April[4] May[5] " + "June[6] July[7] August[8] September[9] October[10] " + 
"November[11] December[12] Sept[9] Jan[1] Feb[2] Mar[3] " + "Apr[4] Jun[6] Jul[7] Aug[8] Sep[9] Oct[10] 
Nov[11] Dec[12]",\n  IDS_STARTUP_CONSOLE_MSG: "** ^ _ ^ **",\n  RE_NUMBER_ENTRY_DOT_SEP: 
["[+-]?\\\\d*\\\\.?\\\\d*"],\n  RE_NUMBER_COMMIT_DOT_SE
 P: ["[+-]?\\\\d+(\\\\.\\\\d+)?", "[+-]?\\\\.\\\\d+", "[+-]?\\\\d+\\\\."],\n  RE_NUMBER_ENTRY_COMMA_SEP: 
["[+-]?\\\\d*,?\\\\d*"],\n  RE_NUMBER_COMMIT_COMMA_SEP: ["[+-]?\\\\d+([.,]\\\\d+)?", "[+-]?[.,]\\\\d+", 
"[+-]?\\\\d+[.,]"],\n  RE_ZIP_ENTRY: ["\\\\d{0,5}"],\n  RE_ZIP_COMMIT: ["\\\\d{5}"],\n  RE_ZIP4_ENTRY: 
["\\\\d{0,5}(\\\\.|[- ])?\\\\d{0,4}"],\n  RE_ZIP4_COMMIT: ["\\\\d{5}(\\\\.|[- ])?\\\\d{4}"],\n  
RE_PHONE_ENTRY: ["\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,4}", "\\\\(\\\\d{0,3}", 
"\\\\(\\\\d{0,3}\\\\)(\\\\.|[- ])?\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,4}", "\\\\(\\\\d{0,3}(\\\\.|[- 
])?\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,4}", "\\\\d{0,3}\\\\)(\\\\.|[- ])?\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,4}", 
"011(\\\\.|[- \\\\d])*"],\n  RE_PHONE_COMMIT: ["\\\\d{3}(\\\\.|[- ])?\\\\d{4}", "\\\\d{3}(\\\\.|[- 
])?\\\\d{3}(\\\\.|[- ])?\\\\d{4}", "\\\\(\\\\d{3}\\\\)(\\\\.|[- ])?\\\\d{3}(\\\\.|[- ])?\\\\d{4}", 
"011(\\\\.|[- \\\\d])*"],\n  RE_SSN_ENTRY: ["\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,2}(\\\\.|[- ])?\\\\d
 {0,4}"],\n  RE_SSN_COMMIT: ["\\\\d{3}(\\\\.|[- ])?\\\\d{2}(\\\\.|[- 
])?\\\\d{4}"]\n});\nexports.GlobalConstants = GlobalConstants;\n\n/***/ }),\n/* 3 */\n/***/ 
((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, 
"__esModule", ({\n  value: true\n}));\nexports.RadioButtonField = exports.Field = exports.CheckboxField = 
void 0;\n\nvar _common = __w_pdfjs_require__(4);\n\nvar _color = __w_pdfjs_require__(5);\n\nvar _pdf_object = 
__w_pdfjs_require__(7);\n\nclass Field extends _pdf_object.PDFObject {\n  constructor(data) {\n    
super(data);\n    this.alignment = data.alignment || "left";\n    this.borderStyle = data.borderStyle || 
"";\n    this.buttonAlignX = data.buttonAlignX || 50;\n    this.buttonAlignY = data.buttonAlignY || 50;\n    
this.buttonFitBounds = data.buttonFitBounds;\n    this.buttonPosition = data.buttonPosition;\n    
this.buttonScaleHow = data.buttonScaleHow;\n    this.ButtonScaleWhen = data.buttonScaleWhen;\n    this.calcOrd
 erIndex = data.calcOrderIndex;\n    this.charLimit = data.charLimit;\n    this.comb = data.comb;\n    
this.commitOnSelChange = data.commitOnSelChange;\n    this.currentValueIndices = data.currentValueIndices;\n  
  this.defaultStyle = data.defaultStyle;\n    this.defaultValue = data.defaultValue;\n    this.doNotScroll = 
data.doNotScroll;\n    this.doNotSpellCheck = data.doNotSpellCheck;\n    this.delay = data.delay;\n    
this.display = data.display;\n    this.doc = data.doc.wrapped;\n    this.editable = data.editable;\n    
this.exportValues = data.exportValues;\n    this.fileSelect = data.fileSelect;\n    this.hidden = 
data.hidden;\n    this.highlight = data.highlight;\n    this.lineWidth = data.lineWidth;\n    this.multiline 
= data.multiline;\n    this.multipleSelection = !!data.multipleSelection;\n    this.name = data.name;\n    
this.password = data.password;\n    this.print = data.print;\n    this.radiosInUnison = 
data.radiosInUnison;\n    this.readonly = data.readonly;\n    this.
 rect = data.rect;\n    this.required = data.required;\n    this.richText = data.richText;\n    
this.richValue = data.richValue;\n    this.rotation = data.rotation;\n    this.style = data.style;\n    
this.submitName = data.submitName;\n    this.textFont = data.textFont;\n    this.textSize = data.textSize;\n  
  this.type = data.type;\n    this.userName = data.userName;\n    this._actions = (0, 
_common.createActionsMap)(data.actions);\n    this._browseForFileToSubmit = data.browseForFileToSubmit || 
null;\n    this._buttonCaption = null;\n    this._buttonIcon = null;\n    this._children = null;\n    
this._currentValueIndices = data.currentValueIndices || 0;\n    this._document = data.doc;\n    
this._fieldPath = data.fieldPath;\n    this._fillColor = data.fillColor || ["T"];\n    this._isChoice = 
Array.isArray(data.items);\n    this._items = data.items || [];\n    this._page = data.page || 0;\n    
this._strokeColor = data.strokeColor || ["G", 0];\n    this._textColor = data.textColor || 
 ["G", 0];\n    this._value = data.value || "";\n    this._kidIds = data.kidIds || null;\n    this._fieldType 
= (0, _common.getFieldType)(this._actions);\n    this._siblings = data.siblings || null;\n    
this._globalEval = data.globalEval;\n    this._appObjects = data.appObjects;\n    this.valueAsString = 
data.valueAsString || this._value;\n  }\n\n  get currentValueIndices() {\n    if (!this._isChoice) {\n      
return 0;\n    }\n\n    return this._currentValueIndices;\n  }\n\n  set currentValueIndices(indices) {\n    
if (!this._isChoice) {\n      return;\n    }\n\n    if (!Array.isArray(indices)) {\n      indices = 
[indices];\n    }\n\n    if (!indices.every(i => typeof i === "number" && Number.isInteger(i) && i >= 0 && i 
< this.numItems)) {\n      return;\n    }\n\n    indices.sort();\n\n    if (this.multipleSelection) {\n      
this._currentValueIndices = indices;\n      this._value = [];\n      indices.forEach(i => {\n        
this._value.push(this._items[i].displayValue);\n      })
 ;\n    } else {\n      if (indices.length > 0) {\n        indices = indices.splice(1, indices.length - 1);\n 
       this._currentValueIndices = indices[0];\n        this._value = 
this._items[this._currentValueIndices];\n      }\n    }\n\n    this._send({\n      id: this._id,\n      
indices\n    });\n  }\n\n  get fillColor() {\n    return this._fillColor;\n  }\n\n  set fillColor(color) {\n  
  if (_color.Color._isValidColor(color)) {\n      this._fillColor = color;\n    }\n  }\n\n  get bgColor() {\n 
   return this.fillColor;\n  }\n\n  set bgColor(color) {\n    this.fillColor = color;\n  }\n\n  get 
numItems() {\n    if (!this._isChoice) {\n      throw new Error("Not a choice widget");\n    }\n\n    return 
this._items.length;\n  }\n\n  set numItems(_) {\n    throw new Error("field.numItems is read-only");\n  }\n\n 
 get strokeColor() {\n    return this._strokeColor;\n  }\n\n  set strokeColor(color) {\n    if 
(_color.Color._isValidColor(color)) {\n      this._strokeColor = color;\n    }\n
   }\n\n  get borderColor() {\n    return this.strokeColor;\n  }\n\n  set borderColor(color) {\n    
this.strokeColor = color;\n  }\n\n  get page() {\n    return this._page;\n  }\n\n  set page(_) {\n    throw 
new Error("field.page is read-only");\n  }\n\n  get textColor() {\n    return this._textColor;\n  }\n\n  set 
textColor(color) {\n    if (_color.Color._isValidColor(color)) {\n      this._textColor = color;\n    }\n  
}\n\n  get fgColor() {\n    return this.textColor;\n  }\n\n  set fgColor(color) {\n    this.textColor = 
color;\n  }\n\n  get value() {\n    return this._value;\n  }\n\n  set value(value) {\n    if (value === "") 
{\n      this._value = "";\n    } else if (typeof value === "string") {\n      switch (this._fieldType) {\n   
     case _common.FieldType.number:\n        case _common.FieldType.percent:\n          value = 
parseFloat(value);\n\n          if (!isNaN(value)) {\n            this._value = value;\n          }\n\n       
   break;\n\n        default:\n          this.
 _value = value;\n      }\n    } else {\n      this._value = value;\n    }\n\n    if (this._isChoice) {\n     
 if (this.multipleSelection) {\n        const values = new Set(value);\n        
this._currentValueIndices.length = 0;\n\n        this._items.forEach(({\n          displayValue\n        }, 
i) => {\n          if (values.has(displayValue)) {\n            this._currentValueIndices.push(i);\n          
}\n        });\n      } else {\n        this._currentValueIndices = this._items.findIndex(({\n          
displayValue\n        }) => value === displayValue);\n      }\n    }\n  }\n\n  get valueAsString() {\n    if 
(this._valueAsString === undefined) {\n      this._valueAsString = this._value ? this._value.toString() : 
"";\n    }\n\n    return this._valueAsString;\n  }\n\n  set valueAsString(val) {\n    this._valueAsString = 
val ? val.toString() : "";\n  }\n\n  browseForFileToSubmit() {\n    if (this._browseForFileToSubmit) {\n      
this._browseForFileToSubmit();\n    }\n  }\n\n  butto
 nGetCaption(nFace = 0) {\n    if (this._buttonCaption) {\n      return this._buttonCaption[nFace];\n    
}\n\n    return "";\n  }\n\n  buttonGetIcon(nFace = 0) {\n    if (this._buttonIcon) {\n      return 
this._buttonIcon[nFace];\n    }\n\n    return null;\n  }\n\n  buttonImportIcon(cPath = null, nPave = 0) 
{}\n\n  buttonSetCaption(cCaption, nFace = 0) {\n    if (!this._buttonCaption) {\n      this._buttonCaption = 
["", "", ""];\n    }\n\n    this._buttonCaption[nFace] = cCaption;\n  }\n\n  buttonSetIcon(oIcon, nFace = 0) 
{\n    if (!this._buttonIcon) {\n      this._buttonIcon = [null, null, null];\n    }\n\n    
this._buttonIcon[nFace] = oIcon;\n  }\n\n  checkThisBox(nWidget, bCheckIt = true) {}\n\n  clearItems() {\n    
if (!this._isChoice) {\n      throw new Error("Not a choice widget");\n    }\n\n    this._items = [];\n\n    
this._send({\n      id: this._id,\n      clear: null\n    });\n  }\n\n  deleteItemAt(nIdx = null) {\n    if 
(!this._isChoice) {\n      throw new Error("Not a c
 hoice widget");\n    }\n\n    if (!this.numItems) {\n      return;\n    }\n\n    if (nIdx === null) {\n      
nIdx = Array.isArray(this._currentValueIndices) ? this._currentValueIndices[0] : this._currentValueIndices;\n 
     nIdx = nIdx || 0;\n    }\n\n    if (nIdx < 0 || nIdx >= this.numItems) {\n      nIdx = this.numItems - 
1;\n    }\n\n    this._items.splice(nIdx, 1);\n\n    if (Array.isArray(this._currentValueIndices)) {\n      
let index = this._currentValueIndices.findIndex(i => i >= nIdx);\n\n      if (index !== -1) {\n        if 
(this._currentValueIndices[index] === nIdx) {\n          this._currentValueIndices.splice(index, 1);\n        
}\n\n        for (const ii = this._currentValueIndices.length; index < ii; index++) {\n          
--this._currentValueIndices[index];\n        }\n      }\n    } else {\n      if (this._currentValueIndices 
=== nIdx) {\n        this._currentValueIndices = this.numItems > 0 ? 0 : -1;\n      } else if 
(this._currentValueIndices > nIdx) {\n        --
 this._currentValueIndices;\n      }\n    }\n\n    this._send({\n      id: this._id,\n      remove: nIdx\n    
});\n  }\n\n  getItemAt(nIdx = -1, bExportValue = false) {\n    if (!this._isChoice) {\n      throw new 
Error("Not a choice widget");\n    }\n\n    if (nIdx < 0 || nIdx >= this.numItems) {\n      nIdx = 
this.numItems - 1;\n    }\n\n    const item = this._items[nIdx];\n    return bExportValue ? item.exportValue 
: item.displayValue;\n  }\n\n  getArray() {\n    if (this._kidIds) {\n      return this._kidIds.map(id => 
this._appObjects[id].wrapped);\n    }\n\n    if (this._children === null) {\n      this._children = 
this._document.obj._getChildren(this._fieldPath);\n    }\n\n    return this._children;\n  }\n\n  getLock() 
{\n    return undefined;\n  }\n\n  isBoxChecked(nWidget) {\n    return false;\n  }\n\n  
isDefaultChecked(nWidget) {\n    return false;\n  }\n\n  insertItemAt(cName, cExport = undefined, nIdx = 0) 
{\n    if (!this._isChoice) {\n      throw new Error("Not a choice 
 widget");\n    }\n\n    if (!cName) {\n      return;\n    }\n\n    if (nIdx < 0 || nIdx > this.numItems) {\n 
     nIdx = this.numItems;\n    }\n\n    if (this._items.some(({\n      displayValue\n    }) => displayValue 
=== cName)) {\n      return;\n    }\n\n    if (cExport === undefined) {\n      cExport = cName;\n    }\n\n    
const data = {\n      displayValue: cName,\n      exportValue: cExport\n    };\n\n    
this._items.splice(nIdx, 0, data);\n\n    if (Array.isArray(this._currentValueIndices)) {\n      let index = 
this._currentValueIndices.findIndex(i => i >= nIdx);\n\n      if (index !== -1) {\n        for (const ii = 
this._currentValueIndices.length; index < ii; index++) {\n          ++this._currentValueIndices[index];\n     
   }\n      }\n    } else if (this._currentValueIndices >= nIdx) {\n      ++this._currentValueIndices;\n    
}\n\n    this._send({\n      id: this._id,\n      insert: {\n        index: nIdx,\n        ...data\n      }\n 
   });\n  }\n\n  setAction(cTrigger, cS
 cript) {\n    if (typeof cTrigger !== "string" || typeof cScript !== "string") {\n      return;\n    }\n\n   
 if (!(cTrigger in this._actions)) {\n      this._actions[cTrigger] = [];\n    }\n\n    
this._actions[cTrigger].push(cScript);\n  }\n\n  setFocus() {\n    this._send({\n      id: this._id,\n      
focus: true\n    });\n  }\n\n  setItems(oArray) {\n    if (!this._isChoice) {\n      throw new Error("Not a 
choice widget");\n    }\n\n    this._items.length = 0;\n\n    for (const element of oArray) {\n      let 
displayValue, exportValue;\n\n      if (Array.isArray(element)) {\n        displayValue = 
element[0]?.toString() || "";\n        exportValue = element[1]?.toString() || "";\n      } else {\n        
displayValue = exportValue = element?.toString() || "";\n      }\n\n      this._items.push({\n        
displayValue,\n        exportValue\n      });\n    }\n\n    this._currentValueIndices = 0;\n\n    
this._send({\n      id: this._id,\n      items: this._items\n    });\n  }\n\n  se
 tLock() {}\n\n  signatureGetModifications() {}\n\n  signatureGetSeedValue() {}\n\n  signatureInfo() {}\n\n  
signatureSetSeedValue() {}\n\n  signatureSign() {}\n\n  signatureValidate() {}\n\n  _isButton() {\n    return 
false;\n  }\n\n  _reset() {\n    this.value = this.valueAsString = this.defaultValue;\n  }\n\n  
_runActions(event) {\n    const eventName = event.name;\n\n    if (!this._actions.has(eventName)) {\n      
return false;\n    }\n\n    const actions = this._actions.get(eventName);\n\n    try {\n      for (const 
action of actions) {\n        this._globalEval(action);\n      }\n    } catch (error) {\n      event.rc = 
false;\n      throw error;\n    }\n\n    return true;\n  }\n\n}\n\nexports.Field = Field;\n\nclass 
RadioButtonField extends Field {\n  constructor(otherButtons, data) {\n    super(data);\n    
this.exportValues = [this.exportValues];\n    this._radioIds = [this._id];\n    this._radioActions = 
[this._actions];\n\n    for (const radioData of otherButtons) {\n      t
 his.exportValues.push(radioData.exportValues);\n\n      this._radioIds.push(radioData.id);\n\n      
this._radioActions.push((0, _common.createActionsMap)(radioData.actions));\n\n      if (this._value === 
radioData.exportValues) {\n        this._id = radioData.id;\n      }\n    }\n  }\n\n  get value() {\n    
return this._value;\n  }\n\n  set value(value) {\n    if (value === null || value === undefined) {\n      
this._value = "";\n    }\n\n    const i = this.exportValues.indexOf(value);\n\n    if (0 <= i && i < 
this._radioIds.length) {\n      this._id = this._radioIds[i];\n      this._value = value;\n    } else if 
(value === "Off" && this._radioIds.length === 2) {\n      const nextI = (1 + 
this._radioIds.indexOf(this._id)) % 2;\n      this._id = this._radioIds[nextI];\n      this._value = 
this.exportValues[nextI];\n    }\n  }\n\n  checkThisBox(nWidget, bCheckIt = true) {\n    if (nWidget < 0 || 
nWidget >= this._radioIds.length || !bCheckIt) {\n      return;\n    }\n\n    this._id = t
 his._radioIds[nWidget];\n    this._value = this.exportValues[nWidget];\n\n    this._send({\n      id: 
this._id,\n      value: this._value\n    });\n  }\n\n  isBoxChecked(nWidget) {\n    return nWidget >= 0 && 
nWidget < this._radioIds.length && this._id === this._radioIds[nWidget];\n  }\n\n  isDefaultChecked(nWidget) 
{\n    return nWidget >= 0 && nWidget < this.exportValues.length && this.defaultValue === 
this.exportValues[nWidget];\n  }\n\n  _getExportValue(state) {\n    const i = 
this._radioIds.indexOf(this._id);\n\n    return this.exportValues[i];\n  }\n\n  _runActions(event) {\n    
const i = this._radioIds.indexOf(this._id);\n\n    this._actions = this._radioActions[i];\n    return 
super._runActions(event);\n  }\n\n  _isButton() {\n    return true;\n  }\n\n}\n\nexports.RadioButtonField = 
RadioButtonField;\n\nclass CheckboxField extends RadioButtonField {\n  get value() {\n    return 
this._value;\n  }\n\n  set value(value) {\n    if (!value || value === "Off") {\n      this._value
  = "Off";\n    } else {\n      super.value = value;\n    }\n  }\n\n  _getExportValue(state) {\n    return 
state ? super._getExportValue(state) : "Off";\n  }\n\n  isBoxChecked(nWidget) {\n    if (this._value === 
"Off") {\n      return false;\n    }\n\n    return super.isBoxChecked(nWidget);\n  }\n\n  
isDefaultChecked(nWidget) {\n    if (this.defaultValue === "Off") {\n      return this._value === "Off";\n    
}\n\n    return super.isDefaultChecked(nWidget);\n  }\n\n  checkThisBox(nWidget, bCheckIt = true) {\n    if 
(nWidget < 0 || nWidget >= this._radioIds.length) {\n      return;\n    }\n\n    this._id = 
this._radioIds[nWidget];\n    this._value = bCheckIt ? this.exportValues[nWidget] : "Off";\n\n    
this._send({\n      id: this._id,\n      value: this._value\n    });\n  }\n\n}\n\nexports.CheckboxField = 
CheckboxField;\n\n/***/ }),\n/* 4 */\n/***/ ((__unused_webpack_module, exports) => 
{\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.FieldType = 
 void 0;\nexports.createActionsMap = createActionsMap;\nexports.getFieldType = getFieldType;\nconst FieldType 
= {\n  none: 0,\n  number: 1,\n  percent: 2,\n  date: 3,\n  time: 4\n};\nexports.FieldType = 
FieldType;\n\nfunction createActionsMap(actions) {\n  const actionsMap = new Map();\n\n  if (actions) {\n    
for (const [eventType, actionsForEvent] of Object.entries(actions)) {\n      actionsMap.set(eventType, 
actionsForEvent);\n    }\n  }\n\n  return actionsMap;\n}\n\nfunction getFieldType(actions) {\n  let format = 
actions.get("Format");\n\n  if (!format) {\n    return FieldType.none;\n  }\n\n  format = format[0];\n  
format = format.trim();\n\n  if (format.startsWith("AFNumber_")) {\n    return FieldType.number;\n  }\n\n  if 
(format.startsWith("AFPercent_")) {\n    return FieldType.percent;\n  }\n\n  if 
(format.startsWith("AFDate_")) {\n    return FieldType.date;\n  }\n\n  if (format.startsWith("AFTime__")) {\n 
   return FieldType.time;\n  }\n\n  return FieldType.none;\n}\n\n/***/
  }),\n/* 5 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => 
{\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.Color = void 0;\n\nvar 
_scripting_utils = __w_pdfjs_require__(6);\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nclass Color 
extends _pdf_object.PDFObject {\n  constructor() {\n    super({});\n    this.transparent = ["T"];\n    
this.black = ["G", 0];\n    this.white = ["G", 1];\n    this.red = ["RGB", 1, 0, 0];\n    this.green = 
["RGB", 0, 1, 0];\n    this.blue = ["RGB", 0, 0, 1];\n    this.cyan = ["CMYK", 1, 0, 0, 0];\n    this.magenta 
= ["CMYK", 0, 1, 0, 0];\n    this.yellow = ["CMYK", 0, 0, 1, 0];\n    this.dkGray = ["G", 0.25];\n    
this.gray = ["G", 0.5];\n    this.ltGray = ["G", 0.75];\n  }\n\n  static _isValidSpace(cColorSpace) {\n    
return typeof cColorSpace === "string" && (cColorSpace === "T" || cColorSpace === "G" || cColorSpace === 
"RGB" || cColorSpace === "CMYK");\n  }\n\n  static _isValidColor(colorArr
 ay) {\n    if (!Array.isArray(colorArray) || colorArray.length === 0) {\n      return false;\n    }\n\n    
const space = colorArray[0];\n\n    if (!Color._isValidSpace(space)) {\n      return false;\n    }\n\n    
switch (space) {\n      case "T":\n        if (colorArray.length !== 1) {\n          return false;\n        
}\n\n        break;\n\n      case "G":\n        if (colorArray.length !== 2) {\n          return false;\n     
   }\n\n        break;\n\n      case "RGB":\n        if (colorArray.length !== 4) {\n          return 
false;\n        }\n\n        break;\n\n      case "CMYK":\n        if (colorArray.length !== 5) {\n          
return false;\n        }\n\n        break;\n\n      default:\n        return false;\n    }\n\n    return 
colorArray.slice(1).every(c => typeof c === "number" && c >= 0 && c <= 1);\n  }\n\n  static 
_getCorrectColor(colorArray) {\n    return Color._isValidColor(colorArray) ? colorArray : ["G", 0];\n  }\n\n  
convert(colorArray, cColorSpace) {\n    if (!Col
 or._isValidSpace(cColorSpace)) {\n      return this.black;\n    }\n\n    if (cColorSpace === "T") {\n      
return ["T"];\n    }\n\n    colorArray = Color._getCorrectColor(colorArray);\n\n    if (colorArray[0] === 
cColorSpace) {\n      return colorArray;\n    }\n\n    if (colorArray[0] === "T") {\n      return 
this.convert(this.black, cColorSpace);\n    }\n\n    return 
_scripting_utils.ColorConverters[`${colorArray[0]}_${cColorSpace}`](colorArray.slice(1));\n  }\n\n  
equal(colorArray1, colorArray2) {\n    colorArray1 = Color._getCorrectColor(colorArray1);\n    colorArray2 = 
Color._getCorrectColor(colorArray2);\n\n    if (colorArray1[0] === "T" || colorArray2[0] === "T") {\n      
return colorArray1[0] === "T" && colorArray2[0] === "T";\n    }\n\n    if (colorArray1[0] !== colorArray2[0]) 
{\n      colorArray2 = this.convert(colorArray2, colorArray1[0]);\n    }\n\n    return 
colorArray1.slice(1).every((c, i) => c === colorArray2[i + 1]);\n  }\n\n}\n\nexports.Color = Color;\n\n/***/ 
}),\
 n/* 6 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", 
({\n  value: true\n}));\nexports.ColorConverters = void 0;\n\nfunction makeColorComp(n) {\n  return 
Math.floor(Math.max(0, Math.min(1, n)) * 255).toString(16).padStart(2, "0");\n}\n\nclass ColorConverters {\n  
static CMYK_G([c, y, m, k]) {\n    return ["G", 1 - Math.min(1, 0.3 * c + 0.59 * m + 0.11 * y + k)];\n  }\n\n 
 static G_CMYK([g]) {\n    return ["CMYK", 0, 0, 0, 1 - g];\n  }\n\n  static G_RGB([g]) {\n    return ["RGB", 
g, g, g];\n  }\n\n  static G_HTML([g]) {\n    const G = makeColorComp(g);\n    return `#${G}${G}${G}`;\n  
}\n\n  static RGB_G([r, g, b]) {\n    return ["G", 0.3 * r + 0.59 * g + 0.11 * b];\n  }\n\n  static 
RGB_HTML([r, g, b]) {\n    const R = makeColorComp(r);\n    const G = makeColorComp(g);\n    const B = 
makeColorComp(b);\n    return `#${R}${G}${B}`;\n  }\n\n  static T_HTML() {\n    return "#00000000";\n  }\n\n  
static CMYK_RGB([c, y, m, k]) {\n    re
 turn ["RGB", 1 - Math.min(1, c + k), 1 - Math.min(1, m + k), 1 - Math.min(1, y + k)];\n  }\n\n  static 
CMYK_HTML(components) {\n    return this.RGB_HTML(this.CMYK_RGB(components));\n  }\n\n  static RGB_CMYK([r, 
g, b]) {\n    const c = 1 - r;\n    const m = 1 - g;\n    const y = 1 - b;\n    const k = Math.min(c, m, 
y);\n    return ["CMYK", c, m, y, k];\n  }\n\n}\n\nexports.ColorConverters = ColorConverters;\n\n/***/ 
}),\n/* 7 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, 
"__esModule", ({\n  value: true\n}));\nexports.PDFObject = void 0;\n\nclass PDFObject {\n  constructor(data) 
{\n    this._expandos = Object.create(null);\n    this._send = data.send || null;\n    this._id = data.id || 
null;\n  }\n\n}\n\nexports.PDFObject = PDFObject;\n\n/***/ }),\n/* 8 */\n/***/ ((__unused_webpack_module, 
exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: 
true\n}));\nexports.AForm = void 0;\n\nvar _constants =
  __w_pdfjs_require__(2);\n\nclass AForm {\n  constructor(document, app, util, color) {\n    this._document = 
document;\n    this._app = app;\n    this._util = util;\n    this._color = color;\n    this._dateFormats = 
["m/d", "m/d/yy", "mm/dd/yy", "mm/yy", "d-mmm", "d-mmm-yy", "dd-mmm-yy", "yy-mm-dd", "mmm-yy", "mmmm-yy", 
"mmm d, yyyy", "mmmm d, yyyy", "m/d/yy h:MM tt", "m/d/yy HH:MM"];\n    this._timeFormats = ["HH:MM", "h:MM 
tt", "HH:MM:ss", "h:MM:ss tt"];\n    this._emailRegex = new RegExp("^[a-zA-Z0-9.!#$%&\'*+\\\\/=?^_`{|}~-]+" + 
"@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?" + 
"(?:\\\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$");\n  }\n\n  _mkTargetName(event) {\n    return 
event.target ? `[ ${event.target.name} ]` : "";\n  }\n\n  _parseDate(cFormat, cDate) {\n    const ddate = 
Date.parse(cDate);\n\n    if (isNaN(ddate)) {\n      try {\n        return this._util.scand(cFormat, 
cDate);\n      } catch (error) {\n        return null;\n      }\n    } else {\n      return ne
 w Date(ddate);\n    }\n  }\n\n  AFMergeChange(event = globalThis.event) {\n    if (event.willCommit) {\n     
 return event.value.toString();\n    }\n\n    return this._app._eventDispatcher.mergeChange(event);\n  }\n\n  
AFParseDateEx(cString, cOrder) {\n    return this._parseDate(cOrder, cString);\n  }\n\n  AFExtractNums(str) 
{\n    if (typeof str === "number") {\n      return [str];\n    }\n\n    if (!str || typeof str !== "string") 
{\n      return null;\n    }\n\n    const first = str.charAt(0);\n\n    if (first === "." || first === ",") 
{\n      str = `0${str}`;\n    }\n\n    const numbers = str.match(/(\\d+)/g);\n\n    if (numbers.length === 
0) {\n      return null;\n    }\n\n    return numbers;\n  }\n\n  AFMakeNumber(str) {\n    if (typeof str === 
"number") {\n      return str;\n    }\n\n    if (typeof str !== "string") {\n      return null;\n    }\n\n    
str = str.trim().replace(",", ".");\n    const number = parseFloat(str);\n\n    if (isNaN(number) || 
!isFinite(number)) {\n  
     return null;\n    }\n\n    return number;\n  }\n\n  AFMakeArrayFromList(string) {\n    if (typeof string 
=== "string") {\n      return string.split(/, ?/g);\n    }\n\n    return string;\n  }\n\n  
AFNumber_Format(nDec, sepStyle, negStyle, currStyle, strCurrency, bCurrencyPrepend) {\n    const event = 
globalThis.event;\n\n    if (!event.value) {\n      return;\n    }\n\n    let value = 
this.AFMakeNumber(event.value);\n\n    if (value === null) {\n      event.value = "";\n      return;\n    
}\n\n    const sign = Math.sign(value);\n    const buf = [];\n    let hasParen = false;\n\n    if (sign === 
-1 && bCurrencyPrepend && negStyle === 0) {\n      buf.push("-");\n    }\n\n    if ((negStyle === 2 || 
negStyle === 3) && sign === -1) {\n      buf.push("(");\n      hasParen = true;\n    }\n\n    if 
(bCurrencyPrepend) {\n      buf.push(strCurrency);\n    }\n\n    sepStyle = Math.min(Math.max(0, 
Math.floor(sepStyle)), 4);\n    buf.push("%,", sepStyle, ".", nDec.toString(), "f");\n\n    if 
 (!bCurrencyPrepend) {\n      buf.push(strCurrency);\n    }\n\n    if (hasParen) {\n      buf.push(")");\n    
}\n\n    if (negStyle === 1 || negStyle === 3) {\n      event.target.textColor = sign === 1 ? 
this._color.black : this._color.red;\n    }\n\n    if ((negStyle !== 0 || bCurrencyPrepend) && sign === -1) 
{\n      value = -value;\n    }\n\n    const formatStr = buf.join("");\n    event.value = 
this._util.printf(formatStr, value);\n  }\n\n  AFNumber_Keystroke(nDec, sepStyle, negStyle, currStyle, 
strCurrency, bCurrencyPrepend) {\n    const event = globalThis.event;\n    let value = 
this.AFMergeChange(event);\n\n    if (!value) {\n      return;\n    }\n\n    value = value.trim();\n    let 
pattern;\n\n    if (sepStyle > 1) {\n      pattern = event.willCommit ? /^[+-]?(\\d+(,\\d*)?|,\\d+)$/ : 
/^[+-]?\\d*,?\\d*$/;\n    } else {\n      pattern = event.willCommit ? /^[+-]?(\\d+(\\.\\d*)?|\\.\\d+)$/ : 
/^[+-]?\\d*\\.?\\d*$/;\n    }\n\n    if (!pattern.test(value)) {\n      if (event.willC
 ommit) {\n        const err = `${_constants.GlobalConstants.IDS_INVALID_VALUE} 
${this._mkTargetName(event)}`;\n\n        this._app.alert(err);\n      }\n\n      event.rc = false;\n    
}\n\n    if (event.willCommit && sepStyle > 1) {\n      event.value = parseFloat(value.replace(",", "."));\n  
  }\n  }\n\n  AFPercent_Format(nDec, sepStyle, percentPrepend = false) {\n    if (typeof nDec !== "number") 
{\n      return;\n    }\n\n    if (typeof sepStyle !== "number") {\n      return;\n    }\n\n    if (nDec < 0) 
{\n      throw new Error("Invalid nDec value in AFPercent_Format");\n    }\n\n    const event = 
globalThis.event;\n\n    if (nDec > 512) {\n      event.value = "%";\n      return;\n    }\n\n    nDec = 
Math.floor(nDec);\n    sepStyle = Math.min(Math.max(0, Math.floor(sepStyle)), 4);\n    let value = 
this.AFMakeNumber(event.value);\n\n    if (value === null) {\n      event.value = "%";\n      return;\n    
}\n\n    const formatStr = `%,${sepStyle}.${nDec}f`;\n    value = this._util.p
 rintf(formatStr, value * 100);\n\n    if (percentPrepend) {\n      event.value = `%${value}`;\n    } else 
{\n      event.value = `${value}%`;\n    }\n  }\n\n  AFPercent_Keystroke(nDec, sepStyle) {\n    
this.AFNumber_Keystroke(nDec, sepStyle, 0, 0, "", true);\n  }\n\n  AFDate_FormatEx(cFormat) {\n    const 
event = globalThis.event;\n    const value = event.value;\n\n    if (!value) {\n      return;\n    }\n\n    
const date = this._parseDate(cFormat, value);\n\n    if (date !== null) {\n      event.value = 
this._util.printd(cFormat, date);\n    }\n  }\n\n  AFDate_Format(pdf) {\n    if (pdf >= 0 && pdf < 
this._dateFormats.length) {\n      this.AFDate_FormatEx(this._dateFormats[pdf]);\n    }\n  }\n\n  
AFDate_KeystrokeEx(cFormat) {\n    const event = globalThis.event;\n\n    if (!event.willCommit) {\n      
return;\n    }\n\n    const value = this.AFMergeChange(event);\n\n    if (!value) {\n      return;\n    }\n\n 
   if (this._parseDate(cFormat, value) === null) {\n      const invalid = 
 _constants.GlobalConstants.IDS_INVALID_DATE;\n      const invalid2 = 
_constants.GlobalConstants.IDS_INVALID_DATE2;\n      const err = `${invalid} 
${this._mkTargetName(event)}${invalid2}${cFormat}`;\n\n      this._app.alert(err);\n\n      event.rc = 
false;\n    }\n  }\n\n  AFDate_Keystroke(pdf) {\n    if (pdf >= 0 && pdf < this._dateFormats.length) {\n      
this.AFDate_KeystrokeEx(this._dateFormats[pdf]);\n    }\n  }\n\n  AFRange_Validate(bGreaterThan, 
nGreaterThan, bLessThan, nLessThan) {\n    const event = globalThis.event;\n\n    if (!event.value) {\n      
return;\n    }\n\n    const value = this.AFMakeNumber(event.value);\n\n    if (value === null) {\n      
return;\n    }\n\n    bGreaterThan = !!bGreaterThan;\n    bLessThan = !!bLessThan;\n\n    if (bGreaterThan) 
{\n      nGreaterThan = this.AFMakeNumber(nGreaterThan);\n\n      if (nGreaterThan === null) {\n        
return;\n      }\n    }\n\n    if (bLessThan) {\n      nLessThan = this.AFMakeNumber(nLessThan);\n\n      if 
(nLessT
 han === null) {\n        return;\n      }\n    }\n\n    let err = "";\n\n    if (bGreaterThan && bLessThan) 
{\n      if (value < nGreaterThan || value > nLessThan) {\n        err = 
this._util.printf(_constants.GlobalConstants.IDS_GT_AND_LT, nGreaterThan, nLessThan);\n      }\n    } else if 
(bGreaterThan) {\n      if (value < nGreaterThan) {\n        err = 
this._util.printf(_constants.GlobalConstants.IDS_GREATER_THAN, nGreaterThan);\n      }\n    } else if (value 
nLessThan) {\n      err = this._util.printf(_constants.GlobalConstants.IDS_LESS_THAN, nLessThan);\n    
}\n\n    if (err) {\n      this._app.alert(err);\n\n      event.rc = false;\n    }\n  }\n\n  
AFSimple(cFunction, nValue1, nValue2) {\n    const value1 = this.AFMakeNumber(nValue1);\n\n    if (value1 === 
null) {\n      throw new Error("Invalid nValue1 in AFSimple");\n    }\n\n    const value2 = 
this.AFMakeNumber(nValue2);\n\n    if (value2 === null) {\n      throw new Error("Invalid nValue2 in 
AFSimple");\n    }\n\n    swi
 tch (cFunction) {\n      case "AVG":\n        return (value1 + value2) / 2;\n\n      case "SUM":\n        
return value1 + value2;\n\n      case "PRD":\n        return value1 * value2;\n\n      case "MIN":\n        
return Math.min(value1, value2);\n\n      case "MAX":\n        return Math.max(value1, value2);\n    }\n\n    
throw new Error("Invalid cFunction in AFSimple");\n  }\n\n  AFSimple_Calculate(cFunction, cFields) {\n    
const actions = {\n      AVG: args => args.reduce((acc, value) => acc + value, 0) / args.length,\n      SUM: 
args => args.reduce((acc, value) => acc + value, 0),\n      PRD: args => args.reduce((acc, value) => acc * 
value, 1),\n      MIN: args => args.reduce((acc, value) => Math.min(acc, value), Number.MAX_VALUE),\n      
MAX: args => args.reduce((acc, value) => Math.max(acc, value), Number.MIN_VALUE)\n    };\n\n    if 
(!(cFunction in actions)) {\n      throw new TypeError("Invalid function in AFSimple_Calculate");\n    }\n\n  
  const event = globalThis.event;\n
     const values = [];\n\n    for (const cField of cFields) {\n      const field = 
this._document.getField(cField);\n\n      const number = this.AFMakeNumber(field.value);\n\n      if (number 
!== null) {\n        values.push(number);\n      }\n    }\n\n    if (values.length === 0) {\n      
event.value = cFunction === "PRD" ? 1 : 0;\n      return;\n    }\n\n    const res = 
actions[cFunction](values);\n    event.value = Math.round(1e6 * res) / 1e6;\n  }\n\n  AFSpecial_Format(psf) 
{\n    const event = globalThis.event;\n\n    if (!event.value) {\n      return;\n    }\n\n    psf = 
this.AFMakeNumber(psf);\n    let formatStr;\n\n    switch (psf) {\n      case 0:\n        formatStr = 
"99999";\n        break;\n\n      case 1:\n        formatStr = "99999-9999";\n        break;\n\n      case 
2:\n        if (this._util.printx("9999999999", event.value).length >= 10) {\n          formatStr = "(999) 
999-9999";\n        } else {\n          formatStr = "999-9999";\n        }\n\n        break;\n\n 
      case 3:\n        formatStr = "999-99-9999";\n        break;\n\n      default:\n        throw new 
Error("Invalid psf in AFSpecial_Format");\n    }\n\n    event.value = this._util.printx(formatStr, 
event.value);\n  }\n\n  AFSpecial_KeystrokeEx(cMask) {\n    if (!cMask) {\n      return;\n    }\n\n    const 
event = globalThis.event;\n    const value = this.AFMergeChange(event);\n\n    if (!value) {\n      return;\n 
   }\n\n    const checkers = new Map([["9", char => char >= "0" && char <= "9"], ["A", char => "a" <= char && 
char <= "z" || "A" <= char && char <= "Z"], ["O", char => "a" <= char && char <= "z" || "A" <= char && char 
<= "Z" || "0" <= char && char <= "9"], ["X", char => true]]);\n\n    function _checkValidity(_value, _cMask) 
{\n      for (let i = 0, ii = _value.length; i < ii; i++) {\n        const mask = _cMask.charAt(i);\n\n       
 const char = _value.charAt(i);\n\n        const checker = checkers.get(mask);\n\n        if (checker) {\n    
      if (!checker(char)) {\n 
            return false;\n          }\n        } else if (mask !== char) {\n          return false;\n        
}\n      }\n\n      return true;\n    }\n\n    const err = `${_constants.GlobalConstants.IDS_INVALID_VALUE} = 
"${cMask}"`;\n\n    if (value.length > cMask.length) {\n      this._app.alert(err);\n\n      event.rc = 
false;\n      return;\n    }\n\n    if (event.willCommit) {\n      if (value.length < cMask.length) {\n       
 this._app.alert(err);\n\n        event.rc = false;\n        return;\n      }\n\n      if 
(!_checkValidity(value, cMask)) {\n        this._app.alert(err);\n\n        event.rc = false;\n        
return;\n      }\n\n      event.value += cMask.substring(value.length);\n      return;\n    }\n\n    if 
(value.length < cMask.length) {\n      cMask = cMask.substring(0, value.length);\n    }\n\n    if 
(!_checkValidity(value, cMask)) {\n      this._app.alert(err);\n\n      event.rc = false;\n    }\n  }\n\n  
AFSpecial_Keystroke(psf) {\n    const event = globalThis.event
 ;\n    psf = this.AFMakeNumber(psf);\n    let formatStr;\n\n    switch (psf) {\n      case 0:\n        
formatStr = "99999";\n        break;\n\n      case 1:\n        formatStr = "99999-9999";\n        break;\n\n  
    case 2:\n        const value = this.AFMergeChange(event);\n\n        if (value.length > 8 || 
value.startsWith("(")) {\n          formatStr = "(999) 999-9999";\n        } else {\n          formatStr = 
"999-9999";\n        }\n\n        break;\n\n      case 3:\n        formatStr = "999-99-9999";\n        
break;\n\n      default:\n        throw new Error("Invalid psf in AFSpecial_Keystroke");\n    }\n\n    
this.AFSpecial_KeystrokeEx(formatStr);\n  }\n\n  AFTime_FormatEx(cFormat) {\n    
this.AFDate_FormatEx(cFormat);\n  }\n\n  AFTime_Format(pdf) {\n    if (pdf >= 0 && pdf < 
this._timeFormats.length) {\n      this.AFDate_FormatEx(this._timeFormats[pdf]);\n    }\n  }\n\n  
AFTime_KeystrokeEx(cFormat) {\n    this.AFDate_KeystrokeEx(cFormat);\n  }\n\n  AFTime_Keystroke(pdf) {\n  
   if (pdf >= 0 && pdf < this._timeFormats.length) {\n      
this.AFDate_KeystrokeEx(this._timeFormats[pdf]);\n    }\n  }\n\n  eMailValidate(str) {\n    return 
this._emailRegex.test(str);\n  }\n\n}\n\nexports.AForm = AForm;\n\n/***/ }),\n/* 9 */\n/***/ 
((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, 
"__esModule", ({\n  value: true\n}));\nexports.App = void 0;\n\nvar _color = __w_pdfjs_require__(5);\n\nvar 
_event = __w_pdfjs_require__(10);\n\nvar _fullscreen = __w_pdfjs_require__(11);\n\nvar _pdf_object = 
__w_pdfjs_require__(7);\n\nvar _thermometer = __w_pdfjs_require__(12);\n\nconst VIEWER_TYPE = 
"PDF.js";\nconst VIEWER_VARIATION = "Full";\nconst VIEWER_VERSION = 21.00720099;\nconst FORMS_VERSION = 
21.00720099;\n\nclass App extends _pdf_object.PDFObject {\n  constructor(data) {\n    super(data);\n    
this._constants = null;\n    this._focusRect = true;\n    this._fs = null;\n    this._language = 
App._getLanguage(data.language);\n    
 this._openInPlace = false;\n    this._platform = App._getPlatform(data.platform);\n    
this._runtimeHighlight = false;\n    this._runtimeHighlightColor = ["T"];\n    this._thermometer = null;\n    
this._toolbar = false;\n    this._document = data._document;\n    this._proxyHandler = data.proxyHandler;\n   
 this._objects = Object.create(null);\n    this._eventDispatcher = new _event.EventDispatcher(this._document, 
data.calculationOrder, this._objects);\n    this._timeoutIds = new WeakMap();\n\n    if (typeof 
FinalizationRegistry !== "undefined") {\n      this._timeoutIdsRegistry = new 
FinalizationRegistry(this._cleanTimeout.bind(this));\n    } else {\n      this._timeoutIdsRegistry = null;\n  
  }\n\n    this._timeoutCallbackIds = new Map();\n    this._timeoutCallbackId = 0;\n    this._globalEval = 
data.globalEval;\n    this._externalCall = data.externalCall;\n    this._document = data._document;\n  }\n\n  
_dispatchEvent(pdfEvent) {\n    this._eventDispatcher.dispatch(pdfEvent);\n  }\
 n\n  _registerTimeoutCallback(cExpr) {\n    const id = this._timeoutCallbackId++;\n\n    
this._timeoutCallbackIds.set(id, cExpr);\n\n    return id;\n  }\n\n  _unregisterTimeoutCallback(id) {\n    
this._timeoutCallbackIds.delete(id);\n  }\n\n  _evalCallback({\n    callbackId,\n    interval\n  }) {\n    
const expr = this._timeoutCallbackIds.get(callbackId);\n\n    if (!interval) {\n      
this._unregisterTimeoutCallback(callbackId);\n    }\n\n    if (expr) {\n      this._globalEval(expr);\n    
}\n  }\n\n  _registerTimeout(callbackId, interval) {\n    const timeout = Object.create(null);\n    const id 
= {\n      callbackId,\n      interval\n    };\n\n    this._timeoutIds.set(timeout, id);\n\n    if 
(this._timeoutIdsRegistry) {\n      this._timeoutIdsRegistry.register(timeout, id);\n    }\n\n    return 
timeout;\n  }\n\n  _unregisterTimeout(timeout) {\n    if (this._timeoutIdsRegistry) {\n      
this._timeoutIdsRegistry.unregister(timeout);\n    }\n\n    const data = this._timeoutIds.get(t
 imeout);\n\n    if (!data) {\n      return;\n    }\n\n    this._timeoutIds.delete(timeout);\n\n    
this._cleanTimeout(data);\n  }\n\n  _cleanTimeout({\n    callbackId,\n    interval\n  }) {\n    
this._unregisterTimeoutCallback(callbackId);\n\n    if (interval) {\n      
this._externalCall("clearInterval", [callbackId]);\n    } else {\n      this._externalCall("clearTimeout", 
[callbackId]);\n    }\n  }\n\n  static _getPlatform(platform) {\n    if (typeof platform === "string") {\n    
  platform = platform.toLowerCase();\n\n      if (platform.includes("win")) {\n        return "WIN";\n      } 
else if (platform.includes("mac")) {\n        return "MAC";\n      }\n    }\n\n    return "UNIX";\n  }\n\n  
static _getLanguage(language) {\n    const [main, sub] = language.toLowerCase().split(/[-_]/);\n\n    switch 
(main) {\n      case "zh":\n        if (sub === "cn" || sub === "sg") {\n          return "CHS";\n        
}\n\n        return "CHT";\n\n      case "da":\n        return "DAN";\n\n    
   case "de":\n        return "DEU";\n\n      case "es":\n        return "ESP";\n\n      case "fr":\n        
return "FRA";\n\n      case "it":\n        return "ITA";\n\n      case "ko":\n        return "KOR";\n\n      
case "ja":\n        return "JPN";\n\n      case "nl":\n        return "NLD";\n\n      case "no":\n        
return "NOR";\n\n      case "pt":\n        if (sub === "br") {\n          return "PTB";\n        }\n\n        
return "ENU";\n\n      case "fi":\n        return "SUO";\n\n      case "SV":\n        return "SVE";\n\n      
default:\n        return "ENU";\n    }\n  }\n\n  get activeDocs() {\n    return [this._document.wrapped];\n  
}\n\n  set activeDocs(_) {\n    throw new Error("app.activeDocs is read-only");\n  }\n\n  get calculate() {\n 
   return this._document.obj.calculate;\n  }\n\n  set calculate(calculate) {\n    
this._document.obj.calculate = calculate;\n  }\n\n  get constants() {\n    if (!this._constants) {\n      
this._constants = Object.freeze({\n        align
 : Object.freeze({\n          left: 0,\n          center: 1,\n          right: 2,\n          top: 3,\n        
  bottom: 4\n        })\n      });\n    }\n\n    return this._constants;\n  }\n\n  set constants(_) {\n    
throw new Error("app.constants is read-only");\n  }\n\n  get focusRect() {\n    return this._focusRect;\n  
}\n\n  set focusRect(val) {\n    this._focusRect = val;\n  }\n\n  get formsVersion() {\n    return 
FORMS_VERSION;\n  }\n\n  set formsVersion(_) {\n    throw new Error("app.formsVersion is read-only");\n  
}\n\n  get fromPDFConverters() {\n    return [];\n  }\n\n  set fromPDFConverters(_) {\n    throw new 
Error("app.fromPDFConverters is read-only");\n  }\n\n  get fs() {\n    if (this._fs === null) {\n      
this._fs = new Proxy(new _fullscreen.FullScreen({\n        send: this._send\n      }), this._proxyHandler);\n 
   }\n\n    return this._fs;\n  }\n\n  set fs(_) {\n    throw new Error("app.fs is read-only");\n  }\n\n  get 
language() {\n    return this._language;\n  }\
 n\n  set language(_) {\n    throw new Error("app.language is read-only");\n  }\n\n  get media() {\n    
return undefined;\n  }\n\n  set media(_) {\n    throw new Error("app.media is read-only");\n  }\n\n  get 
monitors() {\n    return [];\n  }\n\n  set monitors(_) {\n    throw new Error("app.monitors is read-only");\n 
 }\n\n  get numPlugins() {\n    return 0;\n  }\n\n  set numPlugins(_) {\n    throw new Error("app.numPlugins 
is read-only");\n  }\n\n  get openInPlace() {\n    return this._openInPlace;\n  }\n\n  set openInPlace(val) 
{\n    this._openInPlace = val;\n  }\n\n  get platform() {\n    return this._platform;\n  }\n\n  set 
platform(_) {\n    throw new Error("app.platform is read-only");\n  }\n\n  get plugins() {\n    return [];\n  
}\n\n  set plugins(_) {\n    throw new Error("app.plugins is read-only");\n  }\n\n  get printColorProfiles() 
{\n    return [];\n  }\n\n  set printColorProfiles(_) {\n    throw new Error("app.printColorProfiles is 
read-only");\n  }\n\n  get printerName
 s() {\n    return [];\n  }\n\n  set printerNames(_) {\n    throw new Error("app.printerNames is 
read-only");\n  }\n\n  get runtimeHighlight() {\n    return this._runtimeHighlight;\n  }\n\n  set 
runtimeHighlight(val) {\n    this._runtimeHighlight = val;\n  }\n\n  get runtimeHighlightColor() {\n    
return this._runtimeHighlightColor;\n  }\n\n  set runtimeHighlightColor(val) {\n    if 
(_color.Color._isValidColor(val)) {\n      this._runtimeHighlightColor = val;\n    }\n  }\n\n  get 
thermometer() {\n    if (this._thermometer === null) {\n      this._thermometer = new Proxy(new 
_thermometer.Thermometer({\n        send: this._send\n      }), this._proxyHandler);\n    }\n\n    return 
this._thermometer;\n  }\n\n  set thermometer(_) {\n    throw new Error("app.thermometer is read-only");\n  
}\n\n  get toolbar() {\n    return this._toolbar;\n  }\n\n  set toolbar(val) {\n    this._toolbar = val;\n  
}\n\n  get toolbarHorizontal() {\n    return this.toolbar;\n  }\n\n  set toolbarHorizontal(value
 ) {\n    this.toolbar = value;\n  }\n\n  get toolbarVertical() {\n    return this.toolbar;\n  }\n\n  set 
toolbarVertical(value) {\n    this.toolbar = value;\n  }\n\n  get viewerType() {\n    return VIEWER_TYPE;\n  
}\n\n  set viewerType(_) {\n    throw new Error("app.viewerType is read-only");\n  }\n\n  get 
viewerVariation() {\n    return VIEWER_VARIATION;\n  }\n\n  set viewerVariation(_) {\n    throw new 
Error("app.viewerVariation is read-only");\n  }\n\n  get viewerVersion() {\n    return VIEWER_VERSION;\n  
}\n\n  set viewerVersion(_) {\n    throw new Error("app.viewerVersion is read-only");\n  }\n\n  addMenuItem() 
{}\n\n  addSubMenu() {}\n\n  addToolButton() {}\n\n  alert(cMsg, nIcon = 0, nType = 0, cTitle = "PDF.js", 
oDoc = null, oCheckbox = null) {\n    if (typeof cMsg === "object") {\n      nType = cMsg.nType;\n      cMsg 
= cMsg.cMsg;\n    }\n\n    cMsg = (cMsg || "").toString();\n    nType = typeof nType !== "number" || 
isNaN(nType) || nType < 0 || nType > 3 ? 0 : nType;\n\n  
   if (nType >= 2) {\n      return this._externalCall("confirm", [cMsg]) ? 4 : 3;\n    }\n\n    
this._externalCall("alert", [cMsg]);\n\n    return 1;\n  }\n\n  beep() {}\n\n  beginPriv() {}\n\n  
browseForDoc() {}\n\n  clearInterval(oInterval) {\n    this._unregisterTimeout(oInterval);\n  }\n\n  
clearTimeOut(oTime) {\n    this._unregisterTimeout(oTime);\n  }\n\n  endPriv() {}\n\n  execDialog() {}\n\n  
execMenuItem(item) {\n    switch (item) {\n      case "SaveAs":\n      case "FirstPage":\n      case 
"LastPage":\n      case "NextPage":\n      case "PrevPage":\n      case "ZoomViewIn":\n      case 
"ZoomViewOut":\n        this._send({\n          command: item\n        });\n\n        break;\n\n      case 
"FitPage":\n        this._send({\n          command: "zoom",\n          value: "page-fit"\n        });\n\n    
    break;\n\n      case "Print":\n        this._send({\n          command: "print"\n        });\n\n        
break;\n    }\n  }\n\n  getNthPlugInName() {}\n\n  getPath() {}\n\n  g
 oBack() {}\n\n  goForward() {}\n\n  hideMenuItem() {}\n\n  hideToolbarButton() {}\n\n  launchURL() {}\n\n  
listMenuItems() {}\n\n  listToolbarButtons() {}\n\n  loadPolicyFile() {}\n\n  mailGetAddrs() {}\n\n  
mailMsg() {}\n\n  newDoc() {}\n\n  newCollection() {}\n\n  newFDF() {}\n\n  openDoc() {}\n\n  openFDF() 
{}\n\n  popUpMenu() {}\n\n  popUpMenuEx() {}\n\n  removeToolButton() {}\n\n  response(cQuestion, cTitle = "", 
cDefault = "", bPassword = "", cLabel = "") {\n    if (typeof cQuestion === "object") {\n      cDefault = 
cQuestion.cDefault;\n      cQuestion = cQuestion.cQuestion;\n    }\n\n    cQuestion = (cQuestion || 
"").toString();\n    cDefault = (cDefault || "").toString();\n    return this._externalCall("prompt", 
[cQuestion, cDefault || ""]);\n  }\n\n  setInterval(cExpr, nMilliseconds = 0) {\n    if (typeof cExpr === 
"object") {\n      nMilliseconds = cExpr.nMilliseconds || 0;\n      cExpr = cExpr.cExpr;\n    }\n\n    if 
(typeof cExpr !== "string") {\n      throw new TypeErro
 r("First argument of app.setInterval must be a string");\n    }\n\n    if (typeof nMilliseconds !== 
"number") {\n      throw new TypeError("Second argument of app.setInterval must be a number");\n    }\n\n    
const callbackId = this._registerTimeoutCallback(cExpr);\n\n    this._externalCall("setInterval", 
[callbackId, nMilliseconds]);\n\n    return this._registerTimeout(callbackId, true);\n  }\n\n  
setTimeOut(cExpr, nMilliseconds = 0) {\n    if (typeof cExpr === "object") {\n      nMilliseconds = 
cExpr.nMilliseconds || 0;\n      cExpr = cExpr.cExpr;\n    }\n\n    if (typeof cExpr !== "string") {\n      
throw new TypeError("First argument of app.setTimeOut must be a string");\n    }\n\n    if (typeof 
nMilliseconds !== "number") {\n      throw new TypeError("Second argument of app.setTimeOut must be a 
number");\n    }\n\n    const callbackId = this._registerTimeoutCallback(cExpr);\n\n    
this._externalCall("setTimeout", [callbackId, nMilliseconds]);\n\n    return this._registerTimeout
 (callbackId, false);\n  }\n\n  trustedFunction() {}\n\n  trustPropagatorFunction() {}\n\n}\n\nexports.App = 
App;\n\n/***/ }),\n/* 10 */\n/***/ ((__unused_webpack_module, exports) => 
{\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.EventDispatcher = 
exports.Event = void 0;\n\nclass Event {\n  constructor(data) {\n    this.change = data.change || "";\n    
this.changeEx = data.changeEx || null;\n    this.commitKey = data.commitKey || 0;\n    this.fieldFull = 
data.fieldFull || false;\n    this.keyDown = data.keyDown || false;\n    this.modifier = data.modifier || 
false;\n    this.name = data.name;\n    this.rc = true;\n    this.richChange = data.richChange || [];\n    
this.richChangeEx = data.richChangeEx || [];\n    this.richValue = data.richValue || [];\n    this.selEnd = 
data.selEnd ?? -1;\n    this.selStart = data.selStart ?? -1;\n    this.shift = data.shift || false;\n    
this.source = data.source || null;\n    this.target = data.target || null
 ;\n    this.targetName = "";\n    this.type = "Field";\n    this.value = data.value || "";\n    
this.willCommit = data.willCommit || false;\n  }\n\n}\n\nexports.Event = Event;\n\nclass EventDispatcher {\n  
constructor(document, calculationOrder, objects) {\n    this._document = document;\n    
this._calculationOrder = calculationOrder;\n    this._objects = objects;\n    
this._document.obj._eventDispatcher = this;\n  }\n\n  mergeChange(event) {\n    let value = event.value;\n\n  
  if (typeof value !== "string") {\n      value = value.toString();\n    }\n\n    const prefix = 
event.selStart >= 0 ? value.substring(0, event.selStart) : "";\n    const postfix = event.selEnd >= 0 && 
event.selEnd <= value.length ? value.substring(event.selEnd) : "";\n    return 
`${prefix}${event.change}${postfix}`;\n  }\n\n  dispatch(baseEvent) {\n    const id = baseEvent.id;\n\n    if 
(!(id in this._objects)) {\n      let event;\n\n      if (id === "doc" || id === "page") {\n        event = 
globalThis.event
  = new Event(baseEvent);\n        event.source = event.target = this._document.wrapped;\n        event.name 
= baseEvent.name;\n      }\n\n      if (id === "doc") {\n        
this._document.obj._dispatchDocEvent(event.name);\n      } else if (id === "page") {\n        
this._document.obj._dispatchPageEvent(event.name, baseEvent.actions, baseEvent.pageNumber);\n      } else if 
(id === "app" && baseEvent.name === "ResetForm") {\n        for (const fieldId of baseEvent.ids) {\n          
const obj = this._objects[fieldId];\n\n          if (obj) {\n            obj.obj._reset();\n          }\n     
   }\n      }\n\n      return;\n    }\n\n    const name = baseEvent.name;\n    const source = 
this._objects[id];\n    const event = globalThis.event = new Event(baseEvent);\n    let savedChange;\n\n    
if (source.obj._isButton()) {\n      source.obj._id = id;\n      event.value = 
source.obj._getExportValue(event.value);\n\n      if (name === "Action") {\n        source.obj._value = 
event.value;\n  
     }\n    }\n\n    switch (name) {\n      case "Keystroke":\n        savedChange = {\n          value: 
event.value,\n          change: event.change,\n          selStart: event.selStart,\n          selEnd: 
event.selEnd\n        };\n        break;\n\n      case "Blur":\n      case "Focus":\n        
Object.defineProperty(event, "value", {\n          configurable: false,\n          writable: false,\n         
 enumerable: true,\n          value: event.value\n        });\n        break;\n\n      case "Validate":\n     
   this.runValidation(source, event);\n        return;\n\n      case "Action":\n        
this.runActions(source, source, event, name);\n\n        if (this._document.obj.calculate) {\n          
this.runCalculate(source, event);\n        }\n\n        return;\n    }\n\n    this.runActions(source, source, 
event, name);\n\n    if (name === "Keystroke") {\n      if (event.rc) {\n        if (event.willCommit) {\n    
      this.runValidation(source, event);\n        } else if (event
 .change !== savedChange.change || event.selStart !== savedChange.selStart || event.selEnd !== 
savedChange.selEnd) {\n          source.wrapped.value = this.mergeChange(event);\n        }\n      } else if 
(!event.willCommit) {\n        source.obj._send({\n          id: source.obj._id,\n          value: 
savedChange.value,\n          selRange: [savedChange.selStart, savedChange.selEnd]\n        });\n      } else 
{\n        source.obj._send({\n          id: source.obj._id,\n          value: "",\n          selRange: [0, 
0]\n        });\n      }\n    }\n  }\n\n  runValidation(source, event) {\n    const hasRan = 
this.runActions(source, source, event, "Validate");\n\n    if (event.rc) {\n      if (hasRan) {\n        
source.wrapped.value = event.value;\n        source.wrapped.valueAsString = event.value;\n      } else {\n    
    source.obj.value = event.value;\n        source.obj.valueAsString = event.value;\n      }\n\n      if 
(this._document.obj.calculate) {\n        this.runCalculate(sou
 rce, event);\n      }\n\n      event.value = source.obj.value;\n      this.runActions(source, source, event, 
"Format");\n      source.wrapped.valueAsString = event.value;\n    }\n  }\n\n  runActions(source, target, 
event, eventName) {\n    event.source = source.wrapped;\n    event.target = target.wrapped;\n    event.name = 
eventName;\n    event.targetName = target.obj.name;\n    event.rc = true;\n    return 
target.obj._runActions(event);\n  }\n\n  calculateNow() {\n    if (!this._calculationOrder) {\n      
return;\n    }\n\n    const first = this._calculationOrder[0];\n    const source = this._objects[first];\n    
globalThis.event = new Event({});\n    this.runCalculate(source, globalThis.event);\n  }\n\n  
runCalculate(source, event) {\n    if (!this._calculationOrder) {\n      return;\n    }\n\n    for (const 
targetId of this._calculationOrder) {\n      if (!(targetId in this._objects)) {\n        continue;\n      
}\n\n      if (!this._document.obj.calculate) {\n        continue;\n
       }\n\n      event.value = null;\n      const target = this._objects[targetId];\n      
this.runActions(source, target, event, "Calculate");\n\n      if (!event.rc) {\n        continue;\n      
}\n\n      if (event.value !== null) {\n        target.wrapped.value = event.value;\n      }\n\n      
event.value = target.obj.value;\n      this.runActions(target, target, event, "Validate");\n\n      if 
(!event.rc) {\n        continue;\n      }\n\n      event.value = target.obj.value;\n      
this.runActions(target, target, event, "Format");\n\n      if (event.value !== null) {\n        
target.wrapped.valueAsString = event.value;\n      }\n    }\n  }\n\n}\n\nexports.EventDispatcher = 
EventDispatcher;\n\n/***/ }),\n/* 11 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => 
{\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.FullScreen = void 
0;\n\nvar _constants = __w_pdfjs_require__(2);\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nclas
 s FullScreen extends _pdf_object.PDFObject {\n  constructor(data) {\n    super(data);\n    
this._backgroundColor = [];\n    this._clickAdvances = true;\n    this._cursor = _constants.Cursor.hidden;\n  
  this._defaultTransition = "";\n    this._escapeExits = true;\n    this._isFullScreen = true;\n    
this._loop = false;\n    this._timeDelay = 3600;\n    this._usePageTiming = false;\n    this._useTimer = 
false;\n  }\n\n  get backgroundColor() {\n    return this._backgroundColor;\n  }\n\n  set backgroundColor(_) 
{}\n\n  get clickAdvances() {\n    return this._clickAdvances;\n  }\n\n  set clickAdvances(_) {}\n\n  get 
cursor() {\n    return this._cursor;\n  }\n\n  set cursor(_) {}\n\n  get defaultTransition() {\n    return 
this._defaultTransition;\n  }\n\n  set defaultTransition(_) {}\n\n  get escapeExits() {\n    return 
this._escapeExits;\n  }\n\n  set escapeExits(_) {}\n\n  get isFullScreen() {\n    return 
this._isFullScreen;\n  }\n\n  set isFullScreen(_) {}\n\n  get loop() {\n    retu
 rn this._loop;\n  }\n\n  set loop(_) {}\n\n  get timeDelay() {\n    return this._timeDelay;\n  }\n\n  set 
timeDelay(_) {}\n\n  get transitions() {\n    return ["Replace", "WipeRight", "WipeLeft", "WipeDown", 
"WipeUp", "SplitHorizontalIn", "SplitHorizontalOut", "SplitVerticalIn", "SplitVerticalOut", 
"BlindsHorizontal", "BlindsVertical", "BoxIn", "BoxOut", "GlitterRight", "GlitterDown", "GlitterRightDown", 
"Dissolve", "Random"];\n  }\n\n  set transitions(_) {\n    throw new Error("fullscreen.transitions is 
read-only");\n  }\n\n  get usePageTiming() {\n    return this._usePageTiming;\n  }\n\n  set usePageTiming(_) 
{}\n\n  get useTimer() {\n    return this._useTimer;\n  }\n\n  set useTimer(_) {}\n\n}\n\nexports.FullScreen 
= FullScreen;\n\n/***/ }),\n/* 12 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => 
{\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.Thermometer = void 
0;\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nclass Th
 ermometer extends _pdf_object.PDFObject {\n  constructor(data) {\n    super(data);\n    this._cancelled = 
false;\n    this._duration = 100;\n    this._text = "";\n    this._value = 0;\n  }\n\n  get cancelled() {\n   
 return this._cancelled;\n  }\n\n  set cancelled(_) {\n    throw new Error("thermometer.cancelled is 
read-only");\n  }\n\n  get duration() {\n    return this._duration;\n  }\n\n  set duration(val) {\n    
this._duration = val;\n  }\n\n  get text() {\n    return this._text;\n  }\n\n  set text(val) {\n    
this._text = val;\n  }\n\n  get value() {\n    return this._value;\n  }\n\n  set value(val) {\n    
this._value = val;\n  }\n\n  begin() {}\n\n  end() {}\n\n}\n\nexports.Thermometer = Thermometer;\n\n/***/ 
}),\n/* 13 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => 
{\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.Console = void 
0;\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nclass Console extends _pdf_object.PDFO
 bject {\n  clear() {\n    this._send({\n      id: "clear"\n    });\n  }\n\n  hide() {}\n\n  println(msg) {\n 
   if (typeof msg === "string") {\n      this._send({\n        command: "println",\n        value: "PDF.js 
Console:: " + msg\n      });\n    }\n  }\n\n  show() {}\n\n}\n\nexports.Console = Console;\n\n/***/ }),\n/* 
14 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => 
{\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.Doc = void 0;\n\nvar 
_common = __w_pdfjs_require__(4);\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nvar _print_params = 
__w_pdfjs_require__(15);\n\nvar _constants = __w_pdfjs_require__(2);\n\nclass InfoProxyHandler {\n  static 
get(obj, prop) {\n    return obj[prop.toLowerCase()];\n  }\n\n  static set(obj, prop, value) {\n    throw new 
Error(`doc.info.${prop} is read-only`);\n  }\n\n}\n\nclass Doc extends _pdf_object.PDFObject {\n  
constructor(data) {\n    super(data);\n    this._expandos = globalThis;\n  
   this._baseURL = data.baseURL || "";\n    this._calculate = true;\n    this._delay = false;\n    
this._dirty = false;\n    this._disclosed = false;\n    this._media = undefined;\n    this._metadata = 
data.metadata || "";\n    this._noautocomplete = undefined;\n    this._nocache = undefined;\n    
this._spellDictionaryOrder = [];\n    this._spellLanguageOrder = [];\n    this._printParams = null;\n    
this._fields = new Map();\n    this._fieldNames = [];\n    this._event = null;\n    this._author = 
data.Author || "";\n    this._creator = data.Creator || "";\n    this._creationDate = 
this._getDate(data.CreationDate) || null;\n    this._docID = data.docID || ["", ""];\n    
this._documentFileName = data.filename || "";\n    this._filesize = data.filesize || 0;\n    this._keywords = 
data.Keywords || "";\n    this._layout = data.layout || "";\n    this._modDate = this._getDate(data.ModDate) 
|| null;\n    this._numFields = 0;\n    this._numPages = data.numPages || 1;\n    this._pageNum = da
 ta.pageNum || 0;\n    this._producer = data.Producer || "";\n    this._securityHandler = 
data.EncryptFilterName || null;\n    this._subject = data.Subject || "";\n    this._title = data.Title || 
"";\n    this._URL = data.URL || "";\n    this._info = new Proxy({\n      title: this._title,\n      author: 
this._author,\n      authors: data.authors || [this._author],\n      subject: this._subject,\n      keywords: 
this._keywords,\n      creator: this._creator,\n      producer: this._producer,\n      creationdate: 
this._creationDate,\n      moddate: this._modDate,\n      trapped: data.Trapped || "Unknown"\n    }, 
InfoProxyHandler);\n    this._zoomType = _constants.ZoomType.none;\n    this._zoom = data.zoom || 100;\n    
this._actions = (0, _common.createActionsMap)(data.actions);\n    this._globalEval = data.globalEval;\n    
this._pageActions = new Map();\n  }\n\n  _dispatchDocEvent(name) {\n    if (name === "Open") {\n      const 
dontRun = new Set(["WillClose", "WillSave", "DidSave", "Wi
 llPrint", "DidPrint", "OpenAction"]);\n\n      for (const actionName of this._actions.keys()) {\n        if 
(!dontRun.has(actionName)) {\n          this._runActions(actionName);\n        }\n      }\n\n      
this._runActions("OpenAction");\n    } else {\n      this._runActions(name);\n    }\n  }\n\n  
_dispatchPageEvent(name, actions, pageNumber) {\n    if (name === "PageOpen") {\n      if 
(!this._pageActions.has(pageNumber)) {\n        this._pageActions.set(pageNumber, (0, 
_common.createActionsMap)(actions));\n      }\n\n      this._pageNum = pageNumber - 1;\n    }\n\n    actions 
= this._pageActions.get(pageNumber)?.get(name);\n\n    if (actions) {\n      for (const action of actions) 
{\n        this._globalEval(action);\n      }\n    }\n  }\n\n  _runActions(name) {\n    const actions = 
this._actions.get(name);\n\n    if (actions) {\n      for (const action of actions) {\n        
this._globalEval(action);\n      }\n    }\n  }\n\n  _addField(name, field) {\n    this._fields.set(name, 
 field);\n\n    this._fieldNames.push(name);\n\n    this._numFields++;\n  }\n\n  _getDate(date) {\n    if 
(!date || date.length < 15 || !date.startsWith("D:")) {\n      return date;\n    }\n\n    date = 
date.substring(2);\n    const year = date.substring(0, 4);\n    const month = date.substring(4, 6);\n    
const day = date.substring(6, 8);\n    const hour = date.substring(8, 10);\n    const minute = 
date.substring(10, 12);\n    const o = date.charAt(12);\n    let second, offsetPos;\n\n    if (o === "Z" || o 
=== "+" || o === "-") {\n      second = "00";\n      offsetPos = 12;\n    } else {\n      second = 
date.substring(12, 14);\n      offsetPos = 14;\n    }\n\n    const offset = 
date.substring(offsetPos).replaceAll("\'", "");\n    return new 
Date(`${year}-${month}-${day}T${hour}:${minute}:${second}${offset}`);\n  }\n\n  get author() {\n    return 
this._author;\n  }\n\n  set author(_) {\n    throw new Error("doc.author is read-only");\n  }\n\n  get 
baseURL() {\n    return this._baseUR
 L;\n  }\n\n  set baseURL(baseURL) {\n    this._baseURL = baseURL;\n  }\n\n  get bookmarkRoot() {\n    return 
undefined;\n  }\n\n  set bookmarkRoot(_) {\n    throw new Error("doc.bookmarkRoot is read-only");\n  }\n\n  
get calculate() {\n    return this._calculate;\n  }\n\n  set calculate(calculate) {\n    this._calculate = 
calculate;\n  }\n\n  get creator() {\n    return this._creator;\n  }\n\n  set creator(_) {\n    throw new 
Error("doc.creator is read-only");\n  }\n\n  get dataObjects() {\n    return [];\n  }\n\n  set dataObjects(_) 
{\n    throw new Error("doc.dataObjects is read-only");\n  }\n\n  get delay() {\n    return this._delay;\n  
}\n\n  set delay(delay) {\n    this._delay = delay;\n  }\n\n  get dirty() {\n    return this._dirty;\n  }\n\n 
 set dirty(dirty) {\n    this._dirty = dirty;\n  }\n\n  get disclosed() {\n    return this._disclosed;\n  
}\n\n  set disclosed(disclosed) {\n    this._disclosed = disclosed;\n  }\n\n  get docID() {\n    return 
this._docID;\n  }\n\n  set do
 cID(_) {\n    throw new Error("doc.docID is read-only");\n  }\n\n  get documentFileName() {\n    return 
this._documentFileName;\n  }\n\n  set documentFileName(_) {\n    throw new Error("doc.documentFileName is 
read-only");\n  }\n\n  get dynamicXFAForm() {\n    return false;\n  }\n\n  set dynamicXFAForm(_) {\n    throw 
new Error("doc.dynamicXFAForm is read-only");\n  }\n\n  get external() {\n    return true;\n  }\n\n  set 
external(_) {\n    throw new Error("doc.external is read-only");\n  }\n\n  get filesize() {\n    return 
this._filesize;\n  }\n\n  set filesize(_) {\n    throw new Error("doc.filesize is read-only");\n  }\n\n  get 
hidden() {\n    return false;\n  }\n\n  set hidden(_) {\n    throw new Error("doc.hidden is read-only");\n  
}\n\n  get hostContainer() {\n    return undefined;\n  }\n\n  set hostContainer(_) {\n    throw new 
Error("doc.hostContainer is read-only");\n  }\n\n  get icons() {\n    return undefined;\n  }\n\n  set 
icons(_) {\n    throw new Error("doc.icons is rea
 d-only");\n  }\n\n  get info() {\n    return this._info;\n  }\n\n  set info(_) {\n    throw new 
Error("doc.info is read-only");\n  }\n\n  get innerAppWindowRect() {\n    return [0, 0, 0, 0];\n  }\n\n  set 
innerAppWindowRect(_) {\n    throw new Error("doc.innerAppWindowRect is read-only");\n  }\n\n  get 
innerDocWindowRect() {\n    return [0, 0, 0, 0];\n  }\n\n  set innerDocWindowRect(_) {\n    throw new 
Error("doc.innerDocWindowRect is read-only");\n  }\n\n  get isModal() {\n    return false;\n  }\n\n  set 
isModal(_) {\n    throw new Error("doc.isModal is read-only");\n  }\n\n  get keywords() {\n    return 
this._keywords;\n  }\n\n  set keywords(_) {\n    throw new Error("doc.keywords is read-only");\n  }\n\n  get 
layout() {\n    return this._layout;\n  }\n\n  set layout(value) {\n    if (typeof value !== "string") {\n    
  return;\n    }\n\n    if (value !== "SinglePage" && value !== "OneColumn" && value !== "TwoColumnLeft" && 
value !== "TwoPageLeft" && value !== "TwoColumnRight" && 
 value !== "TwoPageRight") {\n      value = "SinglePage";\n    }\n\n    this._send({\n      command: 
"layout",\n      value\n    });\n\n    this._layout = value;\n  }\n\n  get media() {\n    return 
this._media;\n  }\n\n  set media(media) {\n    this._media = media;\n  }\n\n  get metadata() {\n    return 
this._metadata;\n  }\n\n  set metadata(metadata) {\n    this._metadata = metadata;\n  }\n\n  get modDate() 
{\n    return this._modDate;\n  }\n\n  set modDate(_) {\n    throw new Error("doc.modDate is read-only");\n  
}\n\n  get mouseX() {\n    return 0;\n  }\n\n  set mouseX(_) {\n    throw new Error("doc.mouseX is 
read-only");\n  }\n\n  get mouseY() {\n    return 0;\n  }\n\n  set mouseY(_) {\n    throw new 
Error("doc.mouseY is read-only");\n  }\n\n  get noautocomplete() {\n    return this._noautocomplete;\n  }\n\n 
 set noautocomplete(noautocomplete) {\n    this._noautocomplete = noautocomplete;\n  }\n\n  get nocache() {\n 
   return this._nocache;\n  }\n\n  set nocache(nocache) {\n    t
 his._nocache = nocache;\n  }\n\n  get numFields() {\n    return this._numFields;\n  }\n\n  set numFields(_) 
{\n    throw new Error("doc.numFields is read-only");\n  }\n\n  get numPages() {\n    return 
this._numPages;\n  }\n\n  set numPages(_) {\n    throw new Error("doc.numPages is read-only");\n  }\n\n  get 
numTemplates() {\n    return 0;\n  }\n\n  set numTemplates(_) {\n    throw new Error("doc.numTemplates is 
read-only");\n  }\n\n  get outerAppWindowRect() {\n    return [0, 0, 0, 0];\n  }\n\n  set 
outerAppWindowRect(_) {\n    throw new Error("doc.outerAppWindowRect is read-only");\n  }\n\n  get 
outerDocWindowRect() {\n    return [0, 0, 0, 0];\n  }\n\n  set outerDocWindowRect(_) {\n    throw new 
Error("doc.outerDocWindowRect is read-only");\n  }\n\n  get pageNum() {\n    return this._pageNum;\n  }\n\n  
set pageNum(value) {\n    if (typeof value !== "number" || value < 0 || value >= this._numPages) {\n      
return;\n    }\n\n    this._send({\n      command: "page-num",\n      value
 \n    });\n\n    this._pageNum = value;\n  }\n\n  get pageWindowRect() {\n    return [0, 0, 0, 0];\n  }\n\n  
set pageWindowRect(_) {\n    throw new Error("doc.pageWindowRect is read-only");\n  }\n\n  get path() {\n    
return "";\n  }\n\n  set path(_) {\n    throw new Error("doc.path is read-only");\n  }\n\n  get 
permStatusReady() {\n    return true;\n  }\n\n  set permStatusReady(_) {\n    throw new 
Error("doc.permStatusReady is read-only");\n  }\n\n  get producer() {\n    return this._producer;\n  }\n\n  
set producer(_) {\n    throw new Error("doc.producer is read-only");\n  }\n\n  get requiresFullSave() {\n    
return false;\n  }\n\n  set requiresFullSave(_) {\n    throw new Error("doc.requiresFullSave is 
read-only");\n  }\n\n  get securityHandler() {\n    return this._securityHandler;\n  }\n\n  set 
securityHandler(_) {\n    throw new Error("doc.securityHandler is read-only");\n  }\n\n  get selectedAnnots() 
{\n    return [];\n  }\n\n  set selectedAnnots(_) {\n    throw new Error("do
 c.selectedAnnots is read-only");\n  }\n\n  get sounds() {\n    return [];\n  }\n\n  set sounds(_) {\n    
throw new Error("doc.sounds is read-only");\n  }\n\n  get spellDictionaryOrder() {\n    return 
this._spellDictionaryOrder;\n  }\n\n  set spellDictionaryOrder(spellDictionaryOrder) {\n    
this._spellDictionaryOrder = spellDictionaryOrder;\n  }\n\n  get spellLanguageOrder() {\n    return 
this._spellLanguageOrder;\n  }\n\n  set spellLanguageOrder(spellLanguageOrder) {\n    
this._spellLanguageOrder = spellLanguageOrder;\n  }\n\n  get subject() {\n    return this._subject;\n  }\n\n  
set subject(_) {\n    throw new Error("doc.subject is read-only");\n  }\n\n  get templates() {\n    return 
[];\n  }\n\n  set templates(_) {\n    throw new Error("doc.templates is read-only");\n  }\n\n  get title() 
{\n    return this._title;\n  }\n\n  set title(_) {\n    throw new Error("doc.title is read-only");\n  }\n\n  
get URL() {\n    return this._URL;\n  }\n\n  set URL(_) {\n    throw new Error("doc.U
 RL is read-only");\n  }\n\n  get viewState() {\n    return undefined;\n  }\n\n  set viewState(_) {\n    
throw new Error("doc.viewState is read-only");\n  }\n\n  get xfa() {\n    return this._xfa;\n  }\n\n  set 
xfa(_) {\n    throw new Error("doc.xfa is read-only");\n  }\n\n  get XFAForeground() {\n    return false;\n  
}\n\n  set XFAForeground(_) {\n    throw new Error("doc.XFAForeground is read-only");\n  }\n\n  get 
zoomType() {\n    return this._zoomType;\n  }\n\n  set zoomType(type) {\n    if (typeof type !== "string") 
{\n      return;\n    }\n\n    switch (type) {\n      case _constants.ZoomType.none:\n        this._send({\n  
        command: "zoom",\n          value: 1\n        });\n\n        break;\n\n      case 
_constants.ZoomType.fitP:\n        this._send({\n          command: "zoom",\n          value: "page-fit"\n    
    });\n\n        break;\n\n      case _constants.ZoomType.fitW:\n        this._send({\n          command: 
"zoom",\n          value: "page-width"\n        });\n
 \n        break;\n\n      case _constants.ZoomType.fitH:\n        this._send({\n          command: "zoom",\n 
         value: "page-height"\n        });\n\n        break;\n\n      case _constants.ZoomType.fitV:\n        
this._send({\n          command: "zoom",\n          value: "auto"\n        });\n\n        break;\n\n      
case _constants.ZoomType.pref:\n      case _constants.ZoomType.refW:\n        break;\n\n      default:\n      
  return;\n    }\n\n    this._zoomType = type;\n  }\n\n  get zoom() {\n    return this._zoom;\n  }\n\n  set 
zoom(value) {\n    if (typeof value !== "number" || value < 8.33 || value > 6400) {\n      return;\n    }\n\n 
   this._send({\n      command: "zoom",\n      value: value / 100\n    });\n  }\n\n  addAnnot() {}\n\n  
addField() {}\n\n  addIcon() {}\n\n  addLink() {}\n\n  addRecipientListCryptFilter() {}\n\n  addRequirement() 
{}\n\n  addScript() {}\n\n  addThumbnails() {}\n\n  addWatermarkFromFile() {}\n\n  addWatermarkFromText() 
{}\n\n  addWeblinks() {}
 \n\n  bringToFront() {}\n\n  calculateNow() {\n    this._eventDispatcher.calculateNow();\n  }\n\n  
closeDoc() {}\n\n  colorConvertPage() {}\n\n  createDataObject() {}\n\n  createTemplate() {}\n\n  
deletePages() {}\n\n  deleteSound() {}\n\n  embedDocAsDataObject() {}\n\n  embedOutputIntent() {}\n\n  
encryptForRecipients() {}\n\n  encryptUsingPolicy() {}\n\n  exportAsFDF() {}\n\n  exportAsFDFStr() {}\n\n  
exportAsText() {}\n\n  exportAsXFDF() {}\n\n  exportAsXFDFStr() {}\n\n  exportDataObject() {}\n\n  
exportXFAData() {}\n\n  extractPages() {}\n\n  flattenPages() {}\n\n  getAnnot() {}\n\n  getAnnots() {}\n\n  
getAnnot3D() {}\n\n  getAnnots3D() {}\n\n  getColorConvertAction() {}\n\n  getDataObject() {}\n\n  
getDataObjectContents() {}\n\n  getField(cName) {\n    if (typeof cName === "object") {\n      cName = 
cName.cName;\n    }\n\n    if (typeof cName !== "string") {\n      throw new TypeError("Invalid field name: 
must be a string");\n    }\n\n    const searchedField = this._fields.get
 (cName);\n\n    if (searchedField) {\n      return searchedField;\n    }\n\n    const parts = 
cName.split("#");\n    let childIndex = NaN;\n\n    if (parts.length === 2) {\n      childIndex = 
Math.floor(parseFloat(parts[1]));\n      cName = parts[0];\n    }\n\n    for (const [name, field] of 
this._fields.entries()) {\n      if (name.endsWith(cName)) {\n        if (!isNaN(childIndex)) {\n          
const children = this._getChildren(name);\n\n          if (childIndex < 0 || childIndex >= children.length) 
{\n            childIndex = 0;\n          }\n\n          if (childIndex < children.length) {\n            
this._fields.set(cName, children[childIndex]);\n\n            return children[childIndex];\n          }\n     
   }\n\n        this._fields.set(cName, field);\n\n        return field;\n      }\n    }\n\n    return 
null;\n  }\n\n  _getChildren(fieldName) {\n    const len = fieldName.length;\n    const children = [];\n    
const pattern = /^\\.[^.]+$/;\n\n    for (const [name, field] 
 of this._fields.entries()) {\n      if (name.startsWith(fieldName)) {\n        const finalPart = 
name.slice(len);\n\n        if (finalPart.match(pattern)) {\n          children.push(field);\n        }\n     
 }\n    }\n\n    return children;\n  }\n\n  getIcon() {}\n\n  getLegalWarnings() {}\n\n  getLinks() {}\n\n  
getNthFieldName(nIndex) {\n    if (typeof nIndex === "object") {\n      nIndex = nIndex.nIndex;\n    }\n\n    
if (typeof nIndex !== "number") {\n      throw new TypeError("Invalid field index: must be a number");\n    
}\n\n    if (0 <= nIndex && nIndex < this.numFields) {\n      return this._fieldNames[Math.trunc(nIndex)];\n  
  }\n\n    return null;\n  }\n\n  getNthTemplate() {\n    return null;\n  }\n\n  getOCGs() {}\n\n  
getOCGOrder() {}\n\n  getPageBox() {}\n\n  getPageLabel() {}\n\n  getPageNthWord() {}\n\n  
getPageNthWordQuads() {}\n\n  getPageNumWords() {}\n\n  getPageRotation() {}\n\n  getPageTransition() {}\n\n  
getPrintParams() {\n    if (!this._printParams) {\n   
    this._printParams = new _print_params.PrintParams({\n        lastPage: this._numPages - 1\n      });\n    
}\n\n    return this._printParams;\n  }\n\n  getSound() {}\n\n  getTemplate() {}\n\n  getURL() {}\n\n  
gotoNamedDest() {}\n\n  importAnFDF() {}\n\n  importAnXFDF() {}\n\n  importDataObject() {}\n\n  importIcon() 
{}\n\n  importSound() {}\n\n  importTextData() {}\n\n  importXFAData() {}\n\n  insertPages() {}\n\n  
mailDoc() {}\n\n  mailForm() {}\n\n  movePage() {}\n\n  newPage() {}\n\n  openDataObject() {}\n\n  print(bUI 
= true, nStart = 0, nEnd = -1, bSilent = false, bShrinkToFit = false, bPrintAsImage = false, bReverse = 
false, bAnnotations = true, printParams = null) {\n    if (typeof bUI === "object") {\n      nStart = 
bUI.nStart;\n      nEnd = bUI.nEnd;\n      bSilent = bUI.bSilent;\n      bShrinkToFit = bUI.bShrinkToFit;\n   
   bPrintAsImage = bUI.bPrintAsImage;\n      bReverse = bUI.bReverse;\n      bAnnotations = 
bUI.bAnnotations;\n      printParams = bUI.printParams;\n 
      bUI = bUI.bUI;\n    }\n\n    if (printParams) {\n      nStart = printParams.firstPage;\n      nEnd = 
printParams.lastPage;\n    }\n\n    if (typeof nStart === "number") {\n      nStart = Math.max(0, 
Math.trunc(nStart));\n    } else {\n      nStart = 0;\n    }\n\n    if (typeof nEnd === "number") {\n      
nEnd = Math.max(0, Math.trunc(nEnd));\n    } else {\n      nEnd = -1;\n    }\n\n    this._send({\n      
command: "print",\n      start: nStart,\n      end: nEnd\n    });\n  }\n\n  removeDataObject() {}\n\n  
removeField() {}\n\n  removeIcon() {}\n\n  removeLinks() {}\n\n  removeRequirement() {}\n\n  removeScript() 
{}\n\n  removeTemplate() {}\n\n  removeThumbnails() {}\n\n  removeWeblinks() {}\n\n  replacePages() {}\n\n  
resetForm(aFields = null) {\n    if (aFields && !Array.isArray(aFields) && typeof aFields === "object") {\n   
   aFields = aFields.aFields;\n    }\n\n    let mustCalculate = false;\n\n    if (aFields) {\n      for 
(const fieldName of aFields) {\n        if (!fiel
 dName) {\n          continue;\n        }\n\n        const field = this.getField(fieldName);\n\n        if 
(!field) {\n          continue;\n        }\n\n        field.value = field.defaultValue;\n        
field.valueAsString = field.value;\n        mustCalculate = true;\n      }\n    } else {\n      mustCalculate 
= this._fields.size !== 0;\n\n      for (const field of this._fields.values()) {\n        field.value = 
field.defaultValue;\n        field.valueAsString = field.value;\n      }\n    }\n\n    if (mustCalculate) {\n 
     this.calculateNow();\n    }\n  }\n\n  saveAs() {}\n\n  scroll() {}\n\n  selectPageNthWord() {}\n\n  
setAction() {}\n\n  setDataObjectContents() {}\n\n  setOCGOrder() {}\n\n  setPageAction() {}\n\n  
setPageBoxes() {}\n\n  setPageLabels() {}\n\n  setPageRotations() {}\n\n  setPageTabOrder() {}\n\n  
setPageTransitions() {}\n\n  spawnPageFromTemplate() {}\n\n  submitForm() {}\n\n  syncAnnotScan() 
{}\n\n}\n\nexports.Doc = Doc;\n\n/***/ }),\n/* 15 */\n/***/ ((__unuse
 d_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: 
true\n}));\nexports.PrintParams = void 0;\n\nclass PrintParams {\n  constructor(data) {\n    this.binaryOk = 
true;\n    this.bitmapDPI = 150;\n    this.booklet = {\n      binding: 0,\n      duplexMode: 0,\n      
subsetFrom: 0,\n      subsetTo: -1\n    };\n    this.colorOverride = 0;\n    this.colorProfile = "";\n    
this.constants = Object.freeze({\n      bookletBindings: Object.freeze({\n        Left: 0,\n        Right: 
1,\n        LeftTall: 2,\n        RightTall: 3\n      }),\n      bookletDuplexMode: Object.freeze({\n        
BothSides: 0,\n        FrontSideOnly: 1,\n        BasicSideOnly: 2\n      }),\n      colorOverrides: 
Object.freeze({\n        auto: 0,\n        gray: 1,\n        mono: 2\n      }),\n      fontPolicies: 
Object.freeze({\n        everyPage: 0,\n        jobStart: 1,\n        pageRange: 2\n      }),\n      
handling: Object.freeze({\n        none: 0,\n        fit: 1,\n 
        shrink: 2,\n        tileAll: 3,\n        tileLarge: 4,\n        nUp: 5,\n        booklet: 6\n      
}),\n      interactionLevel: Object.freeze({\n        automatic: 0,\n        full: 1,\n        silent: 2\n    
  }),\n      nUpPageOrders: Object.freeze({\n        Horizontal: 0,\n        HorizontalReversed: 1,\n        
Vertical: 2\n      }),\n      printContents: Object.freeze({\n        doc: 0,\n        docAndComments: 1,\n   
     formFieldsOnly: 2\n      }),\n      flagValues: Object.freeze({\n        applyOverPrint: 1,\n        
applySoftProofSettings: 1 << 1,\n        applyWorkingColorSpaces: 1 << 2,\n        emitHalftones: 1 << 3,\n   
     emitPostScriptXObjects: 1 << 4,\n        emitFormsAsPSForms: 1 << 5,\n        maxJP2KRes: 1 << 6,\n      
  setPageSize: 1 << 7,\n        suppressBG: 1 << 8,\n        suppressCenter: 1 << 9,\n        
suppressCJKFontSubst: 1 << 10,\n        suppressCropClip: 1 << 1,\n        suppressRotate: 1 << 12,\n        
suppressTransfer: 1 << 13,\n     
    suppressUCR: 1 << 14,\n        useTrapAnnots: 1 << 15,\n        usePrintersMarks: 1 << 16\n      }),\n    
  rasterFlagValues: Object.freeze({\n        textToOutline: 1,\n        strokesToOutline: 1 << 1,\n        
allowComplexClip: 1 << 2,\n        preserveOverprint: 1 << 3\n      }),\n      subsets: Object.freeze({\n     
   all: 0,\n        even: 1,\n        odd: 2\n      }),\n      tileMarks: Object.freeze({\n        none: 0,\n 
       west: 1,\n        east: 2\n      }),\n      usages: Object.freeze({\n        auto: 0,\n        use: 
1,\n        noUse: 2\n      })\n    });\n    this.downloadFarEastFonts = false;\n    this.fileName = "";\n    
this.firstPage = 0;\n    this.flags = 0;\n    this.fontPolicy = 0;\n    this.gradientDPI = 150;\n    
this.interactive = 1;\n    this.lastPage = data.lastPage;\n    this.npUpAutoRotate = false;\n    
this.npUpNumPagesH = 2;\n    this.npUpNumPagesV = 2;\n    this.npUpPageBorder = false;\n    
this.npUpPageOrder = 0;\n    this.pageHandling = 0;\n 
    this.pageSubset = 0;\n    this.printAsImage = false;\n    this.printContent = 0;\n    this.printerName = 
"";\n    this.psLevel = 0;\n    this.rasterFlags = 0;\n    this.reversePages = false;\n    this.tileLabel = 
false;\n    this.tileMark = 0;\n    this.tileOverlap = 0;\n    this.tileScale = 1.0;\n    
this.transparencyLevel = 75;\n    this.usePrinterCRD = 0;\n    this.useT1Conversion = 0;\n  
}\n\n}\n\nexports.PrintParams = PrintParams;\n\n/***/ }),\n/* 16 */\n/***/ ((__unused_webpack_module, 
exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: 
true\n}));\nexports.ProxyHandler = void 0;\n\nclass ProxyHandler {\n  constructor() {\n    this.nosend = new 
Set(["delay"]);\n  }\n\n  get(obj, prop) {\n    if (prop in obj._expandos) {\n      const val = 
obj._expandos[prop];\n\n      if (typeof val === "function") {\n        return val.bind(obj);\n      }\n\n    
  return val;\n    }\n\n    if (typeof prop === "string" && !prop.startsWith("_") && prop in obj) {\n  
     const val = obj[prop];\n\n      if (typeof val === "function") {\n        return val.bind(obj);\n      
}\n\n      return val;\n    }\n\n    return undefined;\n  }\n\n  set(obj, prop, value) {\n    if 
(obj._kidIds) {\n      obj._kidIds.forEach(id => {\n        obj._appObjects[id].wrapped[prop] = value;\n      
});\n    }\n\n    if (typeof prop === "string" && !prop.startsWith("_") && prop in obj) {\n      const old = 
obj[prop];\n      obj[prop] = value;\n\n      if (!this.nosend.has(prop) && obj._send && obj._id !== null && 
typeof old !== "function") {\n        const data = {\n          id: obj._id\n        };\n        data[prop] = 
obj[prop];\n\n        if (!obj._siblings) {\n          obj._send(data);\n        } else {\n          
data.siblings = obj._siblings;\n\n          obj._send(data);\n        }\n      }\n    } else {\n      
obj._expandos[prop] = value;\n    }\n\n    return true;\n  }\n\n  has(obj, prop) {\n    return prop in 
obj._expandos || typeof prop === "string" && !pro
 p.startsWith("_") && prop in obj;\n  }\n\n  getPrototypeOf(obj) {\n    return null;\n  }\n\n  
setPrototypeOf(obj, proto) {\n    return false;\n  }\n\n  isExtensible(obj) {\n    return true;\n  }\n\n  
preventExtensions(obj) {\n    return false;\n  }\n\n  getOwnPropertyDescriptor(obj, prop) {\n    if (prop in 
obj._expandos) {\n      return {\n        configurable: true,\n        enumerable: true,\n        value: 
obj._expandos[prop]\n      };\n    }\n\n    if (typeof prop === "string" && !prop.startsWith("_") && prop in 
obj) {\n      return {\n        configurable: true,\n        enumerable: true,\n        value: obj[prop]\n    
  };\n    }\n\n    return undefined;\n  }\n\n  defineProperty(obj, key, descriptor) {\n    
Object.defineProperty(obj._expandos, key, descriptor);\n    return true;\n  }\n\n  deleteProperty(obj, prop) 
{\n    if (prop in obj._expandos) {\n      delete obj._expandos[prop];\n    }\n  }\n\n  ownKeys(obj) {\n    
const fromExpandos = Reflect.ownKeys(obj._expandos);\n  
   const fromObj = Reflect.ownKeys(obj).filter(k => !k.startsWith("_"));\n    return 
fromExpandos.concat(fromObj);\n  }\n\n}\n\nexports.ProxyHandler = ProxyHandler;\n\n/***/ }),\n/* 17 */\n/***/ 
((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, 
"__esModule", ({\n  value: true\n}));\nexports.Util = void 0;\n\nvar _pdf_object = 
__w_pdfjs_require__(7);\n\nclass Util extends _pdf_object.PDFObject {\n  constructor(data) {\n    
super(data);\n    this._scandCache = new Map();\n    this._months = ["January", "February", "March", "April", 
"May", "June", "July", "August", "September", "October", "November", "December"];\n    this._days = 
["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];\n    this.MILLISECONDS_IN_DAY 
= 86400000;\n    this.MILLISECONDS_IN_WEEK = 604800000;\n    this._externalCall = data.externalCall;\n  }\n\n 
 printf(...args) {\n    if (args.length === 0) {\n      throw new Error("Invalid number of p
 arams in printf");\n    }\n\n    if (typeof args[0] !== "string") {\n      throw new TypeError("First 
argument of printf must be a string");\n    }\n\n    const pattern = /%(,[0-4])?([+ 
0#]+)?(\\d+)?(\\.\\d+)?(.)/g;\n    const PLUS = 1;\n    const SPACE = 2;\n    const ZERO = 4;\n    const HASH 
= 8;\n    let i = 0;\n    return args[0].replace(pattern, function (match, nDecSep, cFlags, nWidth, 
nPrecision, cConvChar) {\n      if (cConvChar !== "d" && cConvChar !== "f" && cConvChar !== "s" && cConvChar 
!== "x") {\n        const buf = ["%"];\n\n        for (const str of [nDecSep, cFlags, nWidth, nPrecision, 
cConvChar]) {\n          if (str) {\n            buf.push(str);\n          }\n        }\n\n        return 
buf.join("");\n      }\n\n      i++;\n\n      if (i === args.length) {\n        throw new Error("Not enough 
arguments in printf");\n      }\n\n      const arg = args[i];\n\n      if (cConvChar === "s") {\n        
return arg.toString();\n      }\n\n      let flags = 0;\n\n      if
  (cFlags) {\n        for (const flag of cFlags) {\n          switch (flag) {\n            case "+":\n        
      flags |= PLUS;\n              break;\n\n            case " ":\n              flags |= SPACE;\n          
    break;\n\n            case "0":\n              flags |= ZERO;\n              break;\n\n            case 
"#":\n              flags |= HASH;\n              break;\n          }\n        }\n      }\n\n      cFlags = 
flags;\n\n      if (nWidth) {\n        nWidth = parseInt(nWidth);\n      }\n\n      let intPart = 
Math.trunc(arg);\n\n      if (cConvChar === "x") {\n        let hex = 
Math.abs(intPart).toString(16).toUpperCase();\n\n        if (nWidth !== undefined) {\n          hex = 
hex.padStart(nWidth, cFlags & ZERO ? "0" : " ");\n        }\n\n        if (cFlags & HASH) {\n          hex = 
`0x${hex}`;\n        }\n\n        return hex;\n      }\n\n      if (nPrecision) {\n        nPrecision = 
parseInt(nPrecision.substring(1));\n      }\n\n      nDecSep = nDecSep ? nDecSe
 p.substring(1) : "0";\n      const separators = {\n        0: [",", "."],\n        1: ["", "."],\n        2: 
[".", ","],\n        3: ["", ","],\n        4: ["\'", "."]\n      };\n      const [thousandSep, decimalSep] = 
separators[nDecSep];\n      let decPart = "";\n\n      if (cConvChar === "f") {\n        if (nPrecision !== 
undefined) {\n          decPart = Math.abs(arg - intPart).toFixed(nPrecision);\n        } else {\n          
decPart = Math.abs(arg - intPart).toString();\n        }\n\n        if (decPart.length > 2) {\n          
decPart = `${decimalSep}${decPart.substring(2)}`;\n        } else if (cFlags & HASH) {\n          decPart = 
".";\n        } else {\n          decPart = "";\n        }\n      }\n\n      let sign = "";\n\n      if 
(intPart < 0) {\n        sign = "-";\n        intPart = -intPart;\n      } else if (cFlags & PLUS) {\n        
sign = "+";\n      } else if (cFlags & SPACE) {\n        sign = " ";\n      }\n\n      if (thousandSep && 
intPart >= 1000) {\n        c
 onst buf = [];\n\n        while (true) {\n          buf.push((intPart % 1000).toString().padStart(3, 
"0"));\n          intPart = Math.trunc(intPart / 1000);\n\n          if (intPart < 1000) {\n            
buf.push(intPart.toString());\n            break;\n          }\n        }\n\n        intPart = 
buf.reverse().join(thousandSep);\n      } else {\n        intPart = intPart.toString();\n      }\n\n      let 
n = `${intPart}${decPart}`;\n\n      if (nWidth !== undefined) {\n        n = n.padStart(nWidth - 
sign.length, cFlags & ZERO ? "0" : " ");\n      }\n\n      return `${sign}${n}`;\n    });\n  }\n\n  
iconStreamFromIcon() {}\n\n  printd(cFormat, oDate) {\n    switch (cFormat) {\n      case 0:\n        return 
this.printd("D:yyyymmddHHMMss", oDate);\n\n      case 1:\n        return this.printd("yyyy.mm.dd HH:MM:ss", 
oDate);\n\n      case 2:\n        return this.printd("m/d/yy h:MM:ss tt", oDate);\n    }\n\n    const 
handlers = {\n      mmmm: data => {\n        return this._months[data.
 month];\n      },\n      mmm: data => {\n        return this._months[data.month].substring(0, 3);\n      
},\n      mm: data => {\n        return (data.month + 1).toString().padStart(2, "0");\n      },\n      m: 
data => {\n        return (data.month + 1).toString();\n      },\n      dddd: data => {\n        return 
this._days[data.dayOfWeek];\n      },\n      ddd: data => {\n        return 
this._days[data.dayOfWeek].substring(0, 3);\n      },\n      dd: data => {\n        return 
data.day.toString().padStart(2, "0");\n      },\n      d: data => {\n        return data.day.toString();\n    
  },\n      yyyy: data => {\n        return data.year.toString();\n      },\n      yy: data => {\n        
return (data.year % 100).toString().padStart(2, "0");\n      },\n      HH: data => {\n        return 
data.hours.toString().padStart(2, "0");\n      },\n      H: data => {\n        return 
data.hours.toString();\n      },\n      hh: data => {\n        return (1 + (data.hours + 11) % 
12).toString().pa
 dStart(2, "0");\n      },\n      h: data => {\n        return (1 + (data.hours + 11) % 12).toString();\n     
 },\n      MM: data => {\n        return data.minutes.toString().padStart(2, "0");\n      },\n      M: data 
=> {\n        return data.minutes.toString();\n      },\n      ss: data => {\n        return 
data.seconds.toString().padStart(2, "0");\n      },\n      s: data => {\n        return 
data.seconds.toString();\n      },\n      tt: data => {\n        return data.hours < 12 ? "am" : "pm";\n      
},\n      t: data => {\n        return data.hours < 12 ? "a" : "p";\n      }\n    };\n    const data = {\n    
  year: oDate.getFullYear(),\n      month: oDate.getMonth(),\n      day: oDate.getDate(),\n      dayOfWeek: 
oDate.getDay(),\n      hours: oDate.getHours(),\n      minutes: oDate.getMinutes(),\n      seconds: 
oDate.getSeconds()\n    };\n    const patterns = 
/(mmmm|mmm|mm|m|dddd|ddd|dd|d|yyyy|yy|HH|H|hh|h|MM|M|ss|s|tt|t|\\\\.)/g;\n    return 
cFormat.replace(patterns, function (m
 atch, pattern) {\n      if (pattern in handlers) {\n        return handlers[pattern](data);\n      }\n\n     
 return pattern.charCodeAt(1);\n    });\n  }\n\n  printx(cFormat, cSource) {\n    const handlers = [x => x, x 
=> x.toUpperCase(), x => x.toLowerCase()];\n    const buf = [];\n    let i = 0;\n    const ii = 
cSource.length;\n    let currCase = handlers[0];\n    let escaped = false;\n\n    for (const command of 
cFormat) {\n      if (escaped) {\n        buf.push(command);\n        escaped = false;\n        continue;\n   
   }\n\n      if (i >= ii) {\n        break;\n      }\n\n      switch (command) {\n        case "?":\n        
  buf.push(currCase(cSource.charAt(i++)));\n          break;\n\n        case "X":\n          while (i < ii) 
{\n            const char = cSource.charAt(i++);\n\n            if ("a" <= char && char <= "z" || "A" <= char 
&& char <= "Z" || "0" <= char && char <= "9") {\n              buf.push(currCase(char));\n              
break;\n            }\n          }\n
 \n          break;\n\n        case "A":\n          while (i < ii) {\n            const char = 
cSource.charAt(i++);\n\n            if ("a" <= char && char <= "z" || "A" <= char && char <= "Z") {\n         
     buf.push(currCase(char));\n              break;\n            }\n          }\n\n          break;\n\n      
  case "9":\n          while (i < ii) {\n            const char = cSource.charAt(i++);\n\n            if ("0" 
<= char && char <= "9") {\n              buf.push(char);\n              break;\n            }\n          
}\n\n          break;\n\n        case "*":\n          while (i < ii) {\n            
buf.push(currCase(cSource.charAt(i++)));\n          }\n\n          break;\n\n        case "\\\\":\n          
escaped = true;\n          break;\n\n        case ">":\n          currCase = handlers[1];\n          
break;\n\n        case "<":\n          currCase = handlers[2];\n          break;\n\n        case "=":\n       
   currCase = handlers[0];\n          break;\n\n        default:
 \n          buf.push(command);\n      }\n    }\n\n    return buf.join("");\n  }\n\n  scand(cFormat, cDate) 
{\n    if (cDate === "") {\n      return new Date();\n    }\n\n    switch (cFormat) {\n      case 0:\n        
return this.scand("D:yyyymmddHHMMss", cDate);\n\n      case 1:\n        return this.scand("yyyy.mm.dd 
HH:MM:ss", cDate);\n\n      case 2:\n        return this.scand("m/d/yy h:MM:ss tt", cDate);\n    }\n\n    if 
(!this._scandCache.has(cFormat)) {\n      const months = this._months;\n      const days = this._days;\n      
const handlers = {\n        mmmm: {\n          pattern: `(${months.join("|")})`,\n          action: (value, 
data) => {\n            data.month = months.indexOf(value);\n          }\n        },\n        mmm: {\n        
  pattern: `(${months.map(month => month.substring(0, 3)).join("|")})`,\n          action: (value, data) => 
{\n            data.month = months.findIndex(month => month.substring(0, 3) === value);\n          }\n        
},\n        mm: {\n    
       pattern: `(\\\\d{2})`,\n          action: (value, data) => {\n            data.month = parseInt(value) 
- 1;\n          }\n        },\n        m: {\n          pattern: `(\\\\d{1,2})`,\n          action: (value, 
data) => {\n            data.month = parseInt(value) - 1;\n          }\n        },\n        dddd: {\n         
 pattern: `(${days.join("|")})`,\n          action: (value, data) => {\n            data.day = 
days.indexOf(value);\n          }\n        },\n        ddd: {\n          pattern: `(${days.map(day => 
day.substring(0, 3)).join("|")})`,\n          action: (value, data) => {\n            data.day = 
days.findIndex(day => day.substring(0, 3) === value);\n          }\n        },\n        dd: {\n          
pattern: "(\\\\d{2})",\n          action: (value, data) => {\n            data.day = parseInt(value);\n       
   }\n        },\n        d: {\n          pattern: "(\\\\d{1,2})",\n          action: (value, data) => {\n    
        data.day = parseInt(value);\n          }\n  
       },\n        yyyy: {\n          pattern: "(\\\\d{4})",\n          action: (value, data) => {\n          
  data.year = parseInt(value);\n          }\n        },\n        yy: {\n          pattern: "(\\\\d{2})",\n    
      action: (value, data) => {\n            data.year = 2000 + parseInt(value);\n          }\n        },\n  
      HH: {\n          pattern: "(\\\\d{2})",\n          action: (value, data) => {\n            data.hours = 
parseInt(value);\n          }\n        },\n        H: {\n          pattern: "(\\\\d{1,2})",\n          
action: (value, data) => {\n            data.hours = parseInt(value);\n          }\n        },\n        hh: 
{\n          pattern: "(\\\\d{2})",\n          action: (value, data) => {\n            data.hours = 
parseInt(value);\n          }\n        },\n        h: {\n          pattern: "(\\\\d{1,2})",\n          
action: (value, data) => {\n            data.hours = parseInt(value);\n          }\n        },\n        MM: 
{\n          pattern: "(\\\\d{2})",\
 n          action: (value, data) => {\n            data.minutes = parseInt(value);\n          }\n        
},\n        M: {\n          pattern: "(\\\\d{1,2})",\n          action: (value, data) => {\n            
data.minutes = parseInt(value);\n          }\n        },\n        ss: {\n          pattern: "(\\\\d{2})",\n   
       action: (value, data) => {\n            data.seconds = parseInt(value);\n          }\n        },\n     
   s: {\n          pattern: "(\\\\d{1,2})",\n          action: (value, data) => {\n            data.seconds = 
parseInt(value);\n          }\n        },\n        tt: {\n          pattern: "([aApP][mM])",\n          
action: (value, data) => {\n            const char = value.charAt(0);\n            data.am = char === "a" || 
char === "A";\n          }\n        },\n        t: {\n          pattern: "([aApP])",\n          action: 
(value, data) => {\n            data.am = value === "a" || value === "A";\n          }\n        }\n      };\n 
     const escapedFormat = cFor
 mat.replace(/[.*+\\-?^${}()|[\\]\\\\]/g, "\\\\$&");\n      const patterns = 
/(mmmm|mmm|mm|m|dddd|ddd|dd|d|yyyy|yy|HH|H|hh|h|MM|M|ss|s|tt|t)/g;\n      const actions = [];\n      const re 
= escapedFormat.replace(patterns, function (match, patternElement) {\n        const {\n          pattern,\n   
       action\n        } = handlers[patternElement];\n        actions.push(action);\n        return 
pattern;\n      });\n\n      this._scandCache.set(cFormat, [re, actions]);\n    }\n\n    const [re, actions] 
= this._scandCache.get(cFormat);\n\n    const matches = new RegExp(re, "g").exec(cDate);\n\n    if (!matches 
|| matches.length !== actions.length + 1) {\n      return null;\n    }\n\n    const data = {\n      year: 
0,\n      month: 0,\n      day: 0,\n      hours: 0,\n      minutes: 0,\n      seconds: 0,\n      am: null\n   
 };\n    actions.forEach((action, i) => action(matches[i + 1], data));\n\n    if (data.am !== null) {\n      
data.hours = data.hours % 12 + (data.am ? 0 : 12);\n    }\
 n\n    return new Date(data.year, data.month, data.day, data.hours, data.minutes, data.seconds);\n  }\n\n  
spansToXML() {}\n\n  stringFromStream() {}\n\n  xmlToSpans() {}\n\n}\n\nexports.Util = Util;\n\n/***/ 
})\n/******/ \t]);\n/************************************************************************/\n/******/ \t// 
The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require 
function\n/******/ \tfunction __w_pdfjs_require__(moduleId) {\n/******/ \t\t// Check if module is in 
cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== 
undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new 
module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = 
{\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: 
{}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// E
 xecute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, 
__w_pdfjs_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn 
module.exports;\n/******/ \t}\n/******/ 
\t\n/************************************************************************/\nvar __webpack_exports__ = 
{};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the 
chunk.\n(() => {\nvar exports = __webpack_exports__;\n\n\nObject.defineProperty(exports, "__esModule", ({\n  
value: true\n}));\nObject.defineProperty(exports, "initSandbox", ({\n  enumerable: true,\n  get: function () 
{\n    return _initialization.initSandbox;\n  }\n}));\n\nvar _initialization = 
__w_pdfjs_require__(1);\n\nconst pdfjsVersion = \'2.13.216\';\nconst pdfjsBuild = 
\'399a0ec60\';\n})();\n\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});'];
     code.push("delete dump;");
     let success = false;
     let buf = 0;
@@ -269,7 +269,7 @@ class Sandbox {
   }
 
   dispatchEvent(event) {
-    this.support.callSandboxFunction("dispatchEvent", event);
+    this.support?.callSandboxFunction("dispatchEvent", event);
   }
 
   dumpMemoryUse() {
diff --git a/third-party/pdfjs/build/pdf.worker.js b/third-party/pdfjs/build/pdf.worker.js
index b58495735..5c31a8418 100644
--- a/third-party/pdfjs/build/pdf.worker.js
+++ b/third-party/pdfjs/build/pdf.worker.js
@@ -2,7 +2,7 @@
  * @licstart The following is the entire license notice for the
  * Javascript code in this page
  *
- * Copyright 2021 Mozilla Foundation
+ * Copyright 2022 Mozilla Foundation
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -48,17 +48,19 @@ var _util = __w_pdfjs_require__(2);
 
 var _primitives = __w_pdfjs_require__(5);
 
-var _pdf_manager = __w_pdfjs_require__(7);
+var _pdf_manager = __w_pdfjs_require__(6);
 
-var _writer = __w_pdfjs_require__(71);
+var _cleanup_helper = __w_pdfjs_require__(66);
+
+var _writer = __w_pdfjs_require__(72);
 
 var _is_node = __w_pdfjs_require__(4);
 
-var _message_handler = __w_pdfjs_require__(99);
+var _message_handler = __w_pdfjs_require__(100);
 
-var _worker_stream = __w_pdfjs_require__(100);
+var _worker_stream = __w_pdfjs_require__(101);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 class WorkerTask {
   constructor(name) {
@@ -115,7 +117,7 @@ class WorkerMessageHandler {
     const WorkerTasks = [];
     const verbosity = (0, _util.getVerbosityLevel)();
     const apiVersion = docParams.apiVersion;
-    const workerVersion = '2.12.313';
+    const workerVersion = '2.13.216';
 
     if (apiVersion !== workerVersion) {
       throw new Error(`The API version "${apiVersion}" does not match ` + `the Worker version 
"${workerVersion}".`);
@@ -132,7 +134,13 @@ class WorkerMessageHandler {
     }
 
     if (typeof ReadableStream === "undefined") {
-      throw new Error("The browser/environment lacks native support for critical " + "functionality used by 
the PDF.js library (e.g. `ReadableStream`); " + "please use a `legacy`-build instead.");
+      const partialMsg = "The browser/environment lacks native support for critical " + "functionality used 
by the PDF.js library (e.g. `ReadableStream`); ";
+
+      if (_is_node.isNodeJS) {
+        throw new Error(partialMsg + "please use a `legacy`-build instead.");
+      }
+
+      throw new Error(partialMsg + "please update to a supported browser.");
     }
 
     const docId = docParams.docId;
@@ -389,10 +397,8 @@ class WorkerMessageHandler {
         });
       });
     });
-    handler.on("GetPageIndex", function wphSetupGetPageIndex({
-      ref
-    }) {
-      const pageRef = _primitives.Ref.get(ref.num, ref.gen);
+    handler.on("GetPageIndex", function wphSetupGetPageIndex(data) {
+      const pageRef = _primitives.Ref.get(data.num, data.gen);
 
       return pdfManager.ensureCatalog("getPageIndex", [pageRef]);
     });
@@ -542,7 +548,7 @@ class WorkerMessageHandler {
 
           if (xrefInfo instanceof _primitives.Dict) {
             xrefInfo.forEach((key, value) => {
-              if ((0, _util.isString)(key) && (0, _util.isString)(value)) {
+              if (typeof value === "string") {
                 infoObj[key] = (0, _util.stringToPDFString)(value);
               }
             });
@@ -620,7 +626,6 @@ class WorkerMessageHandler {
           handler,
           task,
           sink,
-          normalizeWhitespace: data.normalizeWhitespace,
           includeMarkedContent: data.includeMarkedContent,
           combineTextItems: data.combineTextItems
         }).then(function () {
@@ -663,7 +668,7 @@ class WorkerMessageHandler {
         waitOn.push(cleanupPromise);
         pdfManager = null;
       } else {
-        (0, _primitives.clearPrimitiveCaches)();
+        (0, _cleanup_helper.clearGlobalCaches)();
       }
 
       if (cancelXHRs) {
@@ -719,7 +724,6 @@ exports.arrayByteLength = arrayByteLength;
 exports.arraysToBytes = arraysToBytes;
 exports.assert = assert;
 exports.bytesToString = bytesToString;
-exports.createObjectURL = createObjectURL;
 exports.createPromiseCapability = createPromiseCapability;
 exports.createValidAbsoluteUrl = createValidAbsoluteUrl;
 exports.escapeString = escapeString;
@@ -729,13 +733,9 @@ exports.info = info;
 exports.isArrayBuffer = isArrayBuffer;
 exports.isArrayEqual = isArrayEqual;
 exports.isAscii = isAscii;
-exports.isBool = isBool;
-exports.isNum = isNum;
 exports.isSameOrigin = isSameOrigin;
-exports.isString = isString;
 exports.objectFromMap = objectFromMap;
 exports.objectSize = objectSize;
-exports.removeNullCharacters = removeNullCharacters;
 exports.setVerbosityLevel = setVerbosityLevel;
 exports.shadow = shadow;
 exports.string32 = string32;
@@ -1282,24 +1282,12 @@ class AbortException extends BaseException {
 }
 
 exports.AbortException = AbortException;
-const NullCharactersRegExp = /\x00+/g;
-const InvisibleCharactersRegExp = /[\x01-\x1F]/g;
-
-function removeNullCharacters(str, replaceInvisible = false) {
-  if (typeof str !== "string") {
-    warn("The argument for removeNullCharacters must be a string.");
-    return str;
-  }
 
-  if (replaceInvisible) {
-    str = str.replace(InvisibleCharactersRegExp, " ");
+function bytesToString(bytes) {
+  if (typeof bytes !== "object" || bytes === null || bytes.length === undefined) {
+    unreachable("Invalid argument for bytesToString");
   }
 
-  return str.replace(NullCharactersRegExp, "");
-}
-
-function bytesToString(bytes) {
-  assert(bytes !== null && typeof bytes === "object" && bytes.length !== undefined, "Invalid argument for 
bytesToString");
   const length = bytes.length;
   const MAX_ARGUMENT_COUNT = 8192;
 
@@ -1319,7 +1307,10 @@ function bytesToString(bytes) {
 }
 
 function stringToBytes(str) {
-  assert(typeof str === "string", "Invalid argument for stringToBytes");
+  if (typeof str !== "string") {
+    unreachable("Invalid argument for stringToBytes");
+  }
+
   const length = str.length;
   const bytes = new Uint8Array(length);
 
@@ -1335,8 +1326,11 @@ function arrayByteLength(arr) {
     return arr.length;
   }
 
-  assert(arr.byteLength !== undefined, "arrayByteLength - invalid argument.");
-  return arr.byteLength;
+  if (arr.byteLength !== undefined) {
+    return arr.byteLength;
+  }
+
+  unreachable("Invalid argument for arrayByteLength");
 }
 
 function arraysToBytes(arr) {
@@ -1596,24 +1590,37 @@ exports.Util = Util;
 const PDFStringTranslateTable = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0x2d8, 0x2c7, 0x2c6, 0x2d9, 0x2dd, 0x2db, 0x2da, 0x2dc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014, 0x2013, 0x192, 0x2044, 0x2039, 0x203a, 0x2212, 
0x2030, 0x201e, 0x201c, 0x201d, 0x2018, 0x2019, 0x201a, 0x2122, 0xfb01, 0xfb02, 0x141, 0x152, 0x160, 0x178, 
0x17d, 0x131, 0x142, 0x153, 0x161, 0x17e, 0, 0x20ac];
 
 function stringToPDFString(str) {
-  const length = str.length,
-        strBuf = [];
+  if (str[0] >= "\xEF") {
+    let encoding;
 
-  if (str[0] === "\xFE" && str[1] === "\xFF") {
-    for (let i = 2; i < length; i += 2) {
-      strBuf.push(String.fromCharCode(str.charCodeAt(i) << 8 | str.charCodeAt(i + 1)));
-    }
-  } else if (str[0] === "\xFF" && str[1] === "\xFE") {
-    for (let i = 2; i < length; i += 2) {
-      strBuf.push(String.fromCharCode(str.charCodeAt(i + 1) << 8 | str.charCodeAt(i)));
+    if (str[0] === "\xFE" && str[1] === "\xFF") {
+      encoding = "utf-16be";
+    } else if (str[0] === "\xFF" && str[1] === "\xFE") {
+      encoding = "utf-16le";
+    } else if (str[0] === "\xEF" && str[1] === "\xBB" && str[2] === "\xBF") {
+      encoding = "utf-8";
     }
-  } else {
-    for (let i = 0; i < length; ++i) {
-      const code = PDFStringTranslateTable[str.charCodeAt(i)];
-      strBuf.push(code ? String.fromCharCode(code) : str.charAt(i));
+
+    if (encoding) {
+      try {
+        const decoder = new TextDecoder(encoding, {
+          fatal: true
+        });
+        const buffer = stringToBytes(str);
+        return decoder.decode(buffer);
+      } catch (ex) {
+        warn(`stringToPDFString: "${ex}".`);
+      }
     }
   }
 
+  const strBuf = [];
+
+  for (let i = 0, ii = str.length; i < ii; i++) {
+    const code = PDFStringTranslateTable[str.charCodeAt(i)];
+    strBuf.push(code ? String.fromCharCode(code) : str.charAt(i));
+  }
+
   return strBuf.join("");
 }
 
@@ -1652,18 +1659,6 @@ function utf8StringToString(str) {
   return unescape(encodeURIComponent(str));
 }
 
-function isBool(v) {
-  return typeof v === "boolean";
-}
-
-function isNum(v) {
-  return typeof v === "number";
-}
-
-function isString(v) {
-  return typeof v === "string";
-}
-
 function isArrayBuffer(v) {
   return typeof v === "object" && v !== null && v.byteLength !== undefined;
 }
@@ -1710,30 +1705,6 @@ function createPromiseCapability() {
   return capability;
 }
 
-function createObjectURL(data, contentType = "", forceDataSchema = false) {
-  if (URL.createObjectURL && typeof Blob !== "undefined" && !forceDataSchema) {
-    return URL.createObjectURL(new Blob([data], {
-      type: contentType
-    }));
-  }
-
-  const digits = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
-  let buffer = `data:${contentType};base64,`;
-
-  for (let i = 0, ii = data.length; i < ii; i += 3) {
-    const b1 = data[i] & 0xff;
-    const b2 = data[i + 1] & 0xff;
-    const b3 = data[i + 2] & 0xff;
-    const d1 = b1 >> 2,
-          d2 = (b1 & 3) << 4 | b2 >> 4;
-    const d3 = i + 1 < ii ? (b2 & 0xf) << 2 | b3 >> 6 : 64;
-    const d4 = i + 2 < ii ? b3 & 0x3f : 64;
-    buffer += digits[d1] + digits[d2] + digits[d3] + digits[d4];
-  }
-
-  return buffer;
-}
-
 /***/ }),
 /* 3 */
 /***/ ((__unused_webpack_module, __unused_webpack_exports, __w_pdfjs_require__) => {
@@ -1771,14 +1742,10 @@ exports.clearPrimitiveCaches = clearPrimitiveCaches;
 exports.isCmd = isCmd;
 exports.isDict = isDict;
 exports.isName = isName;
-exports.isRef = isRef;
 exports.isRefsEqual = isRefsEqual;
-exports.isStream = isStream;
 
 var _util = __w_pdfjs_require__(2);
 
-var _base_stream = __w_pdfjs_require__(6);
-
 const CIRCULAR_REF = Symbol("CIRCULAR_REF");
 exports.CIRCULAR_REF = CIRCULAR_REF;
 const EOF = Symbol("EOF");
@@ -2125,18 +2092,10 @@ function isDict(v, type) {
   return v instanceof Dict && (type === undefined || isName(v.get("Type"), type));
 }
 
-function isRef(v) {
-  return v instanceof Ref;
-}
-
 function isRefsEqual(v1, v2) {
   return v1.num === v2.num && v1.gen === v2.gen;
 }
 
-function isStream(v) {
-  return v instanceof _base_stream.BaseStream;
-}
-
 function clearPrimitiveCaches() {
   Cmd._clearCache();
 
@@ -2151,113 +2110,6 @@ function clearPrimitiveCaches() {
 
 
 
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.BaseStream = void 0;
-
-var _util = __w_pdfjs_require__(2);
-
-class BaseStream {
-  constructor() {
-    if (this.constructor === BaseStream) {
-      (0, _util.unreachable)("Cannot initialize BaseStream.");
-    }
-  }
-
-  get length() {
-    (0, _util.unreachable)("Abstract getter `length` accessed");
-  }
-
-  get isEmpty() {
-    (0, _util.unreachable)("Abstract getter `isEmpty` accessed");
-  }
-
-  get isDataLoaded() {
-    return (0, _util.shadow)(this, "isDataLoaded", true);
-  }
-
-  getByte() {
-    (0, _util.unreachable)("Abstract method `getByte` called");
-  }
-
-  getBytes(length, forceClamped = false) {
-    (0, _util.unreachable)("Abstract method `getBytes` called");
-  }
-
-  peekByte() {
-    const peekedByte = this.getByte();
-
-    if (peekedByte !== -1) {
-      this.pos--;
-    }
-
-    return peekedByte;
-  }
-
-  peekBytes(length, forceClamped = false) {
-    const bytes = this.getBytes(length, forceClamped);
-    this.pos -= bytes.length;
-    return bytes;
-  }
-
-  getUint16() {
-    const b0 = this.getByte();
-    const b1 = this.getByte();
-
-    if (b0 === -1 || b1 === -1) {
-      return -1;
-    }
-
-    return (b0 << 8) + b1;
-  }
-
-  getInt32() {
-    const b0 = this.getByte();
-    const b1 = this.getByte();
-    const b2 = this.getByte();
-    const b3 = this.getByte();
-    return (b0 << 24) + (b1 << 16) + (b2 << 8) + b3;
-  }
-
-  getByteRange(begin, end) {
-    (0, _util.unreachable)("Abstract method `getByteRange` called");
-  }
-
-  getString(length) {
-    return (0, _util.bytesToString)(this.getBytes(length, false));
-  }
-
-  skip(n) {
-    this.pos += n || 1;
-  }
-
-  reset() {
-    (0, _util.unreachable)("Abstract method `reset` called");
-  }
-
-  moveStart() {
-    (0, _util.unreachable)("Abstract method `moveStart` called");
-  }
-
-  makeSubStream(start, length, dict = null) {
-    (0, _util.unreachable)("Abstract method `makeSubStream` called");
-  }
-
-  getBaseStreams() {
-    return null;
-  }
-
-}
-
-exports.BaseStream = BaseStream;
-
-/***/ }),
-/* 7 */
-/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
-
-
-
 Object.defineProperty(exports, "__esModule", ({
   value: true
 }));
@@ -2265,9 +2117,9 @@ exports.NetworkPdfManager = exports.LocalPdfManager = void 0;
 
 var _util = __w_pdfjs_require__(2);
 
-var _chunked_stream = __w_pdfjs_require__(8);
+var _chunked_stream = __w_pdfjs_require__(7);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 var _document = __w_pdfjs_require__(11);
 
@@ -2476,7 +2328,7 @@ class NetworkPdfManager extends BasePdfManager {
 exports.NetworkPdfManager = NetworkPdfManager;
 
 /***/ }),
-/* 8 */
+/* 7 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -2488,7 +2340,7 @@ exports.ChunkedStreamManager = exports.ChunkedStream = void 0;
 
 var _util = __w_pdfjs_require__(2);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 var _stream = __w_pdfjs_require__(10);
 
@@ -3052,7 +2904,7 @@ class ChunkedStreamManager {
 exports.ChunkedStreamManager = ChunkedStreamManager;
 
 /***/ }),
-/* 9 */
+/* 8 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -3081,6 +2933,8 @@ var _util = __w_pdfjs_require__(2);
 
 var _primitives = __w_pdfjs_require__(5);
 
+var _base_stream = __w_pdfjs_require__(9);
+
 function getLookupTableFactory(initializer) {
   let lookup;
   return function () {
@@ -3335,7 +3189,7 @@ function _collectJS(entry, xref, list, parents) {
 
   let parent = null;
 
-  if ((0, _primitives.isRef)(entry)) {
+  if (entry instanceof _primitives.Ref) {
     if (parents.has(entry)) {
       return;
     }
@@ -3350,17 +3204,17 @@ function _collectJS(entry, xref, list, parents) {
       _collectJS(element, xref, list, parents);
     }
   } else if (entry instanceof _primitives.Dict) {
-    if ((0, _primitives.isName)(entry.get("S"), "JavaScript") && entry.has("JS")) {
+    if ((0, _primitives.isName)(entry.get("S"), "JavaScript")) {
       const js = entry.get("JS");
       let code;
 
-      if ((0, _primitives.isStream)(js)) {
+      if (js instanceof _base_stream.BaseStream) {
         code = js.getString();
-      } else {
+      } else if (typeof js === "string") {
         code = js;
       }
 
-      code = (0, _util.stringToPDFString)(code);
+      code = code && (0, _util.stringToPDFString)(code);
 
       if (code) {
         list.push(code);
@@ -3536,6 +3390,113 @@ function recoverJsURL(str) {
   return null;
 }
 
+/***/ }),
+/* 9 */
+/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
+
+
+
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.BaseStream = void 0;
+
+var _util = __w_pdfjs_require__(2);
+
+class BaseStream {
+  constructor() {
+    if (this.constructor === BaseStream) {
+      (0, _util.unreachable)("Cannot initialize BaseStream.");
+    }
+  }
+
+  get length() {
+    (0, _util.unreachable)("Abstract getter `length` accessed");
+  }
+
+  get isEmpty() {
+    (0, _util.unreachable)("Abstract getter `isEmpty` accessed");
+  }
+
+  get isDataLoaded() {
+    return (0, _util.shadow)(this, "isDataLoaded", true);
+  }
+
+  getByte() {
+    (0, _util.unreachable)("Abstract method `getByte` called");
+  }
+
+  getBytes(length, forceClamped = false) {
+    (0, _util.unreachable)("Abstract method `getBytes` called");
+  }
+
+  peekByte() {
+    const peekedByte = this.getByte();
+
+    if (peekedByte !== -1) {
+      this.pos--;
+    }
+
+    return peekedByte;
+  }
+
+  peekBytes(length, forceClamped = false) {
+    const bytes = this.getBytes(length, forceClamped);
+    this.pos -= bytes.length;
+    return bytes;
+  }
+
+  getUint16() {
+    const b0 = this.getByte();
+    const b1 = this.getByte();
+
+    if (b0 === -1 || b1 === -1) {
+      return -1;
+    }
+
+    return (b0 << 8) + b1;
+  }
+
+  getInt32() {
+    const b0 = this.getByte();
+    const b1 = this.getByte();
+    const b2 = this.getByte();
+    const b3 = this.getByte();
+    return (b0 << 24) + (b1 << 16) + (b2 << 8) + b3;
+  }
+
+  getByteRange(begin, end) {
+    (0, _util.unreachable)("Abstract method `getByteRange` called");
+  }
+
+  getString(length) {
+    return (0, _util.bytesToString)(this.getBytes(length, false));
+  }
+
+  skip(n) {
+    this.pos += n || 1;
+  }
+
+  reset() {
+    (0, _util.unreachable)("Abstract method `reset` called");
+  }
+
+  moveStart() {
+    (0, _util.unreachable)("Abstract method `moveStart` called");
+  }
+
+  makeSubStream(start, length, dict = null) {
+    (0, _util.unreachable)("Abstract method `makeSubStream` called");
+  }
+
+  getBaseStreams() {
+    return null;
+  }
+
+}
+
+exports.BaseStream = BaseStream;
+
 /***/ }),
 /* 10 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
@@ -3547,7 +3508,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.StringStream = exports.Stream = exports.NullStream = void 0;
 
-var _base_stream = __w_pdfjs_require__(6);
+var _base_stream = __w_pdfjs_require__(9);
 
 var _util = __w_pdfjs_require__(2);
 
@@ -3657,9 +3618,9 @@ exports.Page = exports.PDFDocument = void 0;
 
 var _util = __w_pdfjs_require__(2);
 
-var _primitives = __w_pdfjs_require__(5);
+var _core_utils = __w_pdfjs_require__(8);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _primitives = __w_pdfjs_require__(5);
 
 var _xfa_fonts = __w_pdfjs_require__(12);
 
@@ -3667,15 +3628,17 @@ var _stream = __w_pdfjs_require__(10);
 
 var _annotation = __w_pdfjs_require__(22);
 
-var _base_stream = __w_pdfjs_require__(6);
+var _base_stream = __w_pdfjs_require__(9);
 
-var _crypto = __w_pdfjs_require__(72);
+var _crypto = __w_pdfjs_require__(73);
 
 var _catalog = __w_pdfjs_require__(64);
 
+var _cleanup_helper = __w_pdfjs_require__(66);
+
 var _parser = __w_pdfjs_require__(27);
 
-var _object_loader = __w_pdfjs_require__(70);
+var _object_loader = __w_pdfjs_require__(71);
 
 var _operator_list = __w_pdfjs_require__(62);
 
@@ -3683,11 +3646,11 @@ var _evaluator = __w_pdfjs_require__(25);
 
 var _decode_stream = __w_pdfjs_require__(29);
 
-var _struct_tree = __w_pdfjs_require__(69);
+var _struct_tree = __w_pdfjs_require__(70);
 
-var _factory = __w_pdfjs_require__(74);
+var _factory = __w_pdfjs_require__(75);
 
-var _xref = __w_pdfjs_require__(98);
+var _xref = __w_pdfjs_require__(99);
 
 const DEFAULT_USER_UNIT = 1.0;
 const LETTER_SIZE_MEDIABOX = [0, 0, 612, 792];
@@ -3747,7 +3710,7 @@ class Page {
       return value;
     }
 
-    if (value.length === 1 || !(0, _primitives.isDict)(value[0])) {
+    if (value.length === 1 || !(value[0] instanceof _primitives.Dict)) {
       return value[0];
     }
 
@@ -3794,7 +3757,7 @@ class Page {
   get userUnit() {
     let obj = this.pageDict.get("UserUnit");
 
-    if (!(0, _util.isNum)(obj) || obj <= 0) {
+    if (typeof obj !== "number" || obj <= 0) {
       obj = DEFAULT_USER_UNIT;
     }
 
@@ -3990,7 +3953,6 @@ class Page {
   extractTextContent({
     handler,
     task,
-    normalizeWhitespace,
     includeMarkedContent,
     sink,
     combineTextItems
@@ -4014,10 +3976,10 @@ class Page {
         stream: contentStream,
         task,
         resources: this.resources,
-        normalizeWhitespace,
         includeMarkedContent,
         combineTextItems,
-        sink
+        sink,
+        viewBox: this.view
       });
     });
   }
@@ -4153,7 +4115,7 @@ class PDFDocument {
   constructor(pdfManager, arg) {
     let stream;
 
-    if ((0, _primitives.isStream)(arg)) {
+    if (arg instanceof _base_stream.BaseStream) {
       stream = arg;
     } else if ((0, _util.isArrayBuffer)(arg)) {
       stream = new _stream.Stream(arg);
@@ -4366,7 +4328,7 @@ class PDFDocument {
       "/xdp:xdp": ""
     };
 
-    if ((0, _primitives.isStream)(xfa) && !xfa.isEmpty) {
+    if (xfa instanceof _base_stream.BaseStream && !xfa.isEmpty) {
       try {
         entries["xdp:xdp"] = (0, _util.stringToUTF8String)(xfa.getString());
         return entries;
@@ -4397,7 +4359,7 @@ class PDFDocument {
 
       const data = this.xref.fetchIfRef(xfa[i + 1]);
 
-      if (!(0, _primitives.isStream)(data) || data.isEmpty) {
+      if (!(data instanceof _base_stream.BaseStream) || data.isEmpty) {
         continue;
       }
 
@@ -4445,11 +4407,9 @@ class PDFDocument {
     for (const key of keys) {
       const stream = xfaImagesDict.get(key);
 
-      if (!(0, _primitives.isStream)(stream)) {
-        continue;
+      if (stream instanceof _base_stream.BaseStream) {
+        xfaImages.set(key, stream.getBytes());
       }
-
-      xfaImages.set(key, stream.getBytes());
     }
 
     this.xfaFactory.setImages(xfaImages);
@@ -4620,7 +4580,7 @@ class PDFDocument {
       const hasFields = Array.isArray(fields) && fields.length > 0;
       formInfo.hasFields = hasFields;
       const xfa = acroForm.get("XFA");
-      formInfo.hasXfa = Array.isArray(xfa) && xfa.length > 0 || (0, _primitives.isStream)(xfa) && 
!xfa.isEmpty;
+      formInfo.hasXfa = Array.isArray(xfa) && xfa.length > 0 || xfa instanceof _base_stream.BaseStream && 
!xfa.isEmpty;
       const sigFlags = acroForm.get("SigFlags");
       const hasSignatures = !!(sigFlags & 0x1);
 
@@ -4640,17 +4600,6 @@ class PDFDocument {
   }
 
   get documentInfo() {
-    const DocumentInfoValidators = {
-      Title: _util.isString,
-      Author: _util.isString,
-      Subject: _util.isString,
-      Keywords: _util.isString,
-      Creator: _util.isString,
-      Producer: _util.isString,
-      CreationDate: _util.isString,
-      ModDate: _util.isString,
-      Trapped: _primitives.isName
-    };
     let version = this._version;
 
     if (typeof version !== "string" || !PDF_HEADER_VERSION_REGEXP.test(version)) {
@@ -4680,25 +4629,60 @@ class PDFDocument {
       (0, _util.info)("The document information dictionary is invalid.");
     }
 
-    if ((0, _primitives.isDict)(infoDict)) {
-      for (const key of infoDict.getKeys()) {
-        const value = infoDict.get(key);
+    if (!(infoDict instanceof _primitives.Dict)) {
+      return (0, _util.shadow)(this, "documentInfo", docInfo);
+    }
 
-        if (DocumentInfoValidators[key]) {
-          if (DocumentInfoValidators[key](value)) {
-            docInfo[key] = typeof value !== "string" ? value : (0, _util.stringToPDFString)(value);
-          } else {
-            (0, _util.info)(`Bad value in document info for "${key}".`);
+    for (const key of infoDict.getKeys()) {
+      const value = infoDict.get(key);
+
+      switch (key) {
+        case "Title":
+        case "Author":
+        case "Subject":
+        case "Keywords":
+        case "Creator":
+        case "Producer":
+        case "CreationDate":
+        case "ModDate":
+          if (typeof value === "string") {
+            docInfo[key] = (0, _util.stringToPDFString)(value);
+            continue;
+          }
+
+          break;
+
+        case "Trapped":
+          if (value instanceof _primitives.Name) {
+            docInfo[key] = value;
+            continue;
           }
-        } else if (typeof key === "string") {
+
+          break;
+
+        default:
           let customValue;
 
-          if ((0, _util.isString)(value)) {
-            customValue = (0, _util.stringToPDFString)(value);
-          } else if ((0, _primitives.isName)(value) || (0, _util.isNum)(value) || (0, _util.isBool)(value)) {
-            customValue = value;
-          } else {
-            (0, _util.info)(`Unsupported value in document info for (custom) "${key}".`);
+          switch (typeof value) {
+            case "string":
+              customValue = (0, _util.stringToPDFString)(value);
+              break;
+
+            case "number":
+            case "boolean":
+              customValue = value;
+              break;
+
+            default:
+              if (value instanceof _primitives.Name) {
+                customValue = value;
+              }
+
+              break;
+          }
+
+          if (customValue === undefined) {
+            (0, _util.warn)(`Bad value, for custom key "${key}", in Info: ${value}.`);
             continue;
           }
 
@@ -4707,8 +4691,10 @@ class PDFDocument {
           }
 
           docInfo.Custom[key] = customValue;
-        }
+          continue;
       }
+
+      (0, _util.warn)(`Bad value, for key "${key}", in Info: ${value}.`);
     }
 
     return (0, _util.shadow)(this, "documentInfo", docInfo);
@@ -4749,25 +4735,38 @@ class PDFDocument {
   async _getLinearizationPage(pageIndex) {
     const {
       catalog,
-      linearization
+      linearization,
+      xref
     } = this;
 
     const ref = _primitives.Ref.get(linearization.objectNumberFirst, 0);
 
     try {
-      const obj = await this.xref.fetchAsync(ref);
+      const obj = await xref.fetchAsync(ref);
 
-      if ((0, _primitives.isDict)(obj, "Page") || (0, _primitives.isDict)(obj) && !obj.has("Type") && 
obj.has("Contents")) {
-        if (ref && !catalog.pageKidsCountCache.has(ref)) {
-          catalog.pageKidsCountCache.put(ref, 1);
+      if (obj instanceof _primitives.Dict) {
+        let type = obj.getRaw("Type");
+
+        if (type instanceof _primitives.Ref) {
+          type = await xref.fetchAsync(type);
         }
 
-        return [obj, ref];
+        if ((0, _primitives.isName)(type, "Page") || !obj.has("Type") && !obj.has("Kids")) {
+          if (!catalog.pageKidsCountCache.has(ref)) {
+            catalog.pageKidsCountCache.put(ref, 1);
+          }
+
+          if (!catalog.pageIndexCache.has(ref)) {
+            catalog.pageIndexCache.put(ref, 0);
+          }
+
+          return [obj, ref];
+        }
       }
 
       throw new _util.FormatError("The Linearization dictionary doesn't point to a valid Page dictionary.");
     } catch (reason) {
-      (0, _util.info)(reason);
+      (0, _util.warn)(`_getLinearizationPage: "${reason.message}".`);
       return catalog.getPageDict(pageIndex);
     }
   }
@@ -4872,7 +4871,7 @@ class PDFDocument {
       let pagesTree;
 
       try {
-        pagesTree = await pdfManager.ensureCatalog("getAllPageDicts", [recoveryMode]);
+        pagesTree = await catalog.getAllPageDicts(recoveryMode);
       } catch (reasonAll) {
         if (reasonAll instanceof _core_utils.XRefEntryException && !recoveryMode) {
           throw new _core_utils.XRefParseException();
@@ -4917,7 +4916,7 @@ class PDFDocument {
   }
 
   async cleanup(manuallyTriggered = false) {
-    return this.catalog ? this.catalog.cleanup(manuallyTriggered) : (0, _primitives.clearPrimitiveCaches)();
+    return this.catalog ? this.catalog.cleanup(manuallyTriggered) : (0, _cleanup_helper.clearGlobalCaches)();
   }
 
   _collectFieldObjects(name, fieldRef, promises) {
@@ -5010,7 +5009,13 @@ class PDFDocument {
       return (0, _util.shadow)(this, "calculationOrderIds", null);
     }
 
-    const ids = calculationOrder.filter(_primitives.isRef).map(ref => ref.toString());
+    const ids = [];
+
+    for (const id of calculationOrder) {
+      if (id instanceof _primitives.Ref) {
+        ids.push(id.toString());
+      }
+    }
 
     if (ids.length === 0) {
       return (0, _util.shadow)(this, "calculationOrderIds", null);
@@ -5047,7 +5052,7 @@ var _myriadpro_factors = __w_pdfjs_require__(16);
 
 var _segoeui_factors = __w_pdfjs_require__(17);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 var _fonts_utils = __w_pdfjs_require__(18);
 
@@ -5673,7 +5678,7 @@ __w_pdfjs_require__.r(__webpack_exports__);
 /* harmony export */   "getDingbatsGlyphsUnicode": () => (/* binding */ getDingbatsGlyphsUnicode),
 /* harmony export */   "getGlyphsUnicode": () => (/* binding */ getGlyphsUnicode)
 /* harmony export */ });
-/* harmony import */ var _core_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __w_pdfjs_require__(9);
+/* harmony import */ var _core_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __w_pdfjs_require__(8);
 
 const getGlyphsUnicode = (0,_core_utils_js__WEBPACK_IMPORTED_MODULE_0__.getArrayLookupTableFactory)(function 
() {
  return [
@@ -14741,13 +14746,15 @@ const getDingbatsGlyphsUnicode = (0,_core_utils_js__WEBPACK_IMPORTED_MODULE_0__.
 
 __w_pdfjs_require__.r(__webpack_exports__);
 /* harmony export */ __w_pdfjs_require__.d(__webpack_exports__, {
+/* harmony export */   "clearUnicodeCaches": () => (/* binding */ clearUnicodeCaches),
+/* harmony export */   "getCharUnicodeCategory": () => (/* binding */ getCharUnicodeCategory),
 /* harmony export */   "getNormalizedUnicodes": () => (/* binding */ getNormalizedUnicodes),
 /* harmony export */   "getUnicodeForGlyph": () => (/* binding */ getUnicodeForGlyph),
 /* harmony export */   "getUnicodeRangeFor": () => (/* binding */ getUnicodeRangeFor),
 /* harmony export */   "mapSpecialUnicodeValues": () => (/* binding */ mapSpecialUnicodeValues),
 /* harmony export */   "reverseIfRtl": () => (/* binding */ reverseIfRtl)
 /* harmony export */ });
-/* harmony import */ var _core_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __w_pdfjs_require__(9);
+/* harmony import */ var _core_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __w_pdfjs_require__(8);
 
 const getSpecialPUASymbols = (0,_core_utils_js__WEBPACK_IMPORTED_MODULE_0__.getLookupTableFactory)(function 
(t) {
  t[63721] = 0x00a9;
@@ -18095,6 +18102,25 @@ function reverseIfRtl(chars) {
  }
  return buf.join("");
 }
+const SpecialCharRegExp = new RegExp("^(\\s)|(\\p{Mn})|(\\p{Cf})$", "u");
+const CategoryCache = new Map();
+function getCharUnicodeCategory(char) {
+ const cachedCategory = CategoryCache.get(char);
+ if (cachedCategory) {
+  return cachedCategory;
+ }
+ const groups = char.match(SpecialCharRegExp);
+ const category = {
+  isWhitespace: !!(groups && groups[1]),
+  isZeroWidthDiacritic: !!(groups && groups[2]),
+  isInvisibleFormatMark: !!(groups && groups[3])
+ };
+ CategoryCache.set(char, category);
+ return category;
+}
+function clearUnicodeCaches() {
+ CategoryCache.clear();
+}
 
 
 /***/ }),
@@ -18111,29 +18137,31 @@ exports.getQuadPoints = getQuadPoints;
 
 var _util = __w_pdfjs_require__(2);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 var _default_appearance = __w_pdfjs_require__(23);
 
 var _primitives = __w_pdfjs_require__(5);
 
-var _bidi = __w_pdfjs_require__(59);
+var _base_stream = __w_pdfjs_require__(9);
+
+var _bidi = __w_pdfjs_require__(60);
 
 var _catalog = __w_pdfjs_require__(64);
 
 var _colorspace = __w_pdfjs_require__(24);
 
-var _file_spec = __w_pdfjs_require__(66);
+var _file_spec = __w_pdfjs_require__(67);
 
-var _object_loader = __w_pdfjs_require__(70);
+var _object_loader = __w_pdfjs_require__(71);
 
 var _operator_list = __w_pdfjs_require__(62);
 
 var _stream = __w_pdfjs_require__(10);
 
-var _writer = __w_pdfjs_require__(71);
+var _writer = __w_pdfjs_require__(72);
 
-var _factory = __w_pdfjs_require__(74);
+var _factory = __w_pdfjs_require__(75);
 
 class AnnotationFactory {
   static create(xref, ref, pdfManager, idFactory, collectFields) {
@@ -18143,13 +18171,13 @@ class AnnotationFactory {
   static _create(xref, ref, pdfManager, idFactory, acroForm, collectFields, pageIndex = -1) {
     const dict = xref.fetchIfRef(ref);
 
-    if (!(0, _primitives.isDict)(dict)) {
+    if (!(dict instanceof _primitives.Dict)) {
       return undefined;
     }
 
-    const id = (0, _primitives.isRef)(ref) ? ref.toString() : `annot_${idFactory.createObjId()}`;
+    const id = ref instanceof _primitives.Ref ? ref.toString() : `annot_${idFactory.createObjId()}`;
     let subtype = dict.get("Subtype");
-    subtype = (0, _primitives.isName)(subtype) ? subtype.name : null;
+    subtype = subtype instanceof _primitives.Name ? subtype.name : null;
     const parameters = {
       xref,
       ref,
@@ -18174,7 +18202,7 @@ class AnnotationFactory {
           dict,
           key: "FT"
         });
-        fieldType = (0, _primitives.isName)(fieldType) ? fieldType.name : null;
+        fieldType = fieldType instanceof _primitives.Name ? fieldType.name : null;
 
         switch (fieldType) {
           case "Tx":
@@ -18255,13 +18283,13 @@ class AnnotationFactory {
     try {
       const annotDict = await xref.fetchIfRefAsync(ref);
 
-      if (!(0, _primitives.isDict)(annotDict)) {
+      if (!(annotDict instanceof _primitives.Dict)) {
         return -1;
       }
 
       const pageRef = annotDict.getRaw("P");
 
-      if (!(0, _primitives.isRef)(pageRef)) {
+      if (!(pageRef instanceof _primitives.Ref)) {
         return -1;
       }
 
@@ -18409,7 +18437,7 @@ class Annotation {
         const kidIds = [];
 
         for (const kid of kids) {
-          if ((0, _primitives.isRef)(kid)) {
+          if (kid instanceof _primitives.Ref) {
             kidIds.push(kid.toString());
           }
         }
@@ -18501,7 +18529,7 @@ class Annotation {
   }
 
   setModificationDate(modificationDate) {
-    this.modificationDate = (0, _util.isString)(modificationDate) ? modificationDate : null;
+    this.modificationDate = typeof modificationDate === "string" ? modificationDate : null;
   }
 
   setFlags(flags) {
@@ -18536,7 +18564,7 @@ class Annotation {
   setBorderStyle(borderStyle) {
     this.borderStyle = new AnnotationBorderStyle();
 
-    if (!(0, _primitives.isDict)(borderStyle)) {
+    if (!(borderStyle instanceof _primitives.Dict)) {
       return;
     }
 
@@ -18570,24 +18598,24 @@ class Annotation {
     this.appearance = null;
     const appearanceStates = dict.get("AP");
 
-    if (!(0, _primitives.isDict)(appearanceStates)) {
+    if (!(appearanceStates instanceof _primitives.Dict)) {
       return;
     }
 
     const normalAppearanceState = appearanceStates.get("N");
 
-    if ((0, _primitives.isStream)(normalAppearanceState)) {
+    if (normalAppearanceState instanceof _base_stream.BaseStream) {
       this.appearance = normalAppearanceState;
       return;
     }
 
-    if (!(0, _primitives.isDict)(normalAppearanceState)) {
+    if (!(normalAppearanceState instanceof _primitives.Dict)) {
       return;
     }
 
     const as = dict.get("AS");
 
-    if (!(0, _primitives.isName)(as) || !normalAppearanceState.has(as.name)) {
+    if (!(as instanceof _primitives.Name) || !normalAppearanceState.has(as.name)) {
       return;
     }
 
@@ -18726,12 +18754,12 @@ class AnnotationBorderStyle {
   }
 
   setWidth(width, rect = [0, 0, 0, 0]) {
-    if ((0, _primitives.isName)(width)) {
+    if (width instanceof _primitives.Name) {
       this.width = 0;
       return;
     }
 
-    if (Number.isInteger(width)) {
+    if (typeof width === "number") {
       if (width > 0) {
         const maxWidth = (rect[2] - rect[0]) / 2;
         const maxHeight = (rect[3] - rect[1]) / 2;
@@ -18747,7 +18775,7 @@ class AnnotationBorderStyle {
   }
 
   setStyle(style) {
-    if (!(0, _primitives.isName)(style)) {
+    if (!(style instanceof _primitives.Name)) {
       return;
     }
 
@@ -18830,9 +18858,9 @@ class MarkupAnnotation extends Annotation {
 
     if (dict.has("IRT")) {
       const rawIRT = dict.getRaw("IRT");
-      this.data.inReplyTo = (0, _primitives.isRef)(rawIRT) ? rawIRT.toString() : null;
+      this.data.inReplyTo = rawIRT instanceof _primitives.Ref ? rawIRT.toString() : null;
       const rt = dict.get("RT");
-      this.data.replyType = (0, _primitives.isName)(rt) ? rt.name : _util.AnnotationReplyType.REPLY;
+      this.data.replyType = rt instanceof _primitives.Name ? rt.name : _util.AnnotationReplyType.REPLY;
     }
 
     if (this.data.replyType === _util.AnnotationReplyType.GROUP) {
@@ -18881,7 +18909,7 @@ class MarkupAnnotation extends Annotation {
   }
 
   setCreationDate(creationDate) {
-    this.creationDate = (0, _util.isString)(creationDate) ? creationDate : null;
+    this.creationDate = typeof creationDate === "string" ? creationDate : null;
   }
 
   _setDefaultAppearance({
@@ -19016,13 +19044,13 @@ class WidgetAnnotation extends Annotation {
       dict,
       key: "DA"
     }) || params.acroForm.get("DA");
-    this._defaultAppearance = (0, _util.isString)(defaultAppearance) ? defaultAppearance : "";
+    this._defaultAppearance = typeof defaultAppearance === "string" ? defaultAppearance : "";
     data.defaultAppearanceData = (0, _default_appearance.parseDefaultAppearance)(this._defaultAppearance);
     const fieldType = (0, _core_utils.getInheritableProperty)({
       dict,
       key: "FT"
     });
-    data.fieldType = (0, _primitives.isName)(fieldType) ? fieldType.name : null;
+    data.fieldType = fieldType instanceof _primitives.Name ? fieldType.name : null;
     const localResources = (0, _core_utils.getInheritableProperty)({
       dict,
       key: "DR"
@@ -19054,10 +19082,10 @@ class WidgetAnnotation extends Annotation {
 
   _decodeFormValue(formValue) {
     if (Array.isArray(formValue)) {
-      return formValue.filter(item => (0, _util.isString)(item)).map(item => (0, 
_util.stringToPDFString)(item));
-    } else if ((0, _primitives.isName)(formValue)) {
+      return formValue.filter(item => typeof item === "string").map(item => (0, 
_util.stringToPDFString)(item));
+    } else if (formValue instanceof _primitives.Name) {
       return (0, _util.stringToPDFString)(formValue.name);
-    } else if ((0, _util.isString)(formValue)) {
+    } else if (typeof formValue === "string") {
       return (0, _util.stringToPDFString)(formValue);
     }
 
@@ -19128,7 +19156,7 @@ class WidgetAnnotation extends Annotation {
     } = evaluator;
     const dict = xref.fetchIfRef(this.ref);
 
-    if (!(0, _primitives.isDict)(dict)) {
+    if (!(dict instanceof _primitives.Dict)) {
       return null;
     }
 
@@ -19210,9 +19238,10 @@ class WidgetAnnotation extends Annotation {
       this.data.defaultAppearanceData = (0, 
_default_appearance.parseDefaultAppearance)(this._defaultAppearance = "/Helvetica 0 Tf 0 g");
     }
 
-    const [defaultAppearance, fontSize] = this._computeFontSize(totalHeight, lineCount);
-
     const font = await this._getFontData(evaluator, task);
+
+    const [defaultAppearance, fontSize] = this._computeFontSize(totalHeight - defaultPadding, totalWidth - 2 
* hPadding, value, font, lineCount);
+
     let descent = font.descent;
 
     if (isNaN(descent)) {
@@ -19259,25 +19288,71 @@ class WidgetAnnotation extends Annotation {
     return initialState.font;
   }
 
-  _computeFontSize(height, lineCount) {
+  _getTextWidth(text, font) {
+    return font.charsToGlyphs(text).reduce((width, glyph) => width + glyph.width, 0) / 1000;
+  }
+
+  _computeFontSize(height, width, text, font, lineCount) {
     let {
       fontSize
     } = this.data.defaultAppearanceData;
 
     if (!fontSize) {
-      const roundWithOneDigit = x => Math.round(x * 10) / 10;
+      const roundWithTwoDigits = x => Math.floor(x * 100) / 100;
 
-      const FONT_FACTOR = 0.8;
+      const LINE_FACTOR = 1.35;
 
       if (lineCount === -1) {
-        fontSize = roundWithOneDigit(FONT_FACTOR * height);
+        const textWidth = this._getTextWidth(text, font);
+
+        fontSize = roundWithTwoDigits(Math.min(height / LINE_FACTOR, width / textWidth));
       } else {
-        fontSize = 10;
-        let lineHeight = fontSize / FONT_FACTOR;
+        const lines = text.split(/\r\n?|\n/);
+        const cachedLines = [];
+
+        for (const line of lines) {
+          const encoded = font.encodeString(line).join("");
+          const glyphs = font.charsToGlyphs(encoded);
+          const positions = font.getCharPositions(encoded);
+          cachedLines.push({
+            line: encoded,
+            glyphs,
+            positions
+          });
+        }
+
+        const isTooBig = fsize => {
+          let totalHeight = 0;
+
+          for (const cache of cachedLines) {
+            const chunks = this._splitLine(null, font, fsize, width, cache);
+
+            totalHeight += chunks.length * fsize;
+
+            if (totalHeight > height) {
+              return true;
+            }
+          }
+
+          return false;
+        };
+
+        fontSize = 12;
+        let lineHeight = fontSize * LINE_FACTOR;
         let numberOfLines = Math.round(height / lineHeight);
         numberOfLines = Math.max(numberOfLines, lineCount);
-        lineHeight = height / numberOfLines;
-        fontSize = roundWithOneDigit(FONT_FACTOR * lineHeight);
+
+        while (true) {
+          lineHeight = height / numberOfLines;
+          fontSize = roundWithTwoDigits(lineHeight / LINE_FACTOR);
+
+          if (isTooBig(fontSize)) {
+            numberOfLines++;
+            continue;
+          }
+
+          break;
+        }
       }
 
       const {
@@ -19295,14 +19370,7 @@ class WidgetAnnotation extends Annotation {
   }
 
   _renderText(text, font, fontSize, totalWidth, alignment, hPadding, vPadding) {
-    const glyphs = font.charsToGlyphs(text);
-    const scale = fontSize / 1000;
-    let width = 0;
-
-    for (const glyph of glyphs) {
-      width += glyph.width * scale;
-    }
-
+    const width = this._getTextWidth(text, font) * fontSize;
     let shift;
 
     if (alignment === 1) {
@@ -19371,7 +19439,7 @@ class TextWidgetAnnotation extends WidgetAnnotation {
     this._hasText = true;
     const dict = params.dict;
 
-    if (!(0, _util.isString)(this.data.fieldValue)) {
+    if (typeof this.data.fieldValue !== "string") {
       this.data.fieldValue = "";
     }
 
@@ -19413,7 +19481,7 @@ class TextWidgetAnnotation extends WidgetAnnotation {
   }
 
   _getMultilineAppearance(defaultAppearance, text, font, fontSize, width, height, alignment, hPadding, 
vPadding) {
-    const lines = text.split(/\r\n|\r|\n/);
+    const lines = text.split(/\r\n?|\n/);
     const buf = [];
     const totalWidth = width - 2 * hPadding;
 
@@ -19430,15 +19498,15 @@ class TextWidgetAnnotation extends WidgetAnnotation {
     return "/Tx BMC q BT " + defaultAppearance + ` 1 0 0 1 0 ${height} Tm ${renderedText}` + " ET Q EMC";
   }
 
-  _splitLine(line, font, fontSize, width) {
-    line = font.encodeString(line).join("");
-    const glyphs = font.charsToGlyphs(line);
+  _splitLine(line, font, fontSize, width, cache = {}) {
+    line = cache.line || font.encodeString(line).join("");
+    const glyphs = cache.glyphs || font.charsToGlyphs(line);
 
     if (glyphs.length <= 1) {
       return [line];
     }
 
-    const positions = font.getCharPositions(line);
+    const positions = cache.positions || font.getCharPositions(line);
     const scale = fontSize / 1000;
     const chunks = [];
     let lastSpacePosInStringStart = -1,
@@ -19606,7 +19674,7 @@ class ButtonWidgetAnnotation extends WidgetAnnotation {
 
     const dict = evaluator.xref.fetchIfRef(this.ref);
 
-    if (!(0, _primitives.isDict)(dict)) {
+    if (!(dict instanceof _primitives.Dict)) {
       return null;
     }
 
@@ -19657,7 +19725,7 @@ class ButtonWidgetAnnotation extends WidgetAnnotation {
 
     const dict = evaluator.xref.fetchIfRef(this.ref);
 
-    if (!(0, _primitives.isDict)(dict)) {
+    if (!(dict instanceof _primitives.Dict)) {
       return null;
     }
 
@@ -19672,7 +19740,7 @@ class ButtonWidgetAnnotation extends WidgetAnnotation {
     const encrypt = evaluator.xref.encrypt;
 
     if (value) {
-      if ((0, _primitives.isRef)(this.parent)) {
+      if (this.parent instanceof _primitives.Ref) {
         const parent = evaluator.xref.fetch(this.parent);
         let parentTransform = null;
 
@@ -19684,7 +19752,7 @@ class ButtonWidgetAnnotation extends WidgetAnnotation {
         parentBuffer = [`${this.parent.num} ${this.parent.gen} obj\n`];
         (0, _writer.writeDict)(parent, parentBuffer, parentTransform);
         parentBuffer.push("\nendobj\n");
-      } else if ((0, _primitives.isDict)(this.parent)) {
+      } else if (this.parent instanceof _primitives.Dict) {
         this.parent.set("V", name);
       }
     }
@@ -19765,13 +19833,13 @@ class ButtonWidgetAnnotation extends WidgetAnnotation {
   _processCheckBox(params) {
     const customAppearance = params.dict.get("AP");
 
-    if (!(0, _primitives.isDict)(customAppearance)) {
+    if (!(customAppearance instanceof _primitives.Dict)) {
       return;
     }
 
     const normalAppearance = customAppearance.get("N");
 
-    if (!(0, _primitives.isDict)(normalAppearance)) {
+    if (!(normalAppearance instanceof _primitives.Dict)) {
       return;
     }
 
@@ -19826,24 +19894,24 @@ class ButtonWidgetAnnotation extends WidgetAnnotation {
     this.data.fieldValue = this.data.buttonValue = null;
     const fieldParent = params.dict.get("Parent");
 
-    if ((0, _primitives.isDict)(fieldParent)) {
+    if (fieldParent instanceof _primitives.Dict) {
       this.parent = params.dict.getRaw("Parent");
       const fieldParentValue = fieldParent.get("V");
 
-      if ((0, _primitives.isName)(fieldParentValue)) {
+      if (fieldParentValue instanceof _primitives.Name) {
         this.data.fieldValue = this._decodeFormValue(fieldParentValue);
       }
     }
 
     const appearanceStates = params.dict.get("AP");
 
-    if (!(0, _primitives.isDict)(appearanceStates)) {
+    if (!(appearanceStates instanceof _primitives.Dict)) {
       return;
     }
 
     const normalAppearance = appearanceStates.get("N");
 
-    if (!(0, _primitives.isDict)(normalAppearance)) {
+    if (!(normalAppearance instanceof _primitives.Dict)) {
       return;
     }
 
@@ -19947,7 +20015,7 @@ class ChoiceWidgetAnnotation extends WidgetAnnotation {
       }
     }
 
-    if ((0, _util.isString)(this.data.fieldValue)) {
+    if (typeof this.data.fieldValue === "string") {
       this.data.fieldValue = [this.data.fieldValue];
     } else if (!this.data.fieldValue) {
       this.data.fieldValue = [];
@@ -20056,9 +20124,9 @@ class PopupAnnotation extends Annotation {
     }
 
     const parentSubtype = parentItem.get("Subtype");
-    this.data.parentType = (0, _primitives.isName)(parentSubtype) ? parentSubtype.name : null;
+    this.data.parentType = parentSubtype instanceof _primitives.Name ? parentSubtype.name : null;
     const rawParent = parameters.dict.getRaw("Parent");
-    this.data.parentId = (0, _primitives.isRef)(rawParent) ? rawParent.toString() : null;
+    this.data.parentId = rawParent instanceof _primitives.Ref ? rawParent.toString() : null;
     const parentRect = parentItem.getArray("Rect");
 
     if (Array.isArray(parentRect) && parentRect.length === 4) {
@@ -20573,7 +20641,7 @@ var _util = __w_pdfjs_require__(2);
 
 var _colorspace = __w_pdfjs_require__(24);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 var _evaluator = __w_pdfjs_require__(25);
 
@@ -20688,7 +20756,9 @@ var _util = __w_pdfjs_require__(2);
 
 var _primitives = __w_pdfjs_require__(5);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _base_stream = __w_pdfjs_require__(9);
+
+var _core_utils = __w_pdfjs_require__(8);
 
 function resizeRgbImage(src, dest, w1, h1, w2, h2, alpha01) {
   const COMPONENTS = 3;
@@ -20916,7 +20986,7 @@ class ColorSpace {
   static _parse(cs, xref, resources = null, pdfFunctionFactory) {
     cs = xref.fetchIfRef(cs);
 
-    if ((0, _primitives.isName)(cs)) {
+    if (cs instanceof _primitives.Name) {
       switch (cs.name) {
         case "G":
         case "DeviceGray":
@@ -20934,14 +21004,14 @@ class ColorSpace {
           return new PatternCS(null);
 
         default:
-          if ((0, _primitives.isDict)(resources)) {
+          if (resources instanceof _primitives.Dict) {
             const colorSpaces = resources.get("ColorSpace");
 
-            if ((0, _primitives.isDict)(colorSpaces)) {
+            if (colorSpaces instanceof _primitives.Dict) {
               const resourcesCS = colorSpaces.get(cs.name);
 
               if (resourcesCS) {
-                if ((0, _primitives.isName)(resourcesCS)) {
+                if (resourcesCS instanceof _primitives.Name) {
                   return this._parse(resourcesCS, xref, resources, pdfFunctionFactory);
                 }
 
@@ -21168,7 +21238,7 @@ class IndexedCS extends ColorSpace {
     const length = base.numComps * highVal;
     this.lookup = new Uint8Array(length);
 
-    if ((0, _primitives.isStream)(lookup)) {
+    if (lookup instanceof _base_stream.BaseStream) {
       const bytes = lookup.getBytes(length);
       this.lookup.set(bytes);
     } else if (typeof lookup === "string") {
@@ -21767,23 +21837,23 @@ var _standard_fonts = __w_pdfjs_require__(47);
 
 var _unicode = __w_pdfjs_require__(21);
 
-var _pattern = __w_pdfjs_require__(55);
+var _pattern = __w_pdfjs_require__(56);
 
 var _xfa_fonts = __w_pdfjs_require__(12);
 
 var _to_unicode_map = __w_pdfjs_require__(48);
 
-var _function = __w_pdfjs_require__(56);
+var _function = __w_pdfjs_require__(57);
 
 var _parser = __w_pdfjs_require__(27);
 
-var _image_utils = __w_pdfjs_require__(58);
+var _image_utils = __w_pdfjs_require__(59);
 
 var _stream = __w_pdfjs_require__(10);
 
-var _base_stream = __w_pdfjs_require__(6);
+var _base_stream = __w_pdfjs_require__(9);
 
-var _bidi = __w_pdfjs_require__(59);
+var _bidi = __w_pdfjs_require__(60);
 
 var _colorspace = __w_pdfjs_require__(24);
 
@@ -21791,9 +21861,9 @@ var _decode_stream = __w_pdfjs_require__(29);
 
 var _glyphlist = __w_pdfjs_require__(20);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
-var _metrics = __w_pdfjs_require__(60);
+var _metrics = __w_pdfjs_require__(51);
 
 var _murmurhash = __w_pdfjs_require__(61);
 
@@ -21832,7 +21902,7 @@ function normalizeBlendMode(value, parsingArray = false) {
     return "source-over";
   }
 
-  if (!(0, _primitives.isName)(value)) {
+  if (!(value instanceof _primitives.Name)) {
     if (parsingArray) {
       return null;
     }
@@ -22054,7 +22124,7 @@ class PartialEvaluator {
           }
         }
 
-        if (!(0, _primitives.isStream)(xObject)) {
+        if (!(xObject instanceof _base_stream.BaseStream)) {
           continue;
         }
 
@@ -22270,7 +22340,7 @@ class PartialEvaluator {
     const w = dict.get("W", "Width");
     const h = dict.get("H", "Height");
 
-    if (!(w && (0, _util.isNum)(w)) || !(h && (0, _util.isNum)(h))) {
+    if (!(w && typeof w === "number") || !(h && typeof h === "number")) {
       (0, _util.warn)("Image dimensions are missing, or not numbers.");
       return;
     }
@@ -22650,7 +22720,7 @@ class PartialEvaluator {
             break;
           }
 
-          if ((0, _primitives.isDict)(value)) {
+          if (value instanceof _primitives.Dict) {
             isSimpleGState = false;
             promise = promise.then(() => {
               return this.handleSMask(value, resources, operatorList, task, stateManager, 
localColorSpaceCache);
@@ -22714,7 +22784,7 @@ class PartialEvaluator {
     let fontRef;
 
     if (font) {
-      if (!(0, _primitives.isRef)(font)) {
+      if (!(font instanceof _primitives.Ref)) {
         throw new _util.FormatError('The "font" object should be a reference.');
       }
 
@@ -22747,13 +22817,17 @@ class PartialEvaluator {
       }
     }
 
+    if (this.parsingType3Font && this.type3FontRefs.has(fontRef)) {
+      return errorFont();
+    }
+
     if (this.fontCache.has(fontRef)) {
       return this.fontCache.get(fontRef);
     }
 
     font = xref.fetchIfRef(fontRef);
 
-    if (!(0, _primitives.isDict)(font)) {
+    if (!(font instanceof _primitives.Dict)) {
       return errorFont();
     }
 
@@ -22776,14 +22850,14 @@ class PartialEvaluator {
       descriptor,
       hash
     } = preEvaluatedFont;
-    const fontRefIsRef = (0, _primitives.isRef)(fontRef);
+    const fontRefIsRef = fontRef instanceof _primitives.Ref;
     let fontID;
 
     if (fontRefIsRef) {
       fontID = `f${fontRef.toString()}`;
     }
 
-    if (hash && (0, _primitives.isDict)(descriptor)) {
+    if (hash && descriptor instanceof _primitives.Dict) {
       if (!descriptor.fontAliases) {
         descriptor.fontAliases = Object.create(null);
       }
@@ -22952,7 +23026,7 @@ class PartialEvaluator {
       const pattern = this.xref.fetchIfRef(rawPattern);
 
       if (pattern) {
-        const dict = (0, _primitives.isStream)(pattern) ? pattern.dict : pattern;
+        const dict = pattern instanceof _base_stream.BaseStream ? pattern.dict : pattern;
         const typeNum = dict.get("PatternType");
 
         if (typeNum === PatternType.TILING) {
@@ -22989,7 +23063,7 @@ class PartialEvaluator {
     const length = array.length;
     const operator = this.xref.fetchIfRef(array[0]);
 
-    if (length < 2 || !(0, _primitives.isName)(operator)) {
+    if (length < 2 || !(operator instanceof _primitives.Name)) {
       (0, _util.warn)("Invalid visibility expression");
       return;
     }
@@ -23015,7 +23089,7 @@ class PartialEvaluator {
         currentResult.push(nestedResult);
 
         this._parseVisibilityExpression(object, nestingCounter, nestedResult);
-      } else if ((0, _primitives.isRef)(raw)) {
+      } else if (raw instanceof _primitives.Ref) {
         currentResult.push(raw.toString());
       }
     }
@@ -23024,10 +23098,10 @@ class PartialEvaluator {
   async parseMarkedContentProps(contentProperties, resources) {
     let optionalContent;
 
-    if ((0, _primitives.isName)(contentProperties)) {
+    if (contentProperties instanceof _primitives.Name) {
       const properties = resources.get("Properties");
       optionalContent = properties.get(contentProperties.name);
-    } else if ((0, _primitives.isDict)(contentProperties)) {
+    } else if (contentProperties instanceof _primitives.Dict) {
       optionalContent = contentProperties;
     } else {
       throw new _util.FormatError("Optional content properties malformed.");
@@ -23058,7 +23132,7 @@ class PartialEvaluator {
 
       const optionalContentGroups = optionalContent.get("OCGs");
 
-      if (Array.isArray(optionalContentGroups) || (0, _primitives.isDict)(optionalContentGroups)) {
+      if (Array.isArray(optionalContentGroups) || optionalContentGroups instanceof _primitives.Dict) {
         const groupIds = [];
 
         if (Array.isArray(optionalContentGroups)) {
@@ -23072,10 +23146,10 @@ class PartialEvaluator {
         return {
           type: optionalContentType,
           ids: groupIds,
-          policy: (0, _primitives.isName)(optionalContent.get("P")) ? optionalContent.get("P").name : null,
+          policy: optionalContent.get("P") instanceof _primitives.Name ? optionalContent.get("P").name : 
null,
           expression: null
         };
-      } else if ((0, _primitives.isRef)(optionalContentGroups)) {
+      } else if (optionalContentGroups instanceof _primitives.Ref) {
         return {
           type: optionalContentType,
           id: optionalContentGroups.toString()
@@ -23193,13 +23267,13 @@ class PartialEvaluator {
                 xobj = xref.fetch(xobj);
               }
 
-              if (!(0, _primitives.isStream)(xobj)) {
+              if (!(xobj instanceof _base_stream.BaseStream)) {
                 throw new _util.FormatError("XObject should be a stream");
               }
 
               const type = xobj.dict.get("Subtype");
 
-              if (!(0, _primitives.isName)(type)) {
+              if (!(type instanceof _primitives.Name)) {
                 throw new _util.FormatError("XObject should have a Name subtype");
               }
 
@@ -23307,9 +23381,9 @@ class PartialEvaluator {
             for (i = 0; i < arrLength; ++i) {
               const arrItem = arr[i];
 
-              if ((0, _util.isString)(arrItem)) {
+              if (typeof arrItem === "string") {
                 Array.prototype.push.apply(combinedGlyphs, self.handleText(arrItem, state));
-              } else if ((0, _util.isNum)(arrItem)) {
+              } else if (typeof arrItem === "number") {
                 combinedGlyphs.push(arrItem);
               }
             }
@@ -23559,7 +23633,7 @@ class PartialEvaluator {
             continue;
 
           case _util.OPS.beginMarkedContentProps:
-            if (!(0, _primitives.isName)(args[0])) {
+            if (!(args[0] instanceof _primitives.Name)) {
               (0, _util.warn)(`Expected name for beginMarkedContentProps arg0=${args[0]}`);
               continue;
             }
@@ -23639,16 +23713,14 @@ class PartialEvaluator {
     task,
     resources,
     stateManager = null,
-    normalizeWhitespace = false,
     combineTextItems = false,
     includeMarkedContent = false,
     sink,
-    seenStyles = new Set()
+    seenStyles = new Set(),
+    viewBox
   }) {
     resources = resources || _primitives.Dict.empty;
     stateManager = stateManager || new StateManager(new TextState());
-    const WhitespaceRegexp = /\s/g;
-    const DiacriticRegExp = new RegExp("^\\p{Mn}$", "u");
     const NormalizedUnicodes = (0, _unicode.getNormalizedUnicodes)();
     const textContent = {
       items: [],
@@ -23767,27 +23839,14 @@ class PartialEvaluator {
       textContentItem.textAdvanceScale = scaleFactor;
     }
 
-    function replaceWhitespace(str) {
-      const ii = str.length;
-      let i = 0,
-          code;
-
-      while (i < ii && (code = str.charCodeAt(i)) >= 0x20 && code <= 0x7f) {
-        i++;
-      }
-
-      return i < ii ? str.replace(WhitespaceRegexp, " ") : str;
-    }
-
     function runBidiTransform(textChunk) {
       const text = textChunk.str.join("");
       const bidiResult = (0, _bidi.bidi)(text, -1, textChunk.vertical);
-      const str = normalizeWhitespace ? replaceWhitespace(bidiResult.str) : bidiResult.str;
       return {
-        str,
+        str: bidiResult.str,
         dir: bidiResult.dir,
-        width: textChunk.totalWidth,
-        height: textChunk.totalHeight,
+        width: Math.abs(textChunk.totalWidth),
+        height: Math.abs(textChunk.totalHeight),
         transform: textChunk.transform,
         fontName: textChunk.fontName,
         hasEOL: textChunk.hasEOL
@@ -23809,75 +23868,93 @@ class PartialEvaluator {
       });
     }
 
-    function compareWithLastPosition() {
-      if (!combineTextItems || !textState.font || !textContentItem.prevTransform) {
-        return;
-      }
+    function applyInverseRotation(x, y, matrix) {
+      const scale = Math.hypot(matrix[0], matrix[1]);
+      return [(matrix[0] * x + matrix[1] * y) / scale, (matrix[2] * x + matrix[3] * y) / scale];
+    }
 
+    function compareWithLastPosition() {
       const currentTransform = getCurrentTextTransform();
       let posX = currentTransform[4];
       let posY = currentTransform[5];
+      const shiftedX = posX - viewBox[0];
+      const shiftedY = posY - viewBox[1];
+
+      if (shiftedX < 0 || shiftedX > viewBox[2] || shiftedY < 0 || shiftedY > viewBox[3]) {
+        return false;
+      }
+
+      if (!combineTextItems || !textState.font || !textContentItem.prevTransform) {
+        return true;
+      }
+
       let lastPosX = textContentItem.prevTransform[4];
       let lastPosY = textContentItem.prevTransform[5];
 
       if (lastPosX === posX && lastPosY === posY) {
-        return;
+        return true;
       }
 
-      let rotate = 0;
+      let rotate = -1;
 
       if (currentTransform[0] && currentTransform[1] === 0 && currentTransform[2] === 0) {
         rotate = currentTransform[0] > 0 ? 0 : 180;
       } else if (currentTransform[1] && currentTransform[0] === 0 && currentTransform[3] === 0) {
-        rotate += currentTransform[1] > 0 ? 90 : 270;
+        rotate = currentTransform[1] > 0 ? 90 : 270;
       }
 
-      if (rotate !== 0) {
-        switch (rotate) {
-          case 90:
-            [posX, posY] = [posY, posX];
-            [lastPosX, lastPosY] = [lastPosY, lastPosX];
-            break;
+      switch (rotate) {
+        case 0:
+          break;
 
-          case 180:
-            [posX, posY, lastPosX, lastPosY] = [-posX, -posY, -lastPosX, -lastPosY];
-            break;
+        case 90:
+          [posX, posY] = [posY, posX];
+          [lastPosX, lastPosY] = [lastPosY, lastPosX];
+          break;
 
-          case 270:
-            [posX, posY] = [-posY, -posX];
-            [lastPosX, lastPosY] = [-lastPosY, -lastPosX];
-            break;
-        }
+        case 180:
+          [posX, posY, lastPosX, lastPosY] = [-posX, -posY, -lastPosX, -lastPosY];
+          break;
+
+        case 270:
+          [posX, posY] = [-posY, -posX];
+          [lastPosX, lastPosY] = [-lastPosY, -lastPosX];
+          break;
+
+        default:
+          [posX, posY] = applyInverseRotation(posX, posY, currentTransform);
+          [lastPosX, lastPosY] = applyInverseRotation(lastPosX, lastPosY, textContentItem.prevTransform);
       }
 
       if (textState.font.vertical) {
         const advanceY = (lastPosY - posY) / textContentItem.textAdvanceScale;
         const advanceX = posX - lastPosX;
+        const textOrientation = Math.sign(textContentItem.height);
 
-        if (advanceY < textContentItem.negativeSpaceMax) {
+        if (advanceY < textOrientation * textContentItem.negativeSpaceMax) {
           if (Math.abs(advanceX) > 0.5 * textContentItem.width) {
             appendEOL();
-            return;
+            return true;
           }
 
           flushTextContentItem();
-          return;
+          return true;
         }
 
-        if (Math.abs(advanceX) > textContentItem.height) {
+        if (Math.abs(advanceX) > textContentItem.width) {
           appendEOL();
-          return;
+          return true;
         }
 
-        if (advanceY <= textContentItem.trackingSpaceMin) {
+        if (advanceY <= textOrientation * textContentItem.trackingSpaceMin) {
           textContentItem.height += advanceY;
-        } else if (!addFakeSpaces(advanceY, textContentItem.prevTransform)) {
+        } else if (!addFakeSpaces(advanceY, textContentItem.prevTransform, textOrientation)) {
           if (textContentItem.str.length === 0) {
             textContent.items.push({
               str: " ",
               dir: "ltr",
               width: 0,
-              height: advanceY,
+              height: Math.abs(advanceY),
               transform: textContentItem.prevTransform,
               fontName: textContentItem.fontName,
               hasEOL: false
@@ -23887,35 +23964,36 @@ class PartialEvaluator {
           }
         }
 
-        return;
+        return true;
       }
 
       const advanceX = (posX - lastPosX) / textContentItem.textAdvanceScale;
       const advanceY = posY - lastPosY;
+      const textOrientation = Math.sign(textContentItem.width);
 
-      if (advanceX < textContentItem.negativeSpaceMax) {
+      if (advanceX < textOrientation * textContentItem.negativeSpaceMax) {
         if (Math.abs(advanceY) > 0.5 * textContentItem.height) {
           appendEOL();
-          return;
+          return true;
         }
 
         flushTextContentItem();
-        return;
+        return true;
       }
 
       if (Math.abs(advanceY) > textContentItem.height) {
         appendEOL();
-        return;
+        return true;
       }
 
-      if (advanceX <= textContentItem.trackingSpaceMin) {
+      if (advanceX <= textOrientation * textContentItem.trackingSpaceMin) {
         textContentItem.width += advanceX;
-      } else if (!addFakeSpaces(advanceX, textContentItem.prevTransform)) {
+      } else if (!addFakeSpaces(advanceX, textContentItem.prevTransform, textOrientation)) {
         if (textContentItem.str.length === 0) {
           textContent.items.push({
             str: " ",
             dir: "ltr",
-            width: advanceX,
+            width: Math.abs(advanceX),
             height: 0,
             transform: textContentItem.prevTransform,
             fontName: textContentItem.fontName,
@@ -23925,6 +24003,8 @@ class PartialEvaluator {
           textContentItem.width += advanceX;
         }
       }
+
+      return true;
     }
 
     function buildTextContentItem({
@@ -23952,6 +24032,11 @@ class PartialEvaluator {
 
       for (let i = 0, ii = glyphs.length; i < ii; i++) {
         const glyph = glyphs[i];
+
+        if (glyph.isInvisibleFormatMark) {
+          continue;
+        }
+
         let charSpacing = textState.charSpacing + (i + 1 === ii ? extraSpacing : 0);
         let glyphWidth = glyph.width;
 
@@ -23960,9 +24045,8 @@ class PartialEvaluator {
         }
 
         let scaledDim = glyphWidth * scale;
-        let glyphUnicode = glyph.unicode;
 
-        if (glyphUnicode === " " && (i === 0 || i + 1 === ii || glyphs[i - 1].unicode === " " || glyphs[i + 
1].unicode === " " || extraSpacing)) {
+        if (glyph.isWhitespace && (i === 0 || i + 1 === ii || glyphs[i - 1].isWhitespace || glyphs[i + 
1].isWhitespace || extraSpacing)) {
           if (!font.vertical) {
             charSpacing += scaledDim + textState.wordSpacing;
             textState.translateTextMatrix(charSpacing * textState.textHScale, 0);
@@ -23974,10 +24058,13 @@ class PartialEvaluator {
           continue;
         }
 
-        compareWithLastPosition();
+        if (!compareWithLastPosition()) {
+          continue;
+        }
+
         const textChunk = ensureTextContentItem();
 
-        if (DiacriticRegExp.test(glyph.unicode)) {
+        if (glyph.isZeroWidthDiacritic) {
           scaledDim = 0;
         }
 
@@ -23995,9 +24082,14 @@ class PartialEvaluator {
           textChunk.prevTransform = getCurrentTextTransform();
         }
 
-        glyphUnicode = NormalizedUnicodes[glyphUnicode] || glyphUnicode;
-        glyphUnicode = (0, _unicode.reverseIfRtl)(glyphUnicode);
-        textChunk.str.push(glyphUnicode);
+        if (glyph.isWhitespace) {
+          textChunk.str.push(" ");
+        } else {
+          let glyphUnicode = glyph.unicode;
+          glyphUnicode = NormalizedUnicodes[glyphUnicode] || glyphUnicode;
+          glyphUnicode = (0, _unicode.reverseIfRtl)(glyphUnicode);
+          textChunk.str.push(glyphUnicode);
+        }
 
         if (charSpacing) {
           if (!font.vertical) {
@@ -24026,8 +24118,8 @@ class PartialEvaluator {
       }
     }
 
-    function addFakeSpaces(width, transf) {
-      if (textContentItem.spaceInFlowMin <= width && width <= textContentItem.spaceInFlowMax) {
+    function addFakeSpaces(width, transf, textOrientation) {
+      if (textOrientation * textContentItem.spaceInFlowMin <= width && width <= textOrientation * 
textContentItem.spaceInFlowMax) {
         if (textContentItem.initialized) {
           textContentItem.str.push(" ");
         }
@@ -24047,8 +24139,8 @@ class PartialEvaluator {
       textContent.items.push({
         str: " ",
         dir: "ltr",
-        width,
-        height,
+        width: Math.abs(width),
+        height: Math.abs(height),
         transform: transf || getCurrentTextTransform(),
         fontName,
         hasEOL: false
@@ -24298,13 +24390,13 @@ class PartialEvaluator {
                 xobj = xref.fetch(xobj);
               }
 
-              if (!(0, _primitives.isStream)(xobj)) {
+              if (!(xobj instanceof _base_stream.BaseStream)) {
                 throw new _util.FormatError("XObject should be a stream");
               }
 
               const type = xobj.dict.get("Subtype");
 
-              if (!(0, _primitives.isName)(type)) {
+              if (!(type instanceof _primitives.Name)) {
                 throw new _util.FormatError("XObject should have a Name subtype");
               }
 
@@ -24345,11 +24437,11 @@ class PartialEvaluator {
                 task,
                 resources: xobj.dict.get("Resources") || resources,
                 stateManager: xObjStateManager,
-                normalizeWhitespace,
                 combineTextItems,
                 includeMarkedContent,
                 sink: sinkWrapper,
-                seenStyles
+                seenStyles,
+                viewBox
               }).then(function () {
                 if (!sinkWrapper.enqueueInvoked) {
                   emptyXObjectCache.set(name, xobj.dict.objId, true);
@@ -24426,7 +24518,7 @@ class PartialEvaluator {
             if (includeMarkedContent) {
               textContent.items.push({
                 type: "beginMarkedContent",
-                tag: (0, _primitives.isName)(args[0]) ? args[0].name : null
+                tag: args[0] instanceof _primitives.Name ? args[0].name : null
               });
             }
 
@@ -24437,14 +24529,14 @@ class PartialEvaluator {
               flushTextContentItem();
               let mcid = null;
 
-              if ((0, _primitives.isDict)(args[1])) {
+              if (args[1] instanceof _primitives.Dict) {
                 mcid = args[1].get("MCID");
               }
 
               textContent.items.push({
                 type: "beginMarkedContentProps",
                 id: Number.isInteger(mcid) ? `${self.idFactory.getPageObjId()}_mcid${mcid}` : null,
-                tag: (0, _primitives.isName)(args[0]) ? args[0].name : null
+                tag: args[0] instanceof _primitives.Name ? args[0].name : null
               });
             }
 
@@ -24499,7 +24591,7 @@ class PartialEvaluator {
     if (properties.composite) {
       const cidSystemInfo = dict.get("CIDSystemInfo");
 
-      if ((0, _primitives.isDict)(cidSystemInfo)) {
+      if (cidSystemInfo instanceof _primitives.Dict) {
         properties.cidSystemInfo = {
           registry: (0, _util.stringToPDFString)(cidSystemInfo.get("Registry")),
           ordering: (0, _util.stringToPDFString)(cidSystemInfo.get("Ordering")),
@@ -24521,9 +24613,9 @@ class PartialEvaluator {
     if (dict.has("Encoding")) {
       encoding = dict.get("Encoding");
 
-      if ((0, _primitives.isDict)(encoding)) {
+      if (encoding instanceof _primitives.Dict) {
         baseEncodingName = encoding.get("BaseEncoding");
-        baseEncodingName = (0, _primitives.isName)(baseEncodingName) ? baseEncodingName.name : null;
+        baseEncodingName = baseEncodingName instanceof _primitives.Name ? baseEncodingName.name : null;
 
         if (encoding.has("Differences")) {
           const diffEncoding = encoding.get("Differences");
@@ -24532,16 +24624,16 @@ class PartialEvaluator {
           for (let j = 0, jj = diffEncoding.length; j < jj; j++) {
             const data = xref.fetchIfRef(diffEncoding[j]);
 
-            if ((0, _util.isNum)(data)) {
+            if (typeof data === "number") {
               index = data;
-            } else if ((0, _primitives.isName)(data)) {
+            } else if (data instanceof _primitives.Name) {
               differences[index++] = data.name;
             } else {
               throw new _util.FormatError(`Invalid entry in 'Differences' array: ${data}`);
             }
           }
         }
-      } else if ((0, _primitives.isName)(encoding)) {
+      } else if (encoding instanceof _primitives.Name) {
         baseEncodingName = encoding.name;
       } else {
         throw new _util.FormatError("Encoding is not a Name nor a Dict");
@@ -24739,7 +24831,7 @@ class PartialEvaluator {
       return Promise.resolve(null);
     }
 
-    if ((0, _primitives.isName)(cmapObj)) {
+    if (cmapObj instanceof _primitives.Name) {
       return _cmap.CMapFactory.create({
         encoding: cmapObj,
         fetchBuiltInCMap: this._fetchBuiltInCMapBound,
@@ -24751,7 +24843,7 @@ class PartialEvaluator {
 
         return new _to_unicode_map.ToUnicodeMap(cmap.getMap());
       });
-    } else if ((0, _primitives.isStream)(cmapObj)) {
+    } else if (cmapObj instanceof _base_stream.BaseStream) {
       return _cmap.CMapFactory.create({
         encoding: cmapObj,
         fetchBuiltInCMap: this._fetchBuiltInCMapBound,
@@ -24893,7 +24985,7 @@ class PartialEvaluator {
       } else {
         const baseFontName = dict.get("BaseFont");
 
-        if ((0, _primitives.isName)(baseFontName)) {
+        if (baseFontName instanceof _primitives.Name) {
           const metrics = this.getBaseFontMetrics(baseFontName.name);
           glyphsWidths = this.buildCharCodeToWidth(metrics.widths, properties);
           defaultWidth = metrics.defaultWidth;
@@ -24955,7 +25047,7 @@ class PartialEvaluator {
 
     const glyphWidths = Metrics[lookupName];
 
-    if ((0, _util.isNum)(glyphWidths)) {
+    if (typeof glyphWidths === "number") {
       defaultWidth = glyphWidths;
       monospace = true;
     } else {
@@ -24993,7 +25085,7 @@ class PartialEvaluator {
     const baseDict = dict;
     let type = dict.get("Subtype");
 
-    if (!(0, _primitives.isName)(type)) {
+    if (!(type instanceof _primitives.Name)) {
       throw new _util.FormatError("invalid font Subtype");
     }
 
@@ -25015,7 +25107,7 @@ class PartialEvaluator {
 
       type = dict.get("Subtype");
 
-      if (!(0, _primitives.isName)(type)) {
+      if (!(type instanceof _primitives.Name)) {
         throw new _util.FormatError("invalid font Subtype");
       }
 
@@ -25030,15 +25122,15 @@ class PartialEvaluator {
       hash = new _murmurhash.MurmurHash3_64();
       const encoding = baseDict.getRaw("Encoding");
 
-      if ((0, _primitives.isName)(encoding)) {
+      if (encoding instanceof _primitives.Name) {
         hash.update(encoding.name);
-      } else if ((0, _primitives.isRef)(encoding)) {
+      } else if (encoding instanceof _primitives.Ref) {
         hash.update(encoding.toString());
-      } else if ((0, _primitives.isDict)(encoding)) {
+      } else if (encoding instanceof _primitives.Dict) {
         for (const entry of encoding.getRawValues()) {
-          if ((0, _primitives.isName)(entry)) {
+          if (entry instanceof _primitives.Name) {
             hash.update(entry.name);
-          } else if ((0, _primitives.isRef)(entry)) {
+          } else if (entry instanceof _primitives.Ref) {
             hash.update(entry.toString());
           } else if (Array.isArray(entry)) {
             const diffLength = entry.length,
@@ -25047,9 +25139,9 @@ class PartialEvaluator {
             for (let j = 0; j < diffLength; j++) {
               const diffEntry = entry[j];
 
-              if ((0, _primitives.isName)(diffEntry)) {
+              if (diffEntry instanceof _primitives.Name) {
                 diffBuf[j] = diffEntry.name;
-              } else if ((0, _util.isNum)(diffEntry) || (0, _primitives.isRef)(diffEntry)) {
+              } else if (typeof diffEntry === "number" || diffEntry instanceof _primitives.Ref) {
                 diffBuf[j] = diffEntry.toString();
               }
             }
@@ -25062,11 +25154,11 @@ class PartialEvaluator {
       hash.update(`${firstChar}-${lastChar}`);
       toUnicode = dict.get("ToUnicode") || baseDict.get("ToUnicode");
 
-      if ((0, _primitives.isStream)(toUnicode)) {
+      if (toUnicode instanceof _base_stream.BaseStream) {
         const stream = toUnicode.str || toUnicode;
         const uint8array = stream.buffer ? new Uint8Array(stream.buffer.buffer, 0, stream.bufferLength) : 
new Uint8Array(stream.bytes.buffer, stream.start, stream.end - stream.start);
         hash.update(uint8array);
-      } else if ((0, _primitives.isName)(toUnicode)) {
+      } else if (toUnicode instanceof _primitives.Name) {
         hash.update(toUnicode.name);
       }
 
@@ -25076,7 +25168,7 @@ class PartialEvaluator {
         const widthsBuf = [];
 
         for (const entry of widths) {
-          if ((0, _util.isNum)(entry) || (0, _primitives.isRef)(entry)) {
+          if (typeof entry === "number" || entry instanceof _primitives.Ref) {
             widthsBuf.push(entry.toString());
           }
         }
@@ -25092,13 +25184,13 @@ class PartialEvaluator {
           const widthsBuf = [];
 
           for (const entry of compositeWidths) {
-            if ((0, _util.isNum)(entry) || (0, _primitives.isRef)(entry)) {
+            if (typeof entry === "number" || entry instanceof _primitives.Ref) {
               widthsBuf.push(entry.toString());
             } else if (Array.isArray(entry)) {
               const subWidthsBuf = [];
 
               for (const element of entry) {
-                if ((0, _util.isNum)(element) || (0, _primitives.isRef)(element)) {
+                if (typeof element === "number" || element instanceof _primitives.Ref) {
                   subWidthsBuf.push(element.toString());
                 }
               }
@@ -25157,7 +25249,7 @@ class PartialEvaluator {
       } else {
         let baseFontName = dict.get("BaseFont");
 
-        if (!(0, _primitives.isName)(baseFontName)) {
+        if (!(baseFontName instanceof _primitives.Name)) {
           throw new _util.FormatError("Base font is not specified");
         }
 
@@ -25213,11 +25305,11 @@ class PartialEvaluator {
     let fontName = descriptor.get("FontName");
     let baseFont = dict.get("BaseFont");
 
-    if ((0, _util.isString)(fontName)) {
+    if (typeof fontName === "string") {
       fontName = _primitives.Name.get(fontName);
     }
 
-    if ((0, _util.isString)(baseFont)) {
+    if (typeof baseFont === "string") {
       baseFont = _primitives.Name.get(baseFont);
     }
 
@@ -25236,7 +25328,7 @@ class PartialEvaluator {
 
     fontName = fontName || baseFont;
 
-    if (!(0, _primitives.isName)(fontName)) {
+    if (!(fontName instanceof _primitives.Name)) {
       throw new _util.FormatError("invalid font name");
     }
 
@@ -25323,7 +25415,7 @@ class PartialEvaluator {
     if (composite) {
       const cidEncoding = baseDict.get("Encoding");
 
-      if ((0, _primitives.isName)(cidEncoding)) {
+      if (cidEncoding instanceof _primitives.Name) {
         properties.cidEncoding = cidEncoding.name;
       }
 
@@ -25435,6 +25527,13 @@ class TranslatedFont {
       ignoreErrors: false
     });
     type3Evaluator.parsingType3Font = true;
+    const type3FontRefs = new _primitives.RefSet(evaluator.type3FontRefs);
+
+    if (this.dict.objId && !type3FontRefs.has(this.dict.objId)) {
+      type3FontRefs.put(this.dict.objId);
+    }
+
+    type3Evaluator.type3FontRefs = type3FontRefs;
     const translatedFont = this.font,
           type3Dependencies = this.type3Dependencies;
     let loadCharProcsPromise = Promise.resolve();
@@ -26039,7 +26138,7 @@ class EvaluatorPreprocessor {
   }
 
   static get MAX_INVALID_PATH_OPS() {
-    return (0, _util.shadow)(this, "MAX_INVALID_PATH_OPS", 20);
+    return (0, _util.shadow)(this, "MAX_INVALID_PATH_OPS", 10);
   }
 
   constructor(stream, xref, stateManager = new StateManager()) {
@@ -26172,9 +26271,11 @@ var _util = __w_pdfjs_require__(2);
 
 var _primitives = __w_pdfjs_require__(5);
 
+var _base_stream = __w_pdfjs_require__(9);
+
 var _parser = __w_pdfjs_require__(27);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 var _stream = __w_pdfjs_require__(10);
 
@@ -26764,7 +26865,7 @@ const CMapFactory = function CMapFactoryClosure() {
   }
 
   function expectString(obj) {
-    if (!(0, _util.isString)(obj)) {
+    if (typeof obj !== "string") {
       throw new _util.FormatError("Malformed CMap: expected string.");
     }
   }
@@ -26815,7 +26916,7 @@ const CMapFactory = function CMapFactoryClosure() {
       const high = strToInt(obj);
       obj = lexer.getObj();
 
-      if (Number.isInteger(obj) || (0, _util.isString)(obj)) {
+      if (Number.isInteger(obj) || typeof obj === "string") {
         const dstLow = Number.isInteger(obj) ? String.fromCharCode(obj) : obj;
         cMap.mapBfRange(low, high, dstLow);
       } else if ((0, _primitives.isCmd)(obj, "[")) {
@@ -26893,14 +26994,14 @@ const CMapFactory = function CMapFactoryClosure() {
         return;
       }
 
-      if (!(0, _util.isString)(obj)) {
+      if (typeof obj !== "string") {
         break;
       }
 
       const low = strToInt(obj);
       obj = lexer.getObj();
 
-      if (!(0, _util.isString)(obj)) {
+      if (typeof obj !== "string") {
         break;
       }
 
@@ -26922,7 +27023,7 @@ const CMapFactory = function CMapFactoryClosure() {
   function parseCMapName(cMap, lexer) {
     const obj = lexer.getObj();
 
-    if ((0, _primitives.isName)(obj) && (0, _util.isString)(obj.name)) {
+    if (obj instanceof _primitives.Name) {
       cMap.name = obj.name;
     }
   }
@@ -26936,7 +27037,7 @@ const CMapFactory = function CMapFactoryClosure() {
 
         if (obj === _primitives.EOF) {
           break;
-        } else if ((0, _primitives.isName)(obj)) {
+        } else if (obj instanceof _primitives.Name) {
           if (obj.name === "WMode") {
             parseWMode(cMap, lexer);
           } else if (obj.name === "CMapName") {
@@ -26944,13 +27045,13 @@ const CMapFactory = function CMapFactoryClosure() {
           }
 
           previous = obj;
-        } else if ((0, _primitives.isCmd)(obj)) {
+        } else if (obj instanceof _primitives.Cmd) {
           switch (obj.cmd) {
             case "endcmap":
               break objLoop;
 
             case "usecmap":
-              if ((0, _primitives.isName)(previous)) {
+              if (previous instanceof _primitives.Name) {
                 embeddedUseCMap = previous.name;
               }
 
@@ -27060,9 +27161,9 @@ const CMapFactory = function CMapFactoryClosure() {
       const fetchBuiltInCMap = params.fetchBuiltInCMap;
       const useCMap = params.useCMap;
 
-      if ((0, _primitives.isName)(encoding)) {
+      if (encoding instanceof _primitives.Name) {
         return createBuiltInCMap(encoding.name, fetchBuiltInCMap);
-      } else if ((0, _primitives.isStream)(encoding)) {
+      } else if (encoding instanceof _base_stream.BaseStream) {
         const parsedCMap = await parseCMap(new CMap(), new _parser.Lexer(encoding), fetchBuiltInCMap, 
useCMap);
 
         if (parsedCMap.isIdentityCMap) {
@@ -27095,7 +27196,7 @@ var _util = __w_pdfjs_require__(2);
 
 var _primitives = __w_pdfjs_require__(5);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 var _ascii_85_stream = __w_pdfjs_require__(28);
 
@@ -27209,7 +27310,7 @@ class Parser {
           const dict = new _primitives.Dict(this.xref);
 
           while (!(0, _primitives.isCmd)(this.buf1, ">>") && this.buf1 !== _primitives.EOF) {
-            if (!(0, _primitives.isName)(this.buf1)) {
+            if (!(this.buf1 instanceof _primitives.Name)) {
               (0, _util.info)("Malformed dictionary: key must be a name object");
               this.shift();
               continue;
@@ -27530,7 +27631,7 @@ class Parser {
     let dictLength;
 
     while (!(0, _primitives.isCmd)(this.buf1, "ID") && this.buf1 !== _primitives.EOF) {
-      if (!(0, _primitives.isName)(this.buf1)) {
+      if (!(this.buf1 instanceof _primitives.Name)) {
         throw new _util.FormatError("Dictionary key must be a name object");
       }
 
@@ -27551,12 +27652,12 @@ class Parser {
     const filter = dict.get("F", "Filter");
     let filterName;
 
-    if ((0, _primitives.isName)(filter)) {
+    if (filter instanceof _primitives.Name) {
       filterName = filter.name;
     } else if (Array.isArray(filter)) {
       const filterZero = this.xref.fetchIfRef(filter[0]);
 
-      if ((0, _primitives.isName)(filterZero)) {
+      if (filterZero instanceof _primitives.Name) {
         filterName = filterZero.name;
       }
     }
@@ -27732,7 +27833,7 @@ class Parser {
     let filter = dict.get("F", "Filter");
     let params = dict.get("DP", "DecodeParms");
 
-    if ((0, _primitives.isName)(filter)) {
+    if (filter instanceof _primitives.Name) {
       if (Array.isArray(params)) {
         (0, _util.warn)("/DecodeParms should not be an Array, when /Filter is a Name.");
       }
@@ -27749,7 +27850,7 @@ class Parser {
       for (let i = 0, ii = filterArray.length; i < ii; ++i) {
         filter = this.xref.fetchIfRef(filterArray[i]);
 
-        if (!(0, _primitives.isName)(filter)) {
+        if (!(filter instanceof _primitives.Name)) {
           throw new _util.FormatError(`Bad filter name "${filter}"`);
         }
 
@@ -27914,9 +28015,16 @@ class Lexer {
     }
 
     if (ch < 0x30 || ch > 0x39) {
-      if (divideBy === 10 && sign === 0 && ((0, _core_utils.isWhiteSpace)(ch) || ch === -1)) {
-        (0, _util.warn)("Lexer.getNumber - treating a single decimal point as zero.");
-        return 0;
+      if ((0, _core_utils.isWhiteSpace)(ch) || ch === -1) {
+        if (divideBy === 10 && sign === 0) {
+          (0, _util.warn)("Lexer.getNumber - treating a single decimal point as zero.");
+          return 0;
+        }
+
+        if (divideBy === 0 && sign === -1) {
+          (0, _util.warn)("Lexer.getNumber - treating a single minus sign as zero.");
+          return 0;
+        }
       }
 
       throw new _util.FormatError(`Invalid number: ${String.fromCharCode(ch)} (charCode ${ch})`);
@@ -28435,7 +28543,7 @@ class Linearization {
     const linDict = parser.getObj();
     let obj, length;
 
-    if (!(Number.isInteger(obj1) && Number.isInteger(obj2) && (0, _primitives.isCmd)(obj3, "obj") && (0, 
_primitives.isDict)(linDict) && (0, _util.isNum)(obj = linDict.get("Linearized")) && obj > 0)) {
+    if (!(Number.isInteger(obj1) && Number.isInteger(obj2) && (0, _primitives.isCmd)(obj3, "obj") && linDict 
instanceof _primitives.Dict && typeof (obj = linDict.get("Linearized")) === "number" && obj > 0)) {
       return null;
     } else if ((length = getInt(linDict, "L")) !== stream.length) {
       throw new Error('The "L" parameter in the linearization dictionary ' + "does not equal the stream 
length.");
@@ -28469,7 +28577,7 @@ exports.Ascii85Stream = void 0;
 
 var _decode_stream = __w_pdfjs_require__(29);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 class Ascii85Stream extends _decode_stream.DecodeStream {
   constructor(str, maybeLength) {
@@ -28567,7 +28675,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.StreamsSequenceStream = exports.DecodeStream = void 0;
 
-var _base_stream = __w_pdfjs_require__(6);
+var _base_stream = __w_pdfjs_require__(9);
 
 var _stream = __w_pdfjs_require__(10);
 
@@ -28834,19 +28942,19 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.CCITTFaxStream = void 0;
 
-var _primitives = __w_pdfjs_require__(5);
-
 var _ccitt = __w_pdfjs_require__(32);
 
 var _decode_stream = __w_pdfjs_require__(29);
 
+var _primitives = __w_pdfjs_require__(5);
+
 class CCITTFaxStream extends _decode_stream.DecodeStream {
   constructor(str, maybeLength, params) {
     super(maybeLength);
     this.str = str;
     this.dict = str.dict;
 
-    if (!(0, _primitives.isDict)(params)) {
+    if (!(params instanceof _primitives.Dict)) {
       params = _primitives.Dict.empty;
     }
 
@@ -29916,10 +30024,12 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.Jbig2Stream = void 0;
 
-var _primitives = __w_pdfjs_require__(5);
+var _base_stream = __w_pdfjs_require__(9);
 
 var _decode_stream = __w_pdfjs_require__(29);
 
+var _primitives = __w_pdfjs_require__(5);
+
 var _jbig = __w_pdfjs_require__(35);
 
 var _util = __w_pdfjs_require__(2);
@@ -29947,10 +30057,10 @@ class Jbig2Stream extends _decode_stream.DecodeStream {
     const jbig2Image = new _jbig.Jbig2Image();
     const chunks = [];
 
-    if ((0, _primitives.isDict)(this.params)) {
+    if (this.params instanceof _primitives.Dict) {
       const globalsStream = this.params.get("JBIG2Globals");
 
-      if ((0, _primitives.isStream)(globalsStream)) {
+      if (globalsStream instanceof _base_stream.BaseStream) {
         const globals = globalsStream.getBytes();
         chunks.push({
           data: globals,
@@ -29994,7 +30104,7 @@ exports.Jbig2Image = void 0;
 
 var _util = __w_pdfjs_require__(2);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 var _arithmetic_decoder = __w_pdfjs_require__(36);
 
@@ -32608,7 +32718,7 @@ class JpegStream extends _decode_stream.DecodeStream {
       }
     }
 
-    if ((0, _primitives.isDict)(this.params)) {
+    if (this.params instanceof _primitives.Dict) {
       const colorTransform = this.params.get("ColorTransform");
 
       if (Number.isInteger(colorTransform)) {
@@ -32646,7 +32756,7 @@ exports.JpegImage = void 0;
 
 var _util = __w_pdfjs_require__(2);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 class JpegError extends _util.BaseException {
   constructor(msg) {
@@ -33973,7 +34083,7 @@ exports.JpxImage = void 0;
 
 var _util = __w_pdfjs_require__(2);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 var _arithmetic_decoder = __w_pdfjs_require__(36);
 
@@ -34341,10 +34451,6 @@ class JpxImage {
               unsupported.push("selectiveArithmeticCodingBypass");
             }
 
-            if (cod.resetContextProbabilities) {
-              unsupported.push("resetContextProbabilities");
-            }
-
             if (cod.terminationOnEachCodingPass) {
               unsupported.push("terminationOnEachCodingPass");
             }
@@ -35289,7 +35395,7 @@ function parseTilePackets(context, data, offset, dataLength) {
   return position;
 }
 
-function copyCoefficients(coefficients, levelWidth, levelHeight, subband, delta, mb, reversible, 
segmentationSymbolUsed) {
+function copyCoefficients(coefficients, levelWidth, levelHeight, subband, delta, mb, reversible, 
segmentationSymbolUsed, resetContextProbabilities) {
   const x0 = subband.tbx0;
   const y0 = subband.tby0;
   const width = subband.tbx1 - subband.tbx0;
@@ -35356,6 +35462,10 @@ function copyCoefficients(coefficients, levelWidth, levelHeight, subband, delta,
           break;
       }
 
+      if (resetContextProbabilities) {
+        bitModel.reset();
+      }
+
       currentCodingpassType = (currentCodingpassType + 1) % 3;
     }
 
@@ -35410,6 +35520,7 @@ function transformTile(context, tile, c) {
   const scalarExpounded = quantizationParameters.scalarExpounded;
   const guardBits = quantizationParameters.guardBits;
   const segmentationSymbolUsed = codingStyleParameters.segmentationSymbolUsed;
+  const resetContextProbabilities = codingStyleParameters.resetContextProbabilities;
   const precision = context.components[c].precision;
   const reversible = codingStyleParameters.reversibleTransformation;
   const transform = reversible ? new ReversibleTransform() : new IrreversibleTransform();
@@ -35438,7 +35549,7 @@ function transformTile(context, tile, c) {
       const gainLog2 = SubbandsGainLog2[subband.type];
       const delta = reversible ? 1 : 2 ** (precision + gainLog2 - epsilon) * (1 + mu / 2048);
       const mb = guardBits + epsilon - 1;
-      copyCoefficients(coefficients, width, height, subband, delta, mb, reversible, segmentationSymbolUsed);
+      copyCoefficients(coefficients, width, height, subband, delta, mb, reversible, segmentationSymbolUsed, 
resetContextProbabilities);
     }
 
     subbandCoefficients.push({
@@ -36464,15 +36575,15 @@ exports.PredictorStream = void 0;
 
 var _decode_stream = __w_pdfjs_require__(29);
 
-var _util = __w_pdfjs_require__(2);
-
 var _primitives = __w_pdfjs_require__(5);
 
+var _util = __w_pdfjs_require__(2);
+
 class PredictorStream extends _decode_stream.DecodeStream {
   constructor(str, maybeLength, params) {
     super(maybeLength);
 
-    if (!(0, _primitives.isDict)(params)) {
+    if (!(params instanceof _primitives.Dict)) {
       return str;
     }
 
@@ -36778,31 +36889,33 @@ var _cff_parser = __w_pdfjs_require__(45);
 
 var _fonts_utils = __w_pdfjs_require__(18);
 
+var _unicode = __w_pdfjs_require__(21);
+
 var _glyphlist = __w_pdfjs_require__(20);
 
 var _encodings = __w_pdfjs_require__(19);
 
 var _standard_fonts = __w_pdfjs_require__(47);
 
-var _unicode = __w_pdfjs_require__(21);
-
 var _to_unicode_map = __w_pdfjs_require__(48);
 
 var _cff_font = __w_pdfjs_require__(49);
 
 var _font_renderer = __w_pdfjs_require__(50);
 
-var _glyf = __w_pdfjs_require__(51);
+var _metrics = __w_pdfjs_require__(51);
+
+var _glyf = __w_pdfjs_require__(52);
 
 var _cmap = __w_pdfjs_require__(26);
 
-var _opentype_file_builder = __w_pdfjs_require__(52);
+var _opentype_file_builder = __w_pdfjs_require__(53);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 var _stream = __w_pdfjs_require__(10);
 
-var _type1_font = __w_pdfjs_require__(53);
+var _type1_font = __w_pdfjs_require__(54);
 
 const PRIVATE_USE_AREAS = [[0xe000, 0xf8ff], [0x100000, 0x10fffd]];
 const PDF_GLYPH_SPACE_UNITS = 1000;
@@ -36903,6 +37016,10 @@ class Glyph {
     this.operatorListId = operatorListId;
     this.isSpace = isSpace;
     this.isInFont = isInFont;
+    const category = (0, _unicode.getCharUnicodeCategory)(unicode);
+    this.isWhitespace = category.isWhitespace;
+    this.isZeroWidthDiacritic = category.isZeroWidthDiacritic;
+    this.isInvisibleFormatMark = category.isInvisibleFormatMark;
   }
 
   matchesForCache(originalCharCode, fontChar, unicode, accent, width, vmetric, operatorListId, isSpace, 
isInFont) {
@@ -37581,6 +37698,23 @@ class Font {
     const isStandardFont = !!stdFontMap[fontName];
     const isMappedToStandardFont = !!(nonStdFontMap[fontName] && stdFontMap[nonStdFontMap[fontName]]);
     fontName = stdFontMap[fontName] || nonStdFontMap[fontName] || fontName;
+    const fontBasicMetricsMap = (0, _metrics.getFontBasicMetrics)();
+    const metrics = fontBasicMetricsMap[fontName];
+
+    if (metrics) {
+      if (isNaN(this.ascent)) {
+        this.ascent = metrics.ascent / PDF_GLYPH_SPACE_UNITS;
+      }
+
+      if (isNaN(this.descent)) {
+        this.descent = metrics.descent / PDF_GLYPH_SPACE_UNITS;
+      }
+
+      if (isNaN(this.capHeight)) {
+        this.capHeight = metrics.capHeight / PDF_GLYPH_SPACE_UNITS;
+      }
+    }
+
     this.bold = fontName.search(/bold/gi) !== -1;
     this.italic = fontName.search(/oblique/gi) !== -1 || fontName.search(/italic/gi) !== -1;
     this.black = name.search(/Black/g) !== -1;
@@ -39408,7 +39542,11 @@ class Font {
     }
 
     width = this.widths[widthCode];
-    width = (0, _util.isNum)(width) ? width : this.defaultWidth;
+
+    if (typeof width !== "number") {
+      width = this.defaultWidth;
+    }
+
     const vmetric = this.vmetrics && this.vmetrics[widthCode];
     let unicode = this.toUnicode.get(charcode) || charcode;
 
@@ -41480,7 +41618,7 @@ exports.getSerifFonts = exports.getNonStdFontMap = exports.getGlyphMapForStandar
 exports.getStandardFontName = getStandardFontName;
 exports.getSymbolsFonts = exports.getSupplementalGlyphMapForCalibri = 
exports.getSupplementalGlyphMapForArialBlack = exports.getStdFontMap = void 0;
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 var _fonts_utils = __w_pdfjs_require__(18);
 
@@ -42525,14 +42663,26 @@ var _encodings = __w_pdfjs_require__(19);
 
 var _stream = __w_pdfjs_require__(10);
 
-function getLong(data, offset) {
-  return data[offset] << 24 | data[offset + 1] << 16 | data[offset + 2] << 8 | data[offset + 3];
+function getUint32(data, offset) {
+  return (data[offset] << 24 | data[offset + 1] << 16 | data[offset + 2] << 8 | data[offset + 3]) >>> 0;
 }
 
-function getUshort(data, offset) {
+function getUint16(data, offset) {
   return data[offset] << 8 | data[offset + 1];
 }
 
+function getInt16(data, offset) {
+  return (data[offset] << 24 | data[offset + 1] << 16) >> 16;
+}
+
+function getInt8(data, offset) {
+  return data[offset] << 24 >> 24;
+}
+
+function getFloat214(data, offset) {
+  return getInt16(data, offset) / 16384;
+}
+
 function getSubroutineBias(subrs) {
   const numSubrs = subrs.length;
   let bias = 32768;
@@ -42547,34 +42697,34 @@ function getSubroutineBias(subrs) {
 }
 
 function parseCmap(data, start, end) {
-  const offset = getUshort(data, start + 2) === 1 ? getLong(data, start + 8) : getLong(data, start + 16);
-  const format = getUshort(data, start + offset);
+  const offset = getUint16(data, start + 2) === 1 ? getUint32(data, start + 8) : getUint32(data, start + 16);
+  const format = getUint16(data, start + offset);
   let ranges, p, i;
 
   if (format === 4) {
-    getUshort(data, start + offset + 2);
-    const segCount = getUshort(data, start + offset + 6) >> 1;
+    getUint16(data, start + offset + 2);
+    const segCount = getUint16(data, start + offset + 6) >> 1;
     p = start + offset + 14;
     ranges = [];
 
     for (i = 0; i < segCount; i++, p += 2) {
       ranges[i] = {
-        end: getUshort(data, p)
+        end: getUint16(data, p)
       };
     }
 
     p += 2;
 
     for (i = 0; i < segCount; i++, p += 2) {
-      ranges[i].start = getUshort(data, p);
+      ranges[i].start = getUint16(data, p);
     }
 
     for (i = 0; i < segCount; i++, p += 2) {
-      ranges[i].idDelta = getUshort(data, p);
+      ranges[i].idDelta = getUint16(data, p);
     }
 
     for (i = 0; i < segCount; i++, p += 2) {
-      let idOffset = getUshort(data, p);
+      let idOffset = getUint16(data, p);
 
       if (idOffset === 0) {
         continue;
@@ -42583,23 +42733,23 @@ function parseCmap(data, start, end) {
       ranges[i].ids = [];
 
       for (let j = 0, jj = ranges[i].end - ranges[i].start + 1; j < jj; j++) {
-        ranges[i].ids[j] = getUshort(data, p + idOffset);
+        ranges[i].ids[j] = getUint16(data, p + idOffset);
         idOffset += 2;
       }
     }
 
     return ranges;
   } else if (format === 12) {
-    getLong(data, start + offset + 4);
-    const groups = getLong(data, start + offset + 12);
+    const groups = getUint32(data, start + offset + 12);
     p = start + offset + 16;
     ranges = [];
 
     for (i = 0; i < groups; i++) {
+      start = getUint32(data, p);
       ranges.push({
-        start: getLong(data, p),
-        end: getLong(data, p + 4),
-        idDelta: getLong(data, p + 8) - getLong(data, p)
+        start,
+        end: getUint32(data, p + 4),
+        idDelta: getUint32(data, p + 8) - start
       });
       p += 12;
     }
@@ -42629,16 +42779,11 @@ function parseGlyfTable(glyf, loca, isGlyphLocationsLong) {
 
   if (isGlyphLocationsLong) {
     itemSize = 4;
-
-    itemDecode = function fontItemDecodeLong(data, offset) {
-      return data[offset] << 24 | data[offset + 1] << 16 | data[offset + 2] << 8 | data[offset + 3];
-    };
+    itemDecode = getUint32;
   } else {
     itemSize = 2;
 
-    itemDecode = function fontItemDecode(data, offset) {
-      return data[offset] << 9 | data[offset + 1] << 1;
-    };
+    itemDecode = (data, offset) => 2 * getUint16(data, offset);
   }
 
   const glyphs = [];
@@ -42702,7 +42847,7 @@ function compileGlyf(code, cmds, font) {
   }
 
   let i = 0;
-  const numberOfContours = (code[i] << 24 | code[i + 1] << 16) >> 16;
+  const numberOfContours = getInt16(code, i);
   let flags;
   let x = 0,
       y = 0;
@@ -42710,18 +42855,29 @@ function compileGlyf(code, cmds, font) {
 
   if (numberOfContours < 0) {
     do {
-      flags = code[i] << 8 | code[i + 1];
-      const glyphIndex = code[i + 2] << 8 | code[i + 3];
+      flags = getUint16(code, i);
+      const glyphIndex = getUint16(code, i + 2);
       i += 4;
       let arg1, arg2;
 
       if (flags & 0x01) {
-        arg1 = (code[i] << 24 | code[i + 1] << 16) >> 16;
-        arg2 = (code[i + 2] << 24 | code[i + 3] << 16) >> 16;
+        if (flags & 0x02) {
+          arg1 = getInt16(code, i);
+          arg2 = getInt16(code, i + 2);
+        } else {
+          arg1 = getUint16(code, i);
+          arg2 = getUint16(code, i + 2);
+        }
+
         i += 4;
       } else {
-        arg1 = code[i++];
-        arg2 = code[i++];
+        if (flags & 0x02) {
+          arg1 = getInt8(code, i++);
+          arg2 = getInt8(code, i++);
+        } else {
+          arg1 = code[i++];
+          arg2 = code[i++];
+        }
       }
 
       if (flags & 0x02) {
@@ -42738,17 +42894,17 @@ function compileGlyf(code, cmds, font) {
           scale10 = 0;
 
       if (flags & 0x08) {
-        scaleX = scaleY = (code[i] << 24 | code[i + 1] << 16) / 1073741824;
+        scaleX = scaleY = getFloat214(code, i);
         i += 2;
       } else if (flags & 0x40) {
-        scaleX = (code[i] << 24 | code[i + 1] << 16) / 1073741824;
-        scaleY = (code[i + 2] << 24 | code[i + 3] << 16) / 1073741824;
+        scaleX = getFloat214(code, i);
+        scaleY = getFloat214(code, i + 2);
         i += 4;
       } else if (flags & 0x80) {
-        scaleX = (code[i] << 24 | code[i + 1] << 16) / 1073741824;
-        scale01 = (code[i + 2] << 24 | code[i + 3] << 16) / 1073741824;
-        scale10 = (code[i + 4] << 24 | code[i + 5] << 16) / 1073741824;
-        scaleY = (code[i + 6] << 24 | code[i + 7] << 16) / 1073741824;
+        scaleX = getFloat214(code, i);
+        scale01 = getFloat214(code, i + 2);
+        scale10 = getFloat214(code, i + 4);
+        scaleY = getFloat214(code, i + 6);
         i += 8;
       }
 
@@ -42761,6 +42917,9 @@ function compileGlyf(code, cmds, font) {
           cmd: "transform",
           args: [scaleX, scale01, scale10, scaleY, x, y]
         });
+
+        if (!(flags & 0x02)) {}
+
         compileGlyf(subglyph, cmds, font);
         cmds.push({
           cmd: "restore"
@@ -42772,11 +42931,11 @@ function compileGlyf(code, cmds, font) {
     let j, jj;
 
     for (j = 0; j < numberOfContours; j++) {
-      endPtsOfContours.push(code[i] << 8 | code[i + 1]);
+      endPtsOfContours.push(getUint16(code, i));
       i += 2;
     }
 
-    const instructionLength = code[i] << 8 | code[i + 1];
+    const instructionLength = getUint16(code, i);
     i += 2 + instructionLength;
     const numberOfPoints = endPtsOfContours[endPtsOfContours.length - 1] + 1;
     const points = [];
@@ -42799,7 +42958,7 @@ function compileGlyf(code, cmds, font) {
     for (j = 0; j < numberOfPoints; j++) {
       switch (points[j].flags & 0x12) {
         case 0x00:
-          x += (code[i] << 24 | code[i + 1] << 16) >> 16;
+          x += getInt16(code, i);
           i += 2;
           break;
 
@@ -42818,7 +42977,7 @@ function compileGlyf(code, cmds, font) {
     for (j = 0; j < numberOfPoints; j++) {
       switch (points[j].flags & 0x24) {
         case 0x00:
-          y += (code[i] << 24 | code[i + 1] << 16) >> 16;
+          y += getInt16(code, i);
           i += 2;
           break;
 
@@ -43436,12 +43595,12 @@ class FontRendererFactory {
   static create(font, seacAnalysisEnabled) {
     const data = new Uint8Array(font.data);
     let cmap, glyf, loca, cff, indexToLocFormat, unitsPerEm;
-    const numTables = getUshort(data, 4);
+    const numTables = getUint16(data, 4);
 
     for (let i = 0, p = 12; i < numTables; i++, p += 16) {
       const tag = (0, _util.bytesToString)(data.subarray(p, p + 4));
-      const offset = getLong(data, p + 8);
-      const length = getLong(data, p + 12);
+      const offset = getUint32(data, p + 8);
+      const length = getUint32(data, p + 12);
 
       switch (tag) {
         case "cmap":
@@ -43457,8 +43616,8 @@ class FontRendererFactory {
           break;
 
         case "head":
-          unitsPerEm = getUshort(data, offset + 18);
-          indexToLocFormat = getUshort(data, offset + 50);
+          unitsPerEm = getUint16(data, offset + 18);
+          indexToLocFormat = getUint16(data, offset + 50);
           break;
 
         case "CFF ":
@@ -43481,5062 +43640,16 @@ exports.FontRendererFactory = FontRendererFactory;
 
 /***/ }),
 /* 51 */
-/***/ ((__unused_webpack_module, exports) => {
+/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
 
 Object.defineProperty(exports, "__esModule", ({
   value: true
 }));
-exports.GlyfTable = void 0;
-const ON_CURVE_POINT = 1 << 0;
-const X_SHORT_VECTOR = 1 << 1;
-const Y_SHORT_VECTOR = 1 << 2;
-const REPEAT_FLAG = 1 << 3;
-const X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR = 1 << 4;
-const Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR = 1 << 5;
-const OVERLAP_SIMPLE = 1 << 6;
-const ARG_1_AND_2_ARE_WORDS = 1 << 0;
-const ARGS_ARE_XY_VALUES = 1 << 1;
-const WE_HAVE_A_SCALE = 1 << 3;
-const MORE_COMPONENTS = 1 << 5;
-const WE_HAVE_AN_X_AND_Y_SCALE = 1 << 6;
-const WE_HAVE_A_TWO_BY_TWO = 1 << 7;
-const WE_HAVE_INSTRUCTIONS = 1 << 8;
-
-class GlyfTable {
-  constructor({
-    glyfTable,
-    isGlyphLocationsLong,
-    locaTable,
-    numGlyphs
-  }) {
-    this.glyphs = [];
-    const loca = new DataView(locaTable.buffer, locaTable.byteOffset, locaTable.byteLength);
-    const glyf = new DataView(glyfTable.buffer, glyfTable.byteOffset, glyfTable.byteLength);
-    const offsetSize = isGlyphLocationsLong ? 4 : 2;
-    let prev = isGlyphLocationsLong ? loca.getUint32(0) : 2 * loca.getUint16(0);
-    let pos = 0;
-
-    for (let i = 0; i < numGlyphs; i++) {
-      pos += offsetSize;
-      const next = isGlyphLocationsLong ? loca.getUint32(pos) : 2 * loca.getUint16(pos);
-
-      if (next === prev) {
-        this.glyphs.push(new Glyph({}));
-        continue;
-      }
-
-      const glyph = Glyph.parse(prev, glyf);
-      this.glyphs.push(glyph);
-      prev = next;
-    }
-  }
-
-  getSize() {
-    return this.glyphs.reduce((a, g) => {
-      const size = g.getSize();
-      return a + (size + 3 & ~3);
-    }, 0);
-  }
-
-  write() {
-    const totalSize = this.getSize();
-    const glyfTable = new DataView(new ArrayBuffer(totalSize));
-    const isLocationLong = totalSize > 0x1fffe;
-    const offsetSize = isLocationLong ? 4 : 2;
-    const locaTable = new DataView(new ArrayBuffer((this.glyphs.length + 1) * offsetSize));
-
-    if (isLocationLong) {
-      locaTable.setUint32(0, 0);
-    } else {
-      locaTable.setUint16(0, 0);
-    }
-
-    let pos = 0;
-    let locaIndex = 0;
-
-    for (const glyph of this.glyphs) {
-      pos += glyph.write(pos, glyfTable);
-      pos = pos + 3 & ~3;
-      locaIndex += offsetSize;
-
-      if (isLocationLong) {
-        locaTable.setUint32(locaIndex, pos);
-      } else {
-        locaTable.setUint16(locaIndex, pos >> 1);
-      }
-    }
-
-    return {
-      isLocationLong,
-      loca: new Uint8Array(locaTable.buffer),
-      glyf: new Uint8Array(glyfTable.buffer)
-    };
-  }
-
-  scale(factors) {
-    for (let i = 0, ii = this.glyphs.length; i < ii; i++) {
-      this.glyphs[i].scale(factors[i]);
-    }
-  }
-
-}
-
-exports.GlyfTable = GlyfTable;
-
-class Glyph {
-  constructor({
-    header = null,
-    simple = null,
-    composites = null
-  }) {
-    this.header = header;
-    this.simple = simple;
-    this.composites = composites;
-  }
-
-  static parse(pos, glyf) {
-    const [read, header] = GlyphHeader.parse(pos, glyf);
-    pos += read;
-
-    if (header.numberOfContours < 0) {
-      const composites = [];
-
-      while (true) {
-        const [n, composite] = CompositeGlyph.parse(pos, glyf);
-        pos += n;
-        composites.push(composite);
-
-        if (!(composite.flags & MORE_COMPONENTS)) {
-          break;
-        }
-      }
-
-      return new Glyph({
-        header,
-        composites
-      });
-    }
-
-    const simple = SimpleGlyph.parse(pos, glyf, header.numberOfContours);
-    return new Glyph({
-      header,
-      simple
-    });
-  }
-
-  getSize() {
-    if (!this.header) {
-      return 0;
-    }
-
-    const size = this.simple ? this.simple.getSize() : this.composites.reduce((a, c) => a + c.getSize(), 0);
-    return this.header.getSize() + size;
-  }
-
-  write(pos, buf) {
-    if (!this.header) {
-      return 0;
-    }
-
-    const spos = pos;
-    pos += this.header.write(pos, buf);
-
-    if (this.simple) {
-      pos += this.simple.write(pos, buf);
-    } else {
-      for (const composite of this.composites) {
-        pos += composite.write(pos, buf);
-      }
-    }
-
-    return pos - spos;
-  }
-
-  scale(factor) {
-    if (!this.header) {
-      return;
-    }
-
-    const xMiddle = (this.header.xMin + this.header.xMax) / 2;
-    this.header.scale(xMiddle, factor);
-
-    if (this.simple) {
-      this.simple.scale(xMiddle, factor);
-    } else {
-      for (const composite of this.composites) {
-        composite.scale(xMiddle, factor);
-      }
-    }
-  }
-
-}
-
-class GlyphHeader {
-  constructor({
-    numberOfContours,
-    xMin,
-    yMin,
-    xMax,
-    yMax
-  }) {
-    this.numberOfContours = numberOfContours;
-    this.xMin = xMin;
-    this.yMin = yMin;
-    this.xMax = xMax;
-    this.yMax = yMax;
-  }
-
-  static parse(pos, glyf) {
-    return [10, new GlyphHeader({
-      numberOfContours: glyf.getInt16(pos),
-      xMin: glyf.getInt16(pos + 2),
-      yMin: glyf.getInt16(pos + 4),
-      xMax: glyf.getInt16(pos + 6),
-      yMax: glyf.getInt16(pos + 8)
-    })];
-  }
-
-  getSize() {
-    return 10;
-  }
-
-  write(pos, buf) {
-    buf.setInt16(pos, this.numberOfContours);
-    buf.setInt16(pos + 2, this.xMin);
-    buf.setInt16(pos + 4, this.yMin);
-    buf.setInt16(pos + 6, this.xMax);
-    buf.setInt16(pos + 8, this.yMax);
-    return 10;
-  }
-
-  scale(x, factor) {
-    this.xMin = Math.round(x + (this.xMin - x) * factor);
-    this.xMax = Math.round(x + (this.xMax - x) * factor);
-  }
-
-}
-
-class Contour {
-  constructor({
-    flags,
-    xCoordinates,
-    yCoordinates
-  }) {
-    this.xCoordinates = xCoordinates;
-    this.yCoordinates = yCoordinates;
-    this.flags = flags;
-  }
-
-}
-
-class SimpleGlyph {
-  constructor({
-    contours,
-    instructions
-  }) {
-    this.contours = contours;
-    this.instructions = instructions;
-  }
-
-  static parse(pos, glyf, numberOfContours) {
-    const endPtsOfContours = [];
-
-    for (let i = 0; i < numberOfContours; i++) {
-      const endPt = glyf.getUint16(pos);
-      pos += 2;
-      endPtsOfContours.push(endPt);
-    }
-
-    const numberOfPt = endPtsOfContours[numberOfContours - 1] + 1;
-    const instructionLength = glyf.getUint16(pos);
-    pos += 2;
-    const instructions = new Uint8Array(glyf).slice(pos, pos + instructionLength);
-    pos += instructionLength;
-    const flags = [];
-
-    for (let i = 0; i < numberOfPt; pos++, i++) {
-      let flag = glyf.getUint8(pos);
-      flags.push(flag);
-
-      if (flag & REPEAT_FLAG) {
-        const count = glyf.getUint8(++pos);
-        flag ^= REPEAT_FLAG;
-
-        for (let m = 0; m < count; m++) {
-          flags.push(flag);
-        }
-
-        i += count;
-      }
-    }
-
-    const allXCoordinates = [];
-    let xCoordinates = [];
-    let yCoordinates = [];
-    let pointFlags = [];
-    const contours = [];
-    let endPtsOfContoursIndex = 0;
-    let lastCoordinate = 0;
+exports.getMetrics = exports.getFontBasicMetrics = void 0;
 
-    for (let i = 0; i < numberOfPt; i++) {
-      const flag = flags[i];
-
-      if (flag & X_SHORT_VECTOR) {
-        const x = glyf.getUint8(pos++);
-        lastCoordinate += flag & X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR ? x : -x;
-        xCoordinates.push(lastCoordinate);
-      } else if (flag & X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR) {
-        xCoordinates.push(lastCoordinate);
-      } else {
-        lastCoordinate += glyf.getInt16(pos);
-        pos += 2;
-        xCoordinates.push(lastCoordinate);
-      }
-
-      if (endPtsOfContours[endPtsOfContoursIndex] === i) {
-        endPtsOfContoursIndex++;
-        allXCoordinates.push(xCoordinates);
-        xCoordinates = [];
-      }
-    }
-
-    lastCoordinate = 0;
-    endPtsOfContoursIndex = 0;
-
-    for (let i = 0; i < numberOfPt; i++) {
-      const flag = flags[i];
-
-      if (flag & Y_SHORT_VECTOR) {
-        const y = glyf.getUint8(pos++);
-        lastCoordinate += flag & Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR ? y : -y;
-        yCoordinates.push(lastCoordinate);
-      } else if (flag & Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR) {
-        yCoordinates.push(lastCoordinate);
-      } else {
-        lastCoordinate += glyf.getInt16(pos);
-        pos += 2;
-        yCoordinates.push(lastCoordinate);
-      }
-
-      pointFlags.push(flag & ON_CURVE_POINT | flag & OVERLAP_SIMPLE);
-
-      if (endPtsOfContours[endPtsOfContoursIndex] === i) {
-        xCoordinates = allXCoordinates[endPtsOfContoursIndex];
-        endPtsOfContoursIndex++;
-        contours.push(new Contour({
-          flags: pointFlags,
-          xCoordinates,
-          yCoordinates
-        }));
-        yCoordinates = [];
-        pointFlags = [];
-      }
-    }
-
-    return new SimpleGlyph({
-      contours,
-      instructions
-    });
-  }
-
-  getSize() {
-    let size = this.contours.length * 2 + 2 + this.instructions.length;
-    let lastX = 0;
-    let lastY = 0;
-
-    for (const contour of this.contours) {
-      size += contour.flags.length;
-
-      for (let i = 0, ii = contour.xCoordinates.length; i < ii; i++) {
-        const x = contour.xCoordinates[i];
-        const y = contour.yCoordinates[i];
-        let abs = Math.abs(x - lastX);
-
-        if (abs > 255) {
-          size += 2;
-        } else if (abs > 0) {
-          size += 1;
-        }
-
-        lastX = x;
-        abs = Math.abs(y - lastY);
-
-        if (abs > 255) {
-          size += 2;
-        } else if (abs > 0) {
-          size += 1;
-        }
-
-        lastY = y;
-      }
-    }
-
-    return size;
-  }
-
-  write(pos, buf) {
-    const spos = pos;
-    const xCoordinates = [];
-    const yCoordinates = [];
-    const flags = [];
-    let lastX = 0;
-    let lastY = 0;
-
-    for (const contour of this.contours) {
-      for (let i = 0, ii = contour.xCoordinates.length; i < ii; i++) {
-        let flag = contour.flags[i];
-        const x = contour.xCoordinates[i];
-        let delta = x - lastX;
-
-        if (delta === 0) {
-          flag |= X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR;
-          xCoordinates.push(0);
-        } else {
-          const abs = Math.abs(delta);
-
-          if (abs <= 255) {
-            flag |= delta >= 0 ? X_SHORT_VECTOR | X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR : X_SHORT_VECTOR;
-            xCoordinates.push(abs);
-          } else {
-            xCoordinates.push(delta);
-          }
-        }
-
-        lastX = x;
-        const y = contour.yCoordinates[i];
-        delta = y - lastY;
-
-        if (delta === 0) {
-          flag |= Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR;
-          yCoordinates.push(0);
-        } else {
-          const abs = Math.abs(delta);
-
-          if (abs <= 255) {
-            flag |= delta >= 0 ? Y_SHORT_VECTOR | Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR : Y_SHORT_VECTOR;
-            yCoordinates.push(abs);
-          } else {
-            yCoordinates.push(delta);
-          }
-        }
-
-        lastY = y;
-        flags.push(flag);
-      }
-
-      buf.setUint16(pos, xCoordinates.length - 1);
-      pos += 2;
-    }
-
-    buf.setUint16(pos, this.instructions.length);
-    pos += 2;
-
-    if (this.instructions.length) {
-      new Uint8Array(buf.buffer, 0, buf.buffer.byteLength).set(this.instructions, pos);
-      pos += this.instructions.length;
-    }
-
-    for (const flag of flags) {
-      buf.setUint8(pos++, flag);
-    }
-
-    for (let i = 0, ii = xCoordinates.length; i < ii; i++) {
-      const x = xCoordinates[i];
-      const flag = flags[i];
-
-      if (flag & X_SHORT_VECTOR) {
-        buf.setUint8(pos++, x);
-      } else if (!(flag & X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR)) {
-        buf.setInt16(pos, x);
-        pos += 2;
-      }
-    }
-
-    for (let i = 0, ii = yCoordinates.length; i < ii; i++) {
-      const y = yCoordinates[i];
-      const flag = flags[i];
-
-      if (flag & Y_SHORT_VECTOR) {
-        buf.setUint8(pos++, y);
-      } else if (!(flag & Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR)) {
-        buf.setInt16(pos, y);
-        pos += 2;
-      }
-    }
-
-    return pos - spos;
-  }
-
-  scale(x, factor) {
-    for (const contour of this.contours) {
-      if (contour.xCoordinates.length === 0) {
-        continue;
-      }
-
-      for (let i = 0, ii = contour.xCoordinates.length; i < ii; i++) {
-        contour.xCoordinates[i] = Math.round(x + (contour.xCoordinates[i] - x) * factor);
-      }
-    }
-  }
-
-}
-
-class CompositeGlyph {
-  constructor({
-    flags,
-    glyphIndex,
-    argument1,
-    argument2,
-    transf,
-    instructions
-  }) {
-    this.flags = flags;
-    this.glyphIndex = glyphIndex;
-    this.argument1 = argument1;
-    this.argument2 = argument2;
-    this.transf = transf;
-    this.instructions = instructions;
-  }
-
-  static parse(pos, glyf) {
-    const spos = pos;
-    const transf = [];
-    let flags = glyf.getUint16(pos);
-    const glyphIndex = glyf.getUint16(pos + 2);
-    pos += 4;
-    let argument1, argument2;
-
-    if (flags & ARG_1_AND_2_ARE_WORDS) {
-      if (flags & ARGS_ARE_XY_VALUES) {
-        argument1 = glyf.getInt16(pos);
-        argument2 = glyf.getInt16(pos + 2);
-      } else {
-        argument1 = glyf.getUint16(pos);
-        argument2 = glyf.getUint16(pos + 2);
-      }
-
-      pos += 4;
-      flags ^= ARG_1_AND_2_ARE_WORDS;
-    } else {
-      argument1 = glyf.getUint8(pos);
-      argument2 = glyf.getUint8(pos + 1);
-
-      if (flags & ARGS_ARE_XY_VALUES) {
-        const abs1 = argument1 & 0x7f;
-        argument1 = argument1 & 0x80 ? -abs1 : abs1;
-        const abs2 = argument2 & 0x7f;
-        argument2 = argument2 & 0x80 ? -abs2 : abs2;
-      }
-
-      pos += 2;
-    }
-
-    if (flags & WE_HAVE_A_SCALE) {
-      transf.push(glyf.getUint16(pos));
-      pos += 2;
-    } else if (flags & WE_HAVE_AN_X_AND_Y_SCALE) {
-      transf.push(glyf.getUint16(pos), glyf.getUint16(pos + 2));
-      pos += 4;
-    } else if (flags & WE_HAVE_A_TWO_BY_TWO) {
-      transf.push(glyf.getUint16(pos), glyf.getUint16(pos + 2), glyf.getUint16(pos + 4), glyf.getUint16(pos 
+ 6));
-      pos += 8;
-    }
-
-    let instructions = null;
-
-    if (flags & WE_HAVE_INSTRUCTIONS) {
-      const instructionLength = glyf.getUint16(pos);
-      pos += 2;
-      instructions = new Uint8Array(glyf).slice(pos, pos + instructionLength);
-      pos += instructionLength;
-    }
-
-    return [pos - spos, new CompositeGlyph({
-      flags,
-      glyphIndex,
-      argument1,
-      argument2,
-      transf,
-      instructions
-    })];
-  }
-
-  getSize() {
-    let size = 2 + 2 + this.transf.length * 2;
-
-    if (this.flags & WE_HAVE_INSTRUCTIONS) {
-      size += 2 + this.instructions.length;
-    }
-
-    size += 2;
-
-    if (this.flags & 2) {
-      if (!(this.argument1 >= -128 && this.argument1 <= 127 && this.argument2 >= -128 && this.argument2 <= 
127)) {
-        size += 2;
-      }
-    } else {
-      if (!(this.argument1 >= 0 && this.argument1 <= 255 && this.argument2 >= 0 && this.argument2 <= 255)) {
-        size += 2;
-      }
-    }
-
-    return size;
-  }
-
-  write(pos, buf) {
-    const spos = pos;
-
-    if (this.flags & ARGS_ARE_XY_VALUES) {
-      if (!(this.argument1 >= -128 && this.argument1 <= 127 && this.argument2 >= -128 && this.argument2 <= 
127)) {
-        this.flags |= ARG_1_AND_2_ARE_WORDS;
-      }
-    } else {
-      if (!(this.argument1 >= 0 && this.argument1 <= 255 && this.argument2 >= 0 && this.argument2 <= 255)) {
-        this.flags |= ARG_1_AND_2_ARE_WORDS;
-      }
-    }
-
-    buf.setUint16(pos, this.flags);
-    buf.setUint16(pos + 2, this.glyphIndex);
-    pos += 4;
-
-    if (this.flags & ARG_1_AND_2_ARE_WORDS) {
-      if (this.flags & ARGS_ARE_XY_VALUES) {
-        buf.setInt16(pos, this.argument1);
-        buf.setInt16(pos + 2, this.argument2);
-      } else {
-        buf.setUint16(pos, this.argument1);
-        buf.setUint16(pos + 2, this.argument2);
-      }
-
-      pos += 4;
-    } else {
-      buf.setUint8(pos, this.argument1);
-      buf.setUint8(pos + 1, this.argument2);
-      pos += 2;
-    }
-
-    if (this.flags & WE_HAVE_INSTRUCTIONS) {
-      buf.setUint16(pos, this.instructions.length);
-      pos += 2;
-
-      if (this.instructions.length) {
-        new Uint8Array(buf.buffer, 0, buf.buffer.byteLength).set(this.instructions, pos);
-        pos += this.instructions.length;
-      }
-    }
-
-    return pos - spos;
-  }
-
-  scale(x, factor) {}
-
-}
-
-/***/ }),
-/* 52 */
-/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
-
-
-
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.OpenTypeFileBuilder = void 0;
-
-var _core_utils = __w_pdfjs_require__(9);
-
-var _util = __w_pdfjs_require__(2);
-
-function writeInt16(dest, offset, num) {
-  dest[offset] = num >> 8 & 0xff;
-  dest[offset + 1] = num & 0xff;
-}
-
-function writeInt32(dest, offset, num) {
-  dest[offset] = num >> 24 & 0xff;
-  dest[offset + 1] = num >> 16 & 0xff;
-  dest[offset + 2] = num >> 8 & 0xff;
-  dest[offset + 3] = num & 0xff;
-}
-
-function writeData(dest, offset, data) {
-  if (data instanceof Uint8Array) {
-    dest.set(data, offset);
-  } else if (typeof data === "string") {
-    for (let i = 0, ii = data.length; i < ii; i++) {
-      dest[offset++] = data.charCodeAt(i) & 0xff;
-    }
-  } else {
-    for (let i = 0, ii = data.length; i < ii; i++) {
-      dest[offset++] = data[i] & 0xff;
-    }
-  }
-}
-
-const OTF_HEADER_SIZE = 12;
-const OTF_TABLE_ENTRY_SIZE = 16;
-
-class OpenTypeFileBuilder {
-  constructor(sfnt) {
-    this.sfnt = sfnt;
-    this.tables = Object.create(null);
-  }
-
-  static getSearchParams(entriesCount, entrySize) {
-    let maxPower2 = 1,
-        log2 = 0;
-
-    while ((maxPower2 ^ entriesCount) > maxPower2) {
-      maxPower2 <<= 1;
-      log2++;
-    }
-
-    const searchRange = maxPower2 * entrySize;
-    return {
-      range: searchRange,
-      entry: log2,
-      rangeShift: entrySize * entriesCount - searchRange
-    };
-  }
-
-  toArray() {
-    let sfnt = this.sfnt;
-    const tables = this.tables;
-    const tablesNames = Object.keys(tables);
-    tablesNames.sort();
-    const numTables = tablesNames.length;
-    let i, j, jj, table, tableName;
-    let offset = OTF_HEADER_SIZE + numTables * OTF_TABLE_ENTRY_SIZE;
-    const tableOffsets = [offset];
-
-    for (i = 0; i < numTables; i++) {
-      table = tables[tablesNames[i]];
-      const paddedLength = (table.length + 3 & ~3) >>> 0;
-      offset += paddedLength;
-      tableOffsets.push(offset);
-    }
-
-    const file = new Uint8Array(offset);
-
-    for (i = 0; i < numTables; i++) {
-      table = tables[tablesNames[i]];
-      writeData(file, tableOffsets[i], table);
-    }
-
-    if (sfnt === "true") {
-      sfnt = (0, _util.string32)(0x00010000);
-    }
-
-    file[0] = sfnt.charCodeAt(0) & 0xff;
-    file[1] = sfnt.charCodeAt(1) & 0xff;
-    file[2] = sfnt.charCodeAt(2) & 0xff;
-    file[3] = sfnt.charCodeAt(3) & 0xff;
-    writeInt16(file, 4, numTables);
-    const searchParams = OpenTypeFileBuilder.getSearchParams(numTables, 16);
-    writeInt16(file, 6, searchParams.range);
-    writeInt16(file, 8, searchParams.entry);
-    writeInt16(file, 10, searchParams.rangeShift);
-    offset = OTF_HEADER_SIZE;
-
-    for (i = 0; i < numTables; i++) {
-      tableName = tablesNames[i];
-      file[offset] = tableName.charCodeAt(0) & 0xff;
-      file[offset + 1] = tableName.charCodeAt(1) & 0xff;
-      file[offset + 2] = tableName.charCodeAt(2) & 0xff;
-      file[offset + 3] = tableName.charCodeAt(3) & 0xff;
-      let checksum = 0;
-
-      for (j = tableOffsets[i], jj = tableOffsets[i + 1]; j < jj; j += 4) {
-        const quad = (0, _core_utils.readUint32)(file, j);
-        checksum = checksum + quad >>> 0;
-      }
-
-      writeInt32(file, offset + 4, checksum);
-      writeInt32(file, offset + 8, tableOffsets[i]);
-      writeInt32(file, offset + 12, tables[tableName].length);
-      offset += OTF_TABLE_ENTRY_SIZE;
-    }
-
-    return file;
-  }
-
-  addTable(tag, data) {
-    if (tag in this.tables) {
-      throw new Error("Table " + tag + " already exists");
-    }
-
-    this.tables[tag] = data;
-  }
-
-}
-
-exports.OpenTypeFileBuilder = OpenTypeFileBuilder;
-
-/***/ }),
-/* 53 */
-/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
-
-
-
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.Type1Font = void 0;
-
-var _cff_parser = __w_pdfjs_require__(45);
-
-var _fonts_utils = __w_pdfjs_require__(18);
-
-var _core_utils = __w_pdfjs_require__(9);
-
-var _stream = __w_pdfjs_require__(10);
-
-var _type1_parser = __w_pdfjs_require__(54);
-
-var _util = __w_pdfjs_require__(2);
-
-function findBlock(streamBytes, signature, startIndex) {
-  const streamBytesLength = streamBytes.length;
-  const signatureLength = signature.length;
-  const scanLength = streamBytesLength - signatureLength;
-  let i = startIndex,
-      found = false;
-
-  while (i < scanLength) {
-    let j = 0;
-
-    while (j < signatureLength && streamBytes[i + j] === signature[j]) {
-      j++;
-    }
-
-    if (j >= signatureLength) {
-      i += j;
-
-      while (i < streamBytesLength && (0, _core_utils.isWhiteSpace)(streamBytes[i])) {
-        i++;
-      }
-
-      found = true;
-      break;
-    }
-
-    i++;
-  }
-
-  return {
-    found,
-    length: i
-  };
-}
-
-function getHeaderBlock(stream, suggestedLength) {
-  const EEXEC_SIGNATURE = [0x65, 0x65, 0x78, 0x65, 0x63];
-  const streamStartPos = stream.pos;
-  let headerBytes, headerBytesLength, block;
-
-  try {
-    headerBytes = stream.getBytes(suggestedLength);
-    headerBytesLength = headerBytes.length;
-  } catch (ex) {}
-
-  if (headerBytesLength === suggestedLength) {
-    block = findBlock(headerBytes, EEXEC_SIGNATURE, suggestedLength - 2 * EEXEC_SIGNATURE.length);
-
-    if (block.found && block.length === suggestedLength) {
-      return {
-        stream: new _stream.Stream(headerBytes),
-        length: suggestedLength
-      };
-    }
-  }
-
-  (0, _util.warn)('Invalid "Length1" property in Type1 font -- trying to recover.');
-  stream.pos = streamStartPos;
-  const SCAN_BLOCK_LENGTH = 2048;
-  let actualLength;
-
-  while (true) {
-    const scanBytes = stream.peekBytes(SCAN_BLOCK_LENGTH);
-    block = findBlock(scanBytes, EEXEC_SIGNATURE, 0);
-
-    if (block.length === 0) {
-      break;
-    }
-
-    stream.pos += block.length;
-
-    if (block.found) {
-      actualLength = stream.pos - streamStartPos;
-      break;
-    }
-  }
-
-  stream.pos = streamStartPos;
-
-  if (actualLength) {
-    return {
-      stream: new _stream.Stream(stream.getBytes(actualLength)),
-      length: actualLength
-    };
-  }
-
-  (0, _util.warn)('Unable to recover "Length1" property in Type1 font -- using as is.');
-  return {
-    stream: new _stream.Stream(stream.getBytes(suggestedLength)),
-    length: suggestedLength
-  };
-}
-
-function getEexecBlock(stream, suggestedLength) {
-  const eexecBytes = stream.getBytes();
-  return {
-    stream: new _stream.Stream(eexecBytes),
-    length: eexecBytes.length
-  };
-}
-
-class Type1Font {
-  constructor(name, file, properties) {
-    const PFB_HEADER_SIZE = 6;
-    let headerBlockLength = properties.length1;
-    let eexecBlockLength = properties.length2;
-    let pfbHeader = file.peekBytes(PFB_HEADER_SIZE);
-    const pfbHeaderPresent = pfbHeader[0] === 0x80 && pfbHeader[1] === 0x01;
-
-    if (pfbHeaderPresent) {
-      file.skip(PFB_HEADER_SIZE);
-      headerBlockLength = pfbHeader[5] << 24 | pfbHeader[4] << 16 | pfbHeader[3] << 8 | pfbHeader[2];
-    }
-
-    const headerBlock = getHeaderBlock(file, headerBlockLength);
-    const headerBlockParser = new _type1_parser.Type1Parser(headerBlock.stream, false, 
_fonts_utils.SEAC_ANALYSIS_ENABLED);
-    headerBlockParser.extractFontHeader(properties);
-
-    if (pfbHeaderPresent) {
-      pfbHeader = file.getBytes(PFB_HEADER_SIZE);
-      eexecBlockLength = pfbHeader[5] << 24 | pfbHeader[4] << 16 | pfbHeader[3] << 8 | pfbHeader[2];
-    }
-
-    const eexecBlock = getEexecBlock(file, eexecBlockLength);
-    const eexecBlockParser = new _type1_parser.Type1Parser(eexecBlock.stream, true, 
_fonts_utils.SEAC_ANALYSIS_ENABLED);
-    const data = eexecBlockParser.extractFontProgram(properties);
-
-    for (const key in data.properties) {
-      properties[key] = data.properties[key];
-    }
-
-    const charstrings = data.charstrings;
-    const type2Charstrings = this.getType2Charstrings(charstrings);
-    const subrs = this.getType2Subrs(data.subrs);
-    this.charstrings = charstrings;
-    this.data = this.wrap(name, type2Charstrings, this.charstrings, subrs, properties);
-    this.seacs = this.getSeacs(data.charstrings);
-  }
-
-  get numGlyphs() {
-    return this.charstrings.length + 1;
-  }
-
-  getCharset() {
-    const charset = [".notdef"];
-    const charstrings = this.charstrings;
-
-    for (let glyphId = 0; glyphId < charstrings.length; glyphId++) {
-      charset.push(charstrings[glyphId].glyphName);
-    }
-
-    return charset;
-  }
-
-  getGlyphMapping(properties) {
-    const charstrings = this.charstrings;
-
-    if (properties.composite) {
-      const charCodeToGlyphId = Object.create(null);
-
-      for (let glyphId = 0, charstringsLen = charstrings.length; glyphId < charstringsLen; glyphId++) {
-        const charCode = properties.cMap.charCodeOf(glyphId);
-        charCodeToGlyphId[charCode] = glyphId + 1;
-      }
-
-      return charCodeToGlyphId;
-    }
-
-    const glyphNames = [".notdef"];
-    let builtInEncoding, glyphId;
-
-    for (glyphId = 0; glyphId < charstrings.length; glyphId++) {
-      glyphNames.push(charstrings[glyphId].glyphName);
-    }
-
-    const encoding = properties.builtInEncoding;
-
-    if (encoding) {
-      builtInEncoding = Object.create(null);
-
-      for (const charCode in encoding) {
-        glyphId = glyphNames.indexOf(encoding[charCode]);
-
-        if (glyphId >= 0) {
-          builtInEncoding[charCode] = glyphId;
-        }
-      }
-    }
-
-    return (0, _fonts_utils.type1FontGlyphMapping)(properties, builtInEncoding, glyphNames);
-  }
-
-  hasGlyphId(id) {
-    if (id < 0 || id >= this.numGlyphs) {
-      return false;
-    }
-
-    if (id === 0) {
-      return true;
-    }
-
-    const glyph = this.charstrings[id - 1];
-    return glyph.charstring.length > 0;
-  }
-
-  getSeacs(charstrings) {
-    const seacMap = [];
-
-    for (let i = 0, ii = charstrings.length; i < ii; i++) {
-      const charstring = charstrings[i];
-
-      if (charstring.seac) {
-        seacMap[i + 1] = charstring.seac;
-      }
-    }
-
-    return seacMap;
-  }
-
-  getType2Charstrings(type1Charstrings) {
-    const type2Charstrings = [];
-
-    for (let i = 0, ii = type1Charstrings.length; i < ii; i++) {
-      type2Charstrings.push(type1Charstrings[i].charstring);
-    }
-
-    return type2Charstrings;
-  }
-
-  getType2Subrs(type1Subrs) {
-    let bias = 0;
-    const count = type1Subrs.length;
-
-    if (count < 1133) {
-      bias = 107;
-    } else if (count < 33769) {
-      bias = 1131;
-    } else {
-      bias = 32768;
-    }
-
-    const type2Subrs = [];
-    let i;
-
-    for (i = 0; i < bias; i++) {
-      type2Subrs.push([0x0b]);
-    }
-
-    for (i = 0; i < count; i++) {
-      type2Subrs.push(type1Subrs[i]);
-    }
-
-    return type2Subrs;
-  }
-
-  wrap(name, glyphs, charstrings, subrs, properties) {
-    const cff = new _cff_parser.CFF();
-    cff.header = new _cff_parser.CFFHeader(1, 0, 4, 4);
-    cff.names = [name];
-    const topDict = new _cff_parser.CFFTopDict();
-    topDict.setByName("version", 391);
-    topDict.setByName("Notice", 392);
-    topDict.setByName("FullName", 393);
-    topDict.setByName("FamilyName", 394);
-    topDict.setByName("Weight", 395);
-    topDict.setByName("Encoding", null);
-    topDict.setByName("FontMatrix", properties.fontMatrix);
-    topDict.setByName("FontBBox", properties.bbox);
-    topDict.setByName("charset", null);
-    topDict.setByName("CharStrings", null);
-    topDict.setByName("Private", null);
-    cff.topDict = topDict;
-    const strings = new _cff_parser.CFFStrings();
-    strings.add("Version 0.11");
-    strings.add("See original notice");
-    strings.add(name);
-    strings.add(name);
-    strings.add("Medium");
-    cff.strings = strings;
-    cff.globalSubrIndex = new _cff_parser.CFFIndex();
-    const count = glyphs.length;
-    const charsetArray = [".notdef"];
-    let i, ii;
-
-    for (i = 0; i < count; i++) {
-      const glyphName = charstrings[i].glyphName;
-
-      const index = _cff_parser.CFFStandardStrings.indexOf(glyphName);
-
-      if (index === -1) {
-        strings.add(glyphName);
-      }
-
-      charsetArray.push(glyphName);
-    }
-
-    cff.charset = new _cff_parser.CFFCharset(false, 0, charsetArray);
-    const charStringsIndex = new _cff_parser.CFFIndex();
-    charStringsIndex.add([0x8b, 0x0e]);
-
-    for (i = 0; i < count; i++) {
-      charStringsIndex.add(glyphs[i]);
-    }
-
-    cff.charStrings = charStringsIndex;
-    const privateDict = new _cff_parser.CFFPrivateDict();
-    privateDict.setByName("Subrs", null);
-    const fields = ["BlueValues", "OtherBlues", "FamilyBlues", "FamilyOtherBlues", "StemSnapH", "StemSnapV", 
"BlueShift", "BlueFuzz", "BlueScale", "LanguageGroup", "ExpansionFactor", "ForceBold", "StdHW", "StdVW"];
-
-    for (i = 0, ii = fields.length; i < ii; i++) {
-      const field = fields[i];
-
-      if (!(field in properties.privateData)) {
-        continue;
-      }
-
-      const value = properties.privateData[field];
-
-      if (Array.isArray(value)) {
-        for (let j = value.length - 1; j > 0; j--) {
-          value[j] -= value[j - 1];
-        }
-      }
-
-      privateDict.setByName(field, value);
-    }
-
-    cff.topDict.privateDict = privateDict;
-    const subrIndex = new _cff_parser.CFFIndex();
-
-    for (i = 0, ii = subrs.length; i < ii; i++) {
-      subrIndex.add(subrs[i]);
-    }
-
-    privateDict.subrsIndex = subrIndex;
-    const compiler = new _cff_parser.CFFCompiler(cff);
-    return compiler.compile();
-  }
-
-}
-
-exports.Type1Font = Type1Font;
-
-/***/ }),
-/* 54 */
-/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
-
-
-
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.Type1Parser = void 0;
-
-var _encodings = __w_pdfjs_require__(19);
-
-var _core_utils = __w_pdfjs_require__(9);
-
-var _stream = __w_pdfjs_require__(10);
-
-var _util = __w_pdfjs_require__(2);
-
-const HINTING_ENABLED = false;
-
-const Type1CharString = function Type1CharStringClosure() {
-  const COMMAND_MAP = {
-    hstem: [1],
-    vstem: [3],
-    vmoveto: [4],
-    rlineto: [5],
-    hlineto: [6],
-    vlineto: [7],
-    rrcurveto: [8],
-    callsubr: [10],
-    flex: [12, 35],
-    drop: [12, 18],
-    endchar: [14],
-    rmoveto: [21],
-    hmoveto: [22],
-    vhcurveto: [30],
-    hvcurveto: [31]
-  };
-
-  class Type1CharString {
-    constructor() {
-      this.width = 0;
-      this.lsb = 0;
-      this.flexing = false;
-      this.output = [];
-      this.stack = [];
-    }
-
-    convert(encoded, subrs, seacAnalysisEnabled) {
-      const count = encoded.length;
-      let error = false;
-      let wx, sbx, subrNumber;
-
-      for (let i = 0; i < count; i++) {
-        let value = encoded[i];
-
-        if (value < 32) {
-          if (value === 12) {
-            value = (value << 8) + encoded[++i];
-          }
-
-          switch (value) {
-            case 1:
-              if (!HINTING_ENABLED) {
-                this.stack = [];
-                break;
-              }
-
-              error = this.executeCommand(2, COMMAND_MAP.hstem);
-              break;
-
-            case 3:
-              if (!HINTING_ENABLED) {
-                this.stack = [];
-                break;
-              }
-
-              error = this.executeCommand(2, COMMAND_MAP.vstem);
-              break;
-
-            case 4:
-              if (this.flexing) {
-                if (this.stack.length < 1) {
-                  error = true;
-                  break;
-                }
-
-                const dy = this.stack.pop();
-                this.stack.push(0, dy);
-                break;
-              }
-
-              error = this.executeCommand(1, COMMAND_MAP.vmoveto);
-              break;
-
-            case 5:
-              error = this.executeCommand(2, COMMAND_MAP.rlineto);
-              break;
-
-            case 6:
-              error = this.executeCommand(1, COMMAND_MAP.hlineto);
-              break;
-
-            case 7:
-              error = this.executeCommand(1, COMMAND_MAP.vlineto);
-              break;
-
-            case 8:
-              error = this.executeCommand(6, COMMAND_MAP.rrcurveto);
-              break;
-
-            case 9:
-              this.stack = [];
-              break;
-
-            case 10:
-              if (this.stack.length < 1) {
-                error = true;
-                break;
-              }
-
-              subrNumber = this.stack.pop();
-
-              if (!subrs[subrNumber]) {
-                error = true;
-                break;
-              }
-
-              error = this.convert(subrs[subrNumber], subrs, seacAnalysisEnabled);
-              break;
-
-            case 11:
-              return error;
-
-            case 13:
-              if (this.stack.length < 2) {
-                error = true;
-                break;
-              }
-
-              wx = this.stack.pop();
-              sbx = this.stack.pop();
-              this.lsb = sbx;
-              this.width = wx;
-              this.stack.push(wx, sbx);
-              error = this.executeCommand(2, COMMAND_MAP.hmoveto);
-              break;
-
-            case 14:
-              this.output.push(COMMAND_MAP.endchar[0]);
-              break;
-
-            case 21:
-              if (this.flexing) {
-                break;
-              }
-
-              error = this.executeCommand(2, COMMAND_MAP.rmoveto);
-              break;
-
-            case 22:
-              if (this.flexing) {
-                this.stack.push(0);
-                break;
-              }
-
-              error = this.executeCommand(1, COMMAND_MAP.hmoveto);
-              break;
-
-            case 30:
-              error = this.executeCommand(4, COMMAND_MAP.vhcurveto);
-              break;
-
-            case 31:
-              error = this.executeCommand(4, COMMAND_MAP.hvcurveto);
-              break;
-
-            case (12 << 8) + 0:
-              this.stack = [];
-              break;
-
-            case (12 << 8) + 1:
-              if (!HINTING_ENABLED) {
-                this.stack = [];
-                break;
-              }
-
-              error = this.executeCommand(2, COMMAND_MAP.vstem);
-              break;
-
-            case (12 << 8) + 2:
-              if (!HINTING_ENABLED) {
-                this.stack = [];
-                break;
-              }
-
-              error = this.executeCommand(2, COMMAND_MAP.hstem);
-              break;
-
-            case (12 << 8) + 6:
-              if (seacAnalysisEnabled) {
-                const asb = this.stack[this.stack.length - 5];
-                this.seac = this.stack.splice(-4, 4);
-                this.seac[0] += this.lsb - asb;
-                error = this.executeCommand(0, COMMAND_MAP.endchar);
-              } else {
-                error = this.executeCommand(4, COMMAND_MAP.endchar);
-              }
-
-              break;
-
-            case (12 << 8) + 7:
-              if (this.stack.length < 4) {
-                error = true;
-                break;
-              }
-
-              this.stack.pop();
-              wx = this.stack.pop();
-              const sby = this.stack.pop();
-              sbx = this.stack.pop();
-              this.lsb = sbx;
-              this.width = wx;
-              this.stack.push(wx, sbx, sby);
-              error = this.executeCommand(3, COMMAND_MAP.rmoveto);
-              break;
-
-            case (12 << 8) + 12:
-              if (this.stack.length < 2) {
-                error = true;
-                break;
-              }
-
-              const num2 = this.stack.pop();
-              const num1 = this.stack.pop();
-              this.stack.push(num1 / num2);
-              break;
-
-            case (12 << 8) + 16:
-              if (this.stack.length < 2) {
-                error = true;
-                break;
-              }
-
-              subrNumber = this.stack.pop();
-              const numArgs = this.stack.pop();
-
-              if (subrNumber === 0 && numArgs === 3) {
-                const flexArgs = this.stack.splice(this.stack.length - 17, 17);
-                this.stack.push(flexArgs[2] + flexArgs[0], flexArgs[3] + flexArgs[1], flexArgs[4], 
flexArgs[5], flexArgs[6], flexArgs[7], flexArgs[8], flexArgs[9], flexArgs[10], flexArgs[11], flexArgs[12], 
flexArgs[13], flexArgs[14]);
-                error = this.executeCommand(13, COMMAND_MAP.flex, true);
-                this.flexing = false;
-                this.stack.push(flexArgs[15], flexArgs[16]);
-              } else if (subrNumber === 1 && numArgs === 0) {
-                this.flexing = true;
-              }
-
-              break;
-
-            case (12 << 8) + 17:
-              break;
-
-            case (12 << 8) + 33:
-              this.stack = [];
-              break;
-
-            default:
-              (0, _util.warn)('Unknown type 1 charstring command of "' + value + '"');
-              break;
-          }
-
-          if (error) {
-            break;
-          }
-
-          continue;
-        } else if (value <= 246) {
-          value -= 139;
-        } else if (value <= 250) {
-          value = (value - 247) * 256 + encoded[++i] + 108;
-        } else if (value <= 254) {
-          value = -((value - 251) * 256) - encoded[++i] - 108;
-        } else {
-          value = (encoded[++i] & 0xff) << 24 | (encoded[++i] & 0xff) << 16 | (encoded[++i] & 0xff) << 8 | 
(encoded[++i] & 0xff) << 0;
-        }
-
-        this.stack.push(value);
-      }
-
-      return error;
-    }
-
-    executeCommand(howManyArgs, command, keepStack) {
-      const stackLength = this.stack.length;
-
-      if (howManyArgs > stackLength) {
-        return true;
-      }
-
-      const start = stackLength - howManyArgs;
-
-      for (let i = start; i < stackLength; i++) {
-        let value = this.stack[i];
-
-        if (Number.isInteger(value)) {
-          this.output.push(28, value >> 8 & 0xff, value & 0xff);
-        } else {
-          value = 65536 * value | 0;
-          this.output.push(255, value >> 24 & 0xff, value >> 16 & 0xff, value >> 8 & 0xff, value & 0xff);
-        }
-      }
-
-      this.output.push.apply(this.output, command);
-
-      if (keepStack) {
-        this.stack.splice(start, howManyArgs);
-      } else {
-        this.stack.length = 0;
-      }
-
-      return false;
-    }
-
-  }
-
-  return Type1CharString;
-}();
-
-const Type1Parser = function Type1ParserClosure() {
-  const EEXEC_ENCRYPT_KEY = 55665;
-  const CHAR_STRS_ENCRYPT_KEY = 4330;
-
-  function isHexDigit(code) {
-    return code >= 48 && code <= 57 || code >= 65 && code <= 70 || code >= 97 && code <= 102;
-  }
-
-  function decrypt(data, key, discardNumber) {
-    if (discardNumber >= data.length) {
-      return new Uint8Array(0);
-    }
-
-    const c1 = 52845,
-          c2 = 22719;
-    let r = key | 0,
-        i,
-        j;
-
-    for (i = 0; i < discardNumber; i++) {
-      r = (data[i] + r) * c1 + c2 & (1 << 16) - 1;
-    }
-
-    const count = data.length - discardNumber;
-    const decrypted = new Uint8Array(count);
-
-    for (i = discardNumber, j = 0; j < count; i++, j++) {
-      const value = data[i];
-      decrypted[j] = value ^ r >> 8;
-      r = (value + r) * c1 + c2 & (1 << 16) - 1;
-    }
-
-    return decrypted;
-  }
-
-  function decryptAscii(data, key, discardNumber) {
-    const c1 = 52845,
-          c2 = 22719;
-    let r = key | 0;
-    const count = data.length,
-          maybeLength = count >>> 1;
-    const decrypted = new Uint8Array(maybeLength);
-    let i, j;
-
-    for (i = 0, j = 0; i < count; i++) {
-      const digit1 = data[i];
-
-      if (!isHexDigit(digit1)) {
-        continue;
-      }
-
-      i++;
-      let digit2;
-
-      while (i < count && !isHexDigit(digit2 = data[i])) {
-        i++;
-      }
-
-      if (i < count) {
-        const value = parseInt(String.fromCharCode(digit1, digit2), 16);
-        decrypted[j++] = value ^ r >> 8;
-        r = (value + r) * c1 + c2 & (1 << 16) - 1;
-      }
-    }
-
-    return decrypted.slice(discardNumber, j);
-  }
-
-  function isSpecial(c) {
-    return c === 0x2f || c === 0x5b || c === 0x5d || c === 0x7b || c === 0x7d || c === 0x28 || c === 0x29;
-  }
-
-  class Type1Parser {
-    constructor(stream, encrypted, seacAnalysisEnabled) {
-      if (encrypted) {
-        const data = stream.getBytes();
-        const isBinary = !((isHexDigit(data[0]) || (0, _core_utils.isWhiteSpace)(data[0])) && 
isHexDigit(data[1]) && isHexDigit(data[2]) && isHexDigit(data[3]) && isHexDigit(data[4]) && 
isHexDigit(data[5]) && isHexDigit(data[6]) && isHexDigit(data[7]));
-        stream = new _stream.Stream(isBinary ? decrypt(data, EEXEC_ENCRYPT_KEY, 4) : decryptAscii(data, 
EEXEC_ENCRYPT_KEY, 4));
-      }
-
-      this.seacAnalysisEnabled = !!seacAnalysisEnabled;
-      this.stream = stream;
-      this.nextChar();
-    }
-
-    readNumberArray() {
-      this.getToken();
-      const array = [];
-
-      while (true) {
-        const token = this.getToken();
-
-        if (token === null || token === "]" || token === "}") {
-          break;
-        }
-
-        array.push(parseFloat(token || 0));
-      }
-
-      return array;
-    }
-
-    readNumber() {
-      const token = this.getToken();
-      return parseFloat(token || 0);
-    }
-
-    readInt() {
-      const token = this.getToken();
-      return parseInt(token || 0, 10) | 0;
-    }
-
-    readBoolean() {
-      const token = this.getToken();
-      return token === "true" ? 1 : 0;
-    }
-
-    nextChar() {
-      return this.currentChar = this.stream.getByte();
-    }
-
-    getToken() {
-      let comment = false;
-      let ch = this.currentChar;
-
-      while (true) {
-        if (ch === -1) {
-          return null;
-        }
-
-        if (comment) {
-          if (ch === 0x0a || ch === 0x0d) {
-            comment = false;
-          }
-        } else if (ch === 0x25) {
-          comment = true;
-        } else if (!(0, _core_utils.isWhiteSpace)(ch)) {
-          break;
-        }
-
-        ch = this.nextChar();
-      }
-
-      if (isSpecial(ch)) {
-        this.nextChar();
-        return String.fromCharCode(ch);
-      }
-
-      let token = "";
-
-      do {
-        token += String.fromCharCode(ch);
-        ch = this.nextChar();
-      } while (ch >= 0 && !(0, _core_utils.isWhiteSpace)(ch) && !isSpecial(ch));
-
-      return token;
-    }
-
-    readCharStrings(bytes, lenIV) {
-      if (lenIV === -1) {
-        return bytes;
-      }
-
-      return decrypt(bytes, CHAR_STRS_ENCRYPT_KEY, lenIV);
-    }
-
-    extractFontProgram(properties) {
-      const stream = this.stream;
-      const subrs = [],
-            charstrings = [];
-      const privateData = Object.create(null);
-      privateData.lenIV = 4;
-      const program = {
-        subrs: [],
-        charstrings: [],
-        properties: {
-          privateData
-        }
-      };
-      let token, length, data, lenIV, encoded;
-
-      while ((token = this.getToken()) !== null) {
-        if (token !== "/") {
-          continue;
-        }
-
-        token = this.getToken();
-
-        switch (token) {
-          case "CharStrings":
-            this.getToken();
-            this.getToken();
-            this.getToken();
-            this.getToken();
-
-            while (true) {
-              token = this.getToken();
-
-              if (token === null || token === "end") {
-                break;
-              }
-
-              if (token !== "/") {
-                continue;
-              }
-
-              const glyph = this.getToken();
-              length = this.readInt();
-              this.getToken();
-              data = length > 0 ? stream.getBytes(length) : new Uint8Array(0);
-              lenIV = program.properties.privateData.lenIV;
-              encoded = this.readCharStrings(data, lenIV);
-              this.nextChar();
-              token = this.getToken();
-
-              if (token === "noaccess") {
-                this.getToken();
-              }
-
-              charstrings.push({
-                glyph,
-                encoded
-              });
-            }
-
-            break;
-
-          case "Subrs":
-            this.readInt();
-            this.getToken();
-
-            while (this.getToken() === "dup") {
-              const index = this.readInt();
-              length = this.readInt();
-              this.getToken();
-              data = length > 0 ? stream.getBytes(length) : new Uint8Array(0);
-              lenIV = program.properties.privateData.lenIV;
-              encoded = this.readCharStrings(data, lenIV);
-              this.nextChar();
-              token = this.getToken();
-
-              if (token === "noaccess") {
-                this.getToken();
-              }
-
-              subrs[index] = encoded;
-            }
-
-            break;
-
-          case "BlueValues":
-          case "OtherBlues":
-          case "FamilyBlues":
-          case "FamilyOtherBlues":
-            const blueArray = this.readNumberArray();
-
-            if (blueArray.length > 0 && blueArray.length % 2 === 0 && HINTING_ENABLED) {
-              program.properties.privateData[token] = blueArray;
-            }
-
-            break;
-
-          case "StemSnapH":
-          case "StemSnapV":
-            program.properties.privateData[token] = this.readNumberArray();
-            break;
-
-          case "StdHW":
-          case "StdVW":
-            program.properties.privateData[token] = this.readNumberArray()[0];
-            break;
-
-          case "BlueShift":
-          case "lenIV":
-          case "BlueFuzz":
-          case "BlueScale":
-          case "LanguageGroup":
-          case "ExpansionFactor":
-            program.properties.privateData[token] = this.readNumber();
-            break;
-
-          case "ForceBold":
-            program.properties.privateData[token] = this.readBoolean();
-            break;
-        }
-      }
-
-      for (let i = 0; i < charstrings.length; i++) {
-        const glyph = charstrings[i].glyph;
-        encoded = charstrings[i].encoded;
-        const charString = new Type1CharString();
-        const error = charString.convert(encoded, subrs, this.seacAnalysisEnabled);
-        let output = charString.output;
-
-        if (error) {
-          output = [14];
-        }
-
-        const charStringObject = {
-          glyphName: glyph,
-          charstring: output,
-          width: charString.width,
-          lsb: charString.lsb,
-          seac: charString.seac
-        };
-
-        if (glyph === ".notdef") {
-          program.charstrings.unshift(charStringObject);
-        } else {
-          program.charstrings.push(charStringObject);
-        }
-
-        if (properties.builtInEncoding) {
-          const index = properties.builtInEncoding.indexOf(glyph);
-
-          if (index > -1 && properties.widths[index] === undefined && index >= properties.firstChar && index 
<= properties.lastChar) {
-            properties.widths[index] = charString.width;
-          }
-        }
-      }
-
-      return program;
-    }
-
-    extractFontHeader(properties) {
-      let token;
-
-      while ((token = this.getToken()) !== null) {
-        if (token !== "/") {
-          continue;
-        }
-
-        token = this.getToken();
-
-        switch (token) {
-          case "FontMatrix":
-            const matrix = this.readNumberArray();
-            properties.fontMatrix = matrix;
-            break;
-
-          case "Encoding":
-            const encodingArg = this.getToken();
-            let encoding;
-
-            if (!/^\d+$/.test(encodingArg)) {
-              encoding = (0, _encodings.getEncoding)(encodingArg);
-            } else {
-              encoding = [];
-              const size = parseInt(encodingArg, 10) | 0;
-              this.getToken();
-
-              for (let j = 0; j < size; j++) {
-                token = this.getToken();
-
-                while (token !== "dup" && token !== "def") {
-                  token = this.getToken();
-
-                  if (token === null) {
-                    return;
-                  }
-                }
-
-                if (token === "def") {
-                  break;
-                }
-
-                const index = this.readInt();
-                this.getToken();
-                const glyph = this.getToken();
-                encoding[index] = glyph;
-                this.getToken();
-              }
-            }
-
-            properties.builtInEncoding = encoding;
-            break;
-
-          case "FontBBox":
-            const fontBBox = this.readNumberArray();
-            properties.ascent = Math.max(fontBBox[3], fontBBox[1]);
-            properties.descent = Math.min(fontBBox[1], fontBBox[3]);
-            properties.ascentScaled = true;
-            break;
-        }
-      }
-    }
-
-  }
-
-  return Type1Parser;
-}();
-
-exports.Type1Parser = Type1Parser;
-
-/***/ }),
-/* 55 */
-/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
-
-
-
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.Pattern = void 0;
-exports.getTilingPatternIR = getTilingPatternIR;
-
-var _util = __w_pdfjs_require__(2);
-
-var _colorspace = __w_pdfjs_require__(24);
-
-var _primitives = __w_pdfjs_require__(5);
-
-var _core_utils = __w_pdfjs_require__(9);
-
-const ShadingType = {
-  FUNCTION_BASED: 1,
-  AXIAL: 2,
-  RADIAL: 3,
-  FREE_FORM_MESH: 4,
-  LATTICE_FORM_MESH: 5,
-  COONS_PATCH_MESH: 6,
-  TENSOR_PATCH_MESH: 7
-};
-
-class Pattern {
-  constructor() {
-    (0, _util.unreachable)("Cannot initialize Pattern.");
-  }
-
-  static parseShading(shading, xref, res, handler, pdfFunctionFactory, localColorSpaceCache) {
-    const dict = (0, _primitives.isStream)(shading) ? shading.dict : shading;
-    const type = dict.get("ShadingType");
-
-    try {
-      switch (type) {
-        case ShadingType.AXIAL:
-        case ShadingType.RADIAL:
-          return new RadialAxialShading(dict, xref, res, pdfFunctionFactory, localColorSpaceCache);
-
-        case ShadingType.FREE_FORM_MESH:
-        case ShadingType.LATTICE_FORM_MESH:
-        case ShadingType.COONS_PATCH_MESH:
-        case ShadingType.TENSOR_PATCH_MESH:
-          return new MeshShading(shading, xref, res, pdfFunctionFactory, localColorSpaceCache);
-
-        default:
-          throw new _util.FormatError("Unsupported ShadingType: " + type);
-      }
-    } catch (ex) {
-      if (ex instanceof _core_utils.MissingDataException) {
-        throw ex;
-      }
-
-      handler.send("UnsupportedFeature", {
-        featureId: _util.UNSUPPORTED_FEATURES.shadingPattern
-      });
-      (0, _util.warn)(ex);
-      return new DummyShading();
-    }
-  }
-
-}
-
-exports.Pattern = Pattern;
-
-class BaseShading {
-  static get SMALL_NUMBER() {
-    return (0, _util.shadow)(this, "SMALL_NUMBER", 1e-6);
-  }
-
-  constructor() {
-    if (this.constructor === BaseShading) {
-      (0, _util.unreachable)("Cannot initialize BaseShading.");
-    }
-  }
-
-  getIR() {
-    (0, _util.unreachable)("Abstract method `getIR` called.");
-  }
-
-}
-
-class RadialAxialShading extends BaseShading {
-  constructor(dict, xref, resources, pdfFunctionFactory, localColorSpaceCache) {
-    super();
-    this.coordsArr = dict.getArray("Coords");
-    this.shadingType = dict.get("ShadingType");
-
-    const cs = _colorspace.ColorSpace.parse({
-      cs: dict.getRaw("CS") || dict.getRaw("ColorSpace"),
-      xref,
-      resources,
-      pdfFunctionFactory,
-      localColorSpaceCache
-    });
-
-    const bbox = dict.getArray("BBox");
-
-    if (Array.isArray(bbox) && bbox.length === 4) {
-      this.bbox = _util.Util.normalizeRect(bbox);
-    } else {
-      this.bbox = null;
-    }
-
-    let t0 = 0.0,
-        t1 = 1.0;
-
-    if (dict.has("Domain")) {
-      const domainArr = dict.getArray("Domain");
-      t0 = domainArr[0];
-      t1 = domainArr[1];
-    }
-
-    let extendStart = false,
-        extendEnd = false;
-
-    if (dict.has("Extend")) {
-      const extendArr = dict.getArray("Extend");
-      extendStart = extendArr[0];
-      extendEnd = extendArr[1];
-    }
-
-    if (this.shadingType === ShadingType.RADIAL && (!extendStart || !extendEnd)) {
-      const [x1, y1, r1, x2, y2, r2] = this.coordsArr;
-      const distance = Math.hypot(x1 - x2, y1 - y2);
-
-      if (r1 <= r2 + distance && r2 <= r1 + distance) {
-        (0, _util.warn)("Unsupported radial gradient.");
-      }
-    }
-
-    this.extendStart = extendStart;
-    this.extendEnd = extendEnd;
-    const fnObj = dict.getRaw("Function");
-    const fn = pdfFunctionFactory.createFromArray(fnObj);
-    const NUMBER_OF_SAMPLES = 10;
-    const step = (t1 - t0) / NUMBER_OF_SAMPLES;
-    const colorStops = this.colorStops = [];
-
-    if (t0 >= t1 || step <= 0) {
-      (0, _util.info)("Bad shading domain.");
-      return;
-    }
-
-    const color = new Float32Array(cs.numComps),
-          ratio = new Float32Array(1);
-    let rgbColor;
-
-    for (let i = 0; i <= NUMBER_OF_SAMPLES; i++) {
-      ratio[0] = t0 + i * step;
-      fn(ratio, 0, color, 0);
-      rgbColor = cs.getRgb(color, 0);
-
-      const cssColor = _util.Util.makeHexColor(rgbColor[0], rgbColor[1], rgbColor[2]);
-
-      colorStops.push([i / NUMBER_OF_SAMPLES, cssColor]);
-    }
-
-    let background = "transparent";
-
-    if (dict.has("Background")) {
-      rgbColor = cs.getRgb(dict.get("Background"), 0);
-      background = _util.Util.makeHexColor(rgbColor[0], rgbColor[1], rgbColor[2]);
-    }
-
-    if (!extendStart) {
-      colorStops.unshift([0, background]);
-      colorStops[1][0] += BaseShading.SMALL_NUMBER;
-    }
-
-    if (!extendEnd) {
-      colorStops[colorStops.length - 1][0] -= BaseShading.SMALL_NUMBER;
-      colorStops.push([1, background]);
-    }
-
-    this.colorStops = colorStops;
-  }
-
-  getIR() {
-    const coordsArr = this.coordsArr;
-    const shadingType = this.shadingType;
-    let type, p0, p1, r0, r1;
-
-    if (shadingType === ShadingType.AXIAL) {
-      p0 = [coordsArr[0], coordsArr[1]];
-      p1 = [coordsArr[2], coordsArr[3]];
-      r0 = null;
-      r1 = null;
-      type = "axial";
-    } else if (shadingType === ShadingType.RADIAL) {
-      p0 = [coordsArr[0], coordsArr[1]];
-      p1 = [coordsArr[3], coordsArr[4]];
-      r0 = coordsArr[2];
-      r1 = coordsArr[5];
-      type = "radial";
-    } else {
-      (0, _util.unreachable)(`getPattern type unknown: ${shadingType}`);
-    }
-
-    return ["RadialAxial", type, this.bbox, this.colorStops, p0, p1, r0, r1];
-  }
-
-}
-
-class MeshStreamReader {
-  constructor(stream, context) {
-    this.stream = stream;
-    this.context = context;
-    this.buffer = 0;
-    this.bufferLength = 0;
-    const numComps = context.numComps;
-    this.tmpCompsBuf = new Float32Array(numComps);
-    const csNumComps = context.colorSpace.numComps;
-    this.tmpCsCompsBuf = context.colorFn ? new Float32Array(csNumComps) : this.tmpCompsBuf;
-  }
-
-  get hasData() {
-    if (this.stream.end) {
-      return this.stream.pos < this.stream.end;
-    }
-
-    if (this.bufferLength > 0) {
-      return true;
-    }
-
-    const nextByte = this.stream.getByte();
-
-    if (nextByte < 0) {
-      return false;
-    }
-
-    this.buffer = nextByte;
-    this.bufferLength = 8;
-    return true;
-  }
-
-  readBits(n) {
-    let buffer = this.buffer;
-    let bufferLength = this.bufferLength;
-
-    if (n === 32) {
-      if (bufferLength === 0) {
-        return (this.stream.getByte() << 24 | this.stream.getByte() << 16 | this.stream.getByte() << 8 | 
this.stream.getByte()) >>> 0;
-      }
-
-      buffer = buffer << 24 | this.stream.getByte() << 16 | this.stream.getByte() << 8 | 
this.stream.getByte();
-      const nextByte = this.stream.getByte();
-      this.buffer = nextByte & (1 << bufferLength) - 1;
-      return (buffer << 8 - bufferLength | (nextByte & 0xff) >> bufferLength) >>> 0;
-    }
-
-    if (n === 8 && bufferLength === 0) {
-      return this.stream.getByte();
-    }
-
-    while (bufferLength < n) {
-      buffer = buffer << 8 | this.stream.getByte();
-      bufferLength += 8;
-    }
-
-    bufferLength -= n;
-    this.bufferLength = bufferLength;
-    this.buffer = buffer & (1 << bufferLength) - 1;
-    return buffer >> bufferLength;
-  }
-
-  align() {
-    this.buffer = 0;
-    this.bufferLength = 0;
-  }
-
-  readFlag() {
-    return this.readBits(this.context.bitsPerFlag);
-  }
-
-  readCoordinate() {
-    const bitsPerCoordinate = this.context.bitsPerCoordinate;
-    const xi = this.readBits(bitsPerCoordinate);
-    const yi = this.readBits(bitsPerCoordinate);
-    const decode = this.context.decode;
-    const scale = bitsPerCoordinate < 32 ? 1 / ((1 << bitsPerCoordinate) - 1) : 2.3283064365386963e-10;
-    return [xi * scale * (decode[1] - decode[0]) + decode[0], yi * scale * (decode[3] - decode[2]) + 
decode[2]];
-  }
-
-  readComponents() {
-    const numComps = this.context.numComps;
-    const bitsPerComponent = this.context.bitsPerComponent;
-    const scale = bitsPerComponent < 32 ? 1 / ((1 << bitsPerComponent) - 1) : 2.3283064365386963e-10;
-    const decode = this.context.decode;
-    const components = this.tmpCompsBuf;
-
-    for (let i = 0, j = 4; i < numComps; i++, j += 2) {
-      const ci = this.readBits(bitsPerComponent);
-      components[i] = ci * scale * (decode[j + 1] - decode[j]) + decode[j];
-    }
-
-    const color = this.tmpCsCompsBuf;
-
-    if (this.context.colorFn) {
-      this.context.colorFn(components, 0, color, 0);
-    }
-
-    return this.context.colorSpace.getRgb(color, 0);
-  }
-
-}
-
-const getB = function getBClosure() {
-  function buildB(count) {
-    const lut = [];
-
-    for (let i = 0; i <= count; i++) {
-      const t = i / count,
-            t_ = 1 - t;
-      lut.push(new Float32Array([t_ * t_ * t_, 3 * t * t_ * t_, 3 * t * t * t_, t * t * t]));
-    }
-
-    return lut;
-  }
-
-  const cache = [];
-  return function (count) {
-    if (!cache[count]) {
-      cache[count] = buildB(count);
-    }
-
-    return cache[count];
-  };
-}();
-
-class MeshShading extends BaseShading {
-  static get MIN_SPLIT_PATCH_CHUNKS_AMOUNT() {
-    return (0, _util.shadow)(this, "MIN_SPLIT_PATCH_CHUNKS_AMOUNT", 3);
-  }
-
-  static get MAX_SPLIT_PATCH_CHUNKS_AMOUNT() {
-    return (0, _util.shadow)(this, "MAX_SPLIT_PATCH_CHUNKS_AMOUNT", 20);
-  }
-
-  static get TRIANGLE_DENSITY() {
-    return (0, _util.shadow)(this, "TRIANGLE_DENSITY", 20);
-  }
-
-  constructor(stream, xref, resources, pdfFunctionFactory, localColorSpaceCache) {
-    super();
-
-    if (!(0, _primitives.isStream)(stream)) {
-      throw new _util.FormatError("Mesh data is not a stream");
-    }
-
-    const dict = stream.dict;
-    this.shadingType = dict.get("ShadingType");
-    const bbox = dict.getArray("BBox");
-
-    if (Array.isArray(bbox) && bbox.length === 4) {
-      this.bbox = _util.Util.normalizeRect(bbox);
-    } else {
-      this.bbox = null;
-    }
-
-    const cs = _colorspace.ColorSpace.parse({
-      cs: dict.getRaw("CS") || dict.getRaw("ColorSpace"),
-      xref,
-      resources,
-      pdfFunctionFactory,
-      localColorSpaceCache
-    });
-
-    this.background = dict.has("Background") ? cs.getRgb(dict.get("Background"), 0) : null;
-    const fnObj = dict.getRaw("Function");
-    const fn = fnObj ? pdfFunctionFactory.createFromArray(fnObj) : null;
-    this.coords = [];
-    this.colors = [];
-    this.figures = [];
-    const decodeContext = {
-      bitsPerCoordinate: dict.get("BitsPerCoordinate"),
-      bitsPerComponent: dict.get("BitsPerComponent"),
-      bitsPerFlag: dict.get("BitsPerFlag"),
-      decode: dict.getArray("Decode"),
-      colorFn: fn,
-      colorSpace: cs,
-      numComps: fn ? 1 : cs.numComps
-    };
-    const reader = new MeshStreamReader(stream, decodeContext);
-    let patchMesh = false;
-
-    switch (this.shadingType) {
-      case ShadingType.FREE_FORM_MESH:
-        this._decodeType4Shading(reader);
-
-        break;
-
-      case ShadingType.LATTICE_FORM_MESH:
-        const verticesPerRow = dict.get("VerticesPerRow") | 0;
-
-        if (verticesPerRow < 2) {
-          throw new _util.FormatError("Invalid VerticesPerRow");
-        }
-
-        this._decodeType5Shading(reader, verticesPerRow);
-
-        break;
-
-      case ShadingType.COONS_PATCH_MESH:
-        this._decodeType6Shading(reader);
-
-        patchMesh = true;
-        break;
-
-      case ShadingType.TENSOR_PATCH_MESH:
-        this._decodeType7Shading(reader);
-
-        patchMesh = true;
-        break;
-
-      default:
-        (0, _util.unreachable)("Unsupported mesh type.");
-        break;
-    }
-
-    if (patchMesh) {
-      this._updateBounds();
-
-      for (let i = 0, ii = this.figures.length; i < ii; i++) {
-        this._buildFigureFromPatch(i);
-      }
-    }
-
-    this._updateBounds();
-
-    this._packData();
-  }
-
-  _decodeType4Shading(reader) {
-    const coords = this.coords;
-    const colors = this.colors;
-    const operators = [];
-    const ps = [];
-    let verticesLeft = 0;
-
-    while (reader.hasData) {
-      const f = reader.readFlag();
-      const coord = reader.readCoordinate();
-      const color = reader.readComponents();
-
-      if (verticesLeft === 0) {
-        if (!(0 <= f && f <= 2)) {
-          throw new _util.FormatError("Unknown type4 flag");
-        }
-
-        switch (f) {
-          case 0:
-            verticesLeft = 3;
-            break;
-
-          case 1:
-            ps.push(ps[ps.length - 2], ps[ps.length - 1]);
-            verticesLeft = 1;
-            break;
-
-          case 2:
-            ps.push(ps[ps.length - 3], ps[ps.length - 1]);
-            verticesLeft = 1;
-            break;
-        }
-
-        operators.push(f);
-      }
-
-      ps.push(coords.length);
-      coords.push(coord);
-      colors.push(color);
-      verticesLeft--;
-      reader.align();
-    }
-
-    this.figures.push({
-      type: "triangles",
-      coords: new Int32Array(ps),
-      colors: new Int32Array(ps)
-    });
-  }
-
-  _decodeType5Shading(reader, verticesPerRow) {
-    const coords = this.coords;
-    const colors = this.colors;
-    const ps = [];
-
-    while (reader.hasData) {
-      const coord = reader.readCoordinate();
-      const color = reader.readComponents();
-      ps.push(coords.length);
-      coords.push(coord);
-      colors.push(color);
-    }
-
-    this.figures.push({
-      type: "lattice",
-      coords: new Int32Array(ps),
-      colors: new Int32Array(ps),
-      verticesPerRow
-    });
-  }
-
-  _decodeType6Shading(reader) {
-    const coords = this.coords;
-    const colors = this.colors;
-    const ps = new Int32Array(16);
-    const cs = new Int32Array(4);
-
-    while (reader.hasData) {
-      const f = reader.readFlag();
-
-      if (!(0 <= f && f <= 3)) {
-        throw new _util.FormatError("Unknown type6 flag");
-      }
-
-      const pi = coords.length;
-
-      for (let i = 0, ii = f !== 0 ? 8 : 12; i < ii; i++) {
-        coords.push(reader.readCoordinate());
-      }
-
-      const ci = colors.length;
-
-      for (let i = 0, ii = f !== 0 ? 2 : 4; i < ii; i++) {
-        colors.push(reader.readComponents());
-      }
-
-      let tmp1, tmp2, tmp3, tmp4;
-
-      switch (f) {
-        case 0:
-          ps[12] = pi + 3;
-          ps[13] = pi + 4;
-          ps[14] = pi + 5;
-          ps[15] = pi + 6;
-          ps[8] = pi + 2;
-          ps[11] = pi + 7;
-          ps[4] = pi + 1;
-          ps[7] = pi + 8;
-          ps[0] = pi;
-          ps[1] = pi + 11;
-          ps[2] = pi + 10;
-          ps[3] = pi + 9;
-          cs[2] = ci + 1;
-          cs[3] = ci + 2;
-          cs[0] = ci;
-          cs[1] = ci + 3;
-          break;
-
-        case 1:
-          tmp1 = ps[12];
-          tmp2 = ps[13];
-          tmp3 = ps[14];
-          tmp4 = ps[15];
-          ps[12] = tmp4;
-          ps[13] = pi + 0;
-          ps[14] = pi + 1;
-          ps[15] = pi + 2;
-          ps[8] = tmp3;
-          ps[11] = pi + 3;
-          ps[4] = tmp2;
-          ps[7] = pi + 4;
-          ps[0] = tmp1;
-          ps[1] = pi + 7;
-          ps[2] = pi + 6;
-          ps[3] = pi + 5;
-          tmp1 = cs[2];
-          tmp2 = cs[3];
-          cs[2] = tmp2;
-          cs[3] = ci;
-          cs[0] = tmp1;
-          cs[1] = ci + 1;
-          break;
-
-        case 2:
-          tmp1 = ps[15];
-          tmp2 = ps[11];
-          ps[12] = ps[3];
-          ps[13] = pi + 0;
-          ps[14] = pi + 1;
-          ps[15] = pi + 2;
-          ps[8] = ps[7];
-          ps[11] = pi + 3;
-          ps[4] = tmp2;
-          ps[7] = pi + 4;
-          ps[0] = tmp1;
-          ps[1] = pi + 7;
-          ps[2] = pi + 6;
-          ps[3] = pi + 5;
-          tmp1 = cs[3];
-          cs[2] = cs[1];
-          cs[3] = ci;
-          cs[0] = tmp1;
-          cs[1] = ci + 1;
-          break;
-
-        case 3:
-          ps[12] = ps[0];
-          ps[13] = pi + 0;
-          ps[14] = pi + 1;
-          ps[15] = pi + 2;
-          ps[8] = ps[1];
-          ps[11] = pi + 3;
-          ps[4] = ps[2];
-          ps[7] = pi + 4;
-          ps[0] = ps[3];
-          ps[1] = pi + 7;
-          ps[2] = pi + 6;
-          ps[3] = pi + 5;
-          cs[2] = cs[0];
-          cs[3] = ci;
-          cs[0] = cs[1];
-          cs[1] = ci + 1;
-          break;
-      }
-
-      ps[5] = coords.length;
-      coords.push([(-4 * coords[ps[0]][0] - coords[ps[15]][0] + 6 * (coords[ps[4]][0] + coords[ps[1]][0]) - 
2 * (coords[ps[12]][0] + coords[ps[3]][0]) + 3 * (coords[ps[13]][0] + coords[ps[7]][0])) / 9, (-4 * 
coords[ps[0]][1] - coords[ps[15]][1] + 6 * (coords[ps[4]][1] + coords[ps[1]][1]) - 2 * (coords[ps[12]][1] + 
coords[ps[3]][1]) + 3 * (coords[ps[13]][1] + coords[ps[7]][1])) / 9]);
-      ps[6] = coords.length;
-      coords.push([(-4 * coords[ps[3]][0] - coords[ps[12]][0] + 6 * (coords[ps[2]][0] + coords[ps[7]][0]) - 
2 * (coords[ps[0]][0] + coords[ps[15]][0]) + 3 * (coords[ps[4]][0] + coords[ps[14]][0])) / 9, (-4 * 
coords[ps[3]][1] - coords[ps[12]][1] + 6 * (coords[ps[2]][1] + coords[ps[7]][1]) - 2 * (coords[ps[0]][1] + 
coords[ps[15]][1]) + 3 * (coords[ps[4]][1] + coords[ps[14]][1])) / 9]);
-      ps[9] = coords.length;
-      coords.push([(-4 * coords[ps[12]][0] - coords[ps[3]][0] + 6 * (coords[ps[8]][0] + coords[ps[13]][0]) - 
2 * (coords[ps[0]][0] + coords[ps[15]][0]) + 3 * (coords[ps[11]][0] + coords[ps[1]][0])) / 9, (-4 * 
coords[ps[12]][1] - coords[ps[3]][1] + 6 * (coords[ps[8]][1] + coords[ps[13]][1]) - 2 * (coords[ps[0]][1] + 
coords[ps[15]][1]) + 3 * (coords[ps[11]][1] + coords[ps[1]][1])) / 9]);
-      ps[10] = coords.length;
-      coords.push([(-4 * coords[ps[15]][0] - coords[ps[0]][0] + 6 * (coords[ps[11]][0] + coords[ps[14]][0]) 
- 2 * (coords[ps[12]][0] + coords[ps[3]][0]) + 3 * (coords[ps[2]][0] + coords[ps[8]][0])) / 9, (-4 * 
coords[ps[15]][1] - coords[ps[0]][1] + 6 * (coords[ps[11]][1] + coords[ps[14]][1]) - 2 * (coords[ps[12]][1] + 
coords[ps[3]][1]) + 3 * (coords[ps[2]][1] + coords[ps[8]][1])) / 9]);
-      this.figures.push({
-        type: "patch",
-        coords: new Int32Array(ps),
-        colors: new Int32Array(cs)
-      });
-    }
-  }
-
-  _decodeType7Shading(reader) {
-    const coords = this.coords;
-    const colors = this.colors;
-    const ps = new Int32Array(16);
-    const cs = new Int32Array(4);
-
-    while (reader.hasData) {
-      const f = reader.readFlag();
-
-      if (!(0 <= f && f <= 3)) {
-        throw new _util.FormatError("Unknown type7 flag");
-      }
-
-      const pi = coords.length;
-
-      for (let i = 0, ii = f !== 0 ? 12 : 16; i < ii; i++) {
-        coords.push(reader.readCoordinate());
-      }
-
-      const ci = colors.length;
-
-      for (let i = 0, ii = f !== 0 ? 2 : 4; i < ii; i++) {
-        colors.push(reader.readComponents());
-      }
-
-      let tmp1, tmp2, tmp3, tmp4;
-
-      switch (f) {
-        case 0:
-          ps[12] = pi + 3;
-          ps[13] = pi + 4;
-          ps[14] = pi + 5;
-          ps[15] = pi + 6;
-          ps[8] = pi + 2;
-          ps[9] = pi + 13;
-          ps[10] = pi + 14;
-          ps[11] = pi + 7;
-          ps[4] = pi + 1;
-          ps[5] = pi + 12;
-          ps[6] = pi + 15;
-          ps[7] = pi + 8;
-          ps[0] = pi;
-          ps[1] = pi + 11;
-          ps[2] = pi + 10;
-          ps[3] = pi + 9;
-          cs[2] = ci + 1;
-          cs[3] = ci + 2;
-          cs[0] = ci;
-          cs[1] = ci + 3;
-          break;
-
-        case 1:
-          tmp1 = ps[12];
-          tmp2 = ps[13];
-          tmp3 = ps[14];
-          tmp4 = ps[15];
-          ps[12] = tmp4;
-          ps[13] = pi + 0;
-          ps[14] = pi + 1;
-          ps[15] = pi + 2;
-          ps[8] = tmp3;
-          ps[9] = pi + 9;
-          ps[10] = pi + 10;
-          ps[11] = pi + 3;
-          ps[4] = tmp2;
-          ps[5] = pi + 8;
-          ps[6] = pi + 11;
-          ps[7] = pi + 4;
-          ps[0] = tmp1;
-          ps[1] = pi + 7;
-          ps[2] = pi + 6;
-          ps[3] = pi + 5;
-          tmp1 = cs[2];
-          tmp2 = cs[3];
-          cs[2] = tmp2;
-          cs[3] = ci;
-          cs[0] = tmp1;
-          cs[1] = ci + 1;
-          break;
-
-        case 2:
-          tmp1 = ps[15];
-          tmp2 = ps[11];
-          ps[12] = ps[3];
-          ps[13] = pi + 0;
-          ps[14] = pi + 1;
-          ps[15] = pi + 2;
-          ps[8] = ps[7];
-          ps[9] = pi + 9;
-          ps[10] = pi + 10;
-          ps[11] = pi + 3;
-          ps[4] = tmp2;
-          ps[5] = pi + 8;
-          ps[6] = pi + 11;
-          ps[7] = pi + 4;
-          ps[0] = tmp1;
-          ps[1] = pi + 7;
-          ps[2] = pi + 6;
-          ps[3] = pi + 5;
-          tmp1 = cs[3];
-          cs[2] = cs[1];
-          cs[3] = ci;
-          cs[0] = tmp1;
-          cs[1] = ci + 1;
-          break;
-
-        case 3:
-          ps[12] = ps[0];
-          ps[13] = pi + 0;
-          ps[14] = pi + 1;
-          ps[15] = pi + 2;
-          ps[8] = ps[1];
-          ps[9] = pi + 9;
-          ps[10] = pi + 10;
-          ps[11] = pi + 3;
-          ps[4] = ps[2];
-          ps[5] = pi + 8;
-          ps[6] = pi + 11;
-          ps[7] = pi + 4;
-          ps[0] = ps[3];
-          ps[1] = pi + 7;
-          ps[2] = pi + 6;
-          ps[3] = pi + 5;
-          cs[2] = cs[0];
-          cs[3] = ci;
-          cs[0] = cs[1];
-          cs[1] = ci + 1;
-          break;
-      }
-
-      this.figures.push({
-        type: "patch",
-        coords: new Int32Array(ps),
-        colors: new Int32Array(cs)
-      });
-    }
-  }
-
-  _buildFigureFromPatch(index) {
-    const figure = this.figures[index];
-    (0, _util.assert)(figure.type === "patch", "Unexpected patch mesh figure");
-    const coords = this.coords,
-          colors = this.colors;
-    const pi = figure.coords;
-    const ci = figure.colors;
-    const figureMinX = Math.min(coords[pi[0]][0], coords[pi[3]][0], coords[pi[12]][0], coords[pi[15]][0]);
-    const figureMinY = Math.min(coords[pi[0]][1], coords[pi[3]][1], coords[pi[12]][1], coords[pi[15]][1]);
-    const figureMaxX = Math.max(coords[pi[0]][0], coords[pi[3]][0], coords[pi[12]][0], coords[pi[15]][0]);
-    const figureMaxY = Math.max(coords[pi[0]][1], coords[pi[3]][1], coords[pi[12]][1], coords[pi[15]][1]);
-    let splitXBy = Math.ceil((figureMaxX - figureMinX) * MeshShading.TRIANGLE_DENSITY / (this.bounds[2] - 
this.bounds[0]));
-    splitXBy = Math.max(MeshShading.MIN_SPLIT_PATCH_CHUNKS_AMOUNT, 
Math.min(MeshShading.MAX_SPLIT_PATCH_CHUNKS_AMOUNT, splitXBy));
-    let splitYBy = Math.ceil((figureMaxY - figureMinY) * MeshShading.TRIANGLE_DENSITY / (this.bounds[3] - 
this.bounds[1]));
-    splitYBy = Math.max(MeshShading.MIN_SPLIT_PATCH_CHUNKS_AMOUNT, 
Math.min(MeshShading.MAX_SPLIT_PATCH_CHUNKS_AMOUNT, splitYBy));
-    const verticesPerRow = splitXBy + 1;
-    const figureCoords = new Int32Array((splitYBy + 1) * verticesPerRow);
-    const figureColors = new Int32Array((splitYBy + 1) * verticesPerRow);
-    let k = 0;
-    const cl = new Uint8Array(3),
-          cr = new Uint8Array(3);
-    const c0 = colors[ci[0]],
-          c1 = colors[ci[1]],
-          c2 = colors[ci[2]],
-          c3 = colors[ci[3]];
-    const bRow = getB(splitYBy),
-          bCol = getB(splitXBy);
-
-    for (let row = 0; row <= splitYBy; row++) {
-      cl[0] = (c0[0] * (splitYBy - row) + c2[0] * row) / splitYBy | 0;
-      cl[1] = (c0[1] * (splitYBy - row) + c2[1] * row) / splitYBy | 0;
-      cl[2] = (c0[2] * (splitYBy - row) + c2[2] * row) / splitYBy | 0;
-      cr[0] = (c1[0] * (splitYBy - row) + c3[0] * row) / splitYBy | 0;
-      cr[1] = (c1[1] * (splitYBy - row) + c3[1] * row) / splitYBy | 0;
-      cr[2] = (c1[2] * (splitYBy - row) + c3[2] * row) / splitYBy | 0;
-
-      for (let col = 0; col <= splitXBy; col++, k++) {
-        if ((row === 0 || row === splitYBy) && (col === 0 || col === splitXBy)) {
-          continue;
-        }
-
-        let x = 0,
-            y = 0;
-        let q = 0;
-
-        for (let i = 0; i <= 3; i++) {
-          for (let j = 0; j <= 3; j++, q++) {
-            const m = bRow[row][i] * bCol[col][j];
-            x += coords[pi[q]][0] * m;
-            y += coords[pi[q]][1] * m;
-          }
-        }
-
-        figureCoords[k] = coords.length;
-        coords.push([x, y]);
-        figureColors[k] = colors.length;
-        const newColor = new Uint8Array(3);
-        newColor[0] = (cl[0] * (splitXBy - col) + cr[0] * col) / splitXBy | 0;
-        newColor[1] = (cl[1] * (splitXBy - col) + cr[1] * col) / splitXBy | 0;
-        newColor[2] = (cl[2] * (splitXBy - col) + cr[2] * col) / splitXBy | 0;
-        colors.push(newColor);
-      }
-    }
-
-    figureCoords[0] = pi[0];
-    figureColors[0] = ci[0];
-    figureCoords[splitXBy] = pi[3];
-    figureColors[splitXBy] = ci[1];
-    figureCoords[verticesPerRow * splitYBy] = pi[12];
-    figureColors[verticesPerRow * splitYBy] = ci[2];
-    figureCoords[verticesPerRow * splitYBy + splitXBy] = pi[15];
-    figureColors[verticesPerRow * splitYBy + splitXBy] = ci[3];
-    this.figures[index] = {
-      type: "lattice",
-      coords: figureCoords,
-      colors: figureColors,
-      verticesPerRow
-    };
-  }
-
-  _updateBounds() {
-    let minX = this.coords[0][0],
-        minY = this.coords[0][1],
-        maxX = minX,
-        maxY = minY;
-
-    for (let i = 1, ii = this.coords.length; i < ii; i++) {
-      const x = this.coords[i][0],
-            y = this.coords[i][1];
-      minX = minX > x ? x : minX;
-      minY = minY > y ? y : minY;
-      maxX = maxX < x ? x : maxX;
-      maxY = maxY < y ? y : maxY;
-    }
-
-    this.bounds = [minX, minY, maxX, maxY];
-  }
-
-  _packData() {
-    let i, ii, j, jj;
-    const coords = this.coords;
-    const coordsPacked = new Float32Array(coords.length * 2);
-
-    for (i = 0, j = 0, ii = coords.length; i < ii; i++) {
-      const xy = coords[i];
-      coordsPacked[j++] = xy[0];
-      coordsPacked[j++] = xy[1];
-    }
-
-    this.coords = coordsPacked;
-    const colors = this.colors;
-    const colorsPacked = new Uint8Array(colors.length * 3);
-
-    for (i = 0, j = 0, ii = colors.length; i < ii; i++) {
-      const c = colors[i];
-      colorsPacked[j++] = c[0];
-      colorsPacked[j++] = c[1];
-      colorsPacked[j++] = c[2];
-    }
-
-    this.colors = colorsPacked;
-    const figures = this.figures;
-
-    for (i = 0, ii = figures.length; i < ii; i++) {
-      const figure = figures[i],
-            ps = figure.coords,
-            cs = figure.colors;
-
-      for (j = 0, jj = ps.length; j < jj; j++) {
-        ps[j] *= 2;
-        cs[j] *= 3;
-      }
-    }
-  }
-
-  getIR() {
-    return ["Mesh", this.shadingType, this.coords, this.colors, this.figures, this.bounds, this.bbox, 
this.background];
-  }
-
-}
-
-class DummyShading extends BaseShading {
-  getIR() {
-    return ["Dummy"];
-  }
-
-}
-
-function getTilingPatternIR(operatorList, dict, color) {
-  const matrix = dict.getArray("Matrix");
-
-  const bbox = _util.Util.normalizeRect(dict.getArray("BBox"));
-
-  const xstep = dict.get("XStep");
-  const ystep = dict.get("YStep");
-  const paintType = dict.get("PaintType");
-  const tilingType = dict.get("TilingType");
-
-  if (bbox[2] - bbox[0] === 0 || bbox[3] - bbox[1] === 0) {
-    throw new _util.FormatError(`Invalid getTilingPatternIR /BBox array: [${bbox}].`);
-  }
-
-  return ["TilingPattern", color, operatorList, matrix, bbox, xstep, ystep, paintType, tilingType];
-}
-
-/***/ }),
-/* 56 */
-/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
-
-
-
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.PostScriptEvaluator = exports.PostScriptCompiler = exports.PDFFunctionFactory = void 0;
-exports.isPDFFunction = isPDFFunction;
-
-var _primitives = __w_pdfjs_require__(5);
-
-var _util = __w_pdfjs_require__(2);
-
-var _ps_parser = __w_pdfjs_require__(57);
-
-var _image_utils = __w_pdfjs_require__(58);
-
-class PDFFunctionFactory {
-  constructor({
-    xref,
-    isEvalSupported = true
-  }) {
-    this.xref = xref;
-    this.isEvalSupported = isEvalSupported !== false;
-  }
-
-  create(fn) {
-    const cachedFunction = this.getCached(fn);
-
-    if (cachedFunction) {
-      return cachedFunction;
-    }
-
-    const parsedFunction = PDFFunction.parse({
-      xref: this.xref,
-      isEvalSupported: this.isEvalSupported,
-      fn: fn instanceof _primitives.Ref ? this.xref.fetch(fn) : fn
-    });
-
-    this._cache(fn, parsedFunction);
-
-    return parsedFunction;
-  }
-
-  createFromArray(fnObj) {
-    const cachedFunction = this.getCached(fnObj);
-
-    if (cachedFunction) {
-      return cachedFunction;
-    }
-
-    const parsedFunction = PDFFunction.parseArray({
-      xref: this.xref,
-      isEvalSupported: this.isEvalSupported,
-      fnObj: fnObj instanceof _primitives.Ref ? this.xref.fetch(fnObj) : fnObj
-    });
-
-    this._cache(fnObj, parsedFunction);
-
-    return parsedFunction;
-  }
-
-  getCached(cacheKey) {
-    let fnRef;
-
-    if (cacheKey instanceof _primitives.Ref) {
-      fnRef = cacheKey;
-    } else if (cacheKey instanceof _primitives.Dict) {
-      fnRef = cacheKey.objId;
-    } else if ((0, _primitives.isStream)(cacheKey)) {
-      fnRef = cacheKey.dict && cacheKey.dict.objId;
-    }
-
-    if (fnRef) {
-      const localFunction = this._localFunctionCache.getByRef(fnRef);
-
-      if (localFunction) {
-        return localFunction;
-      }
-    }
-
-    return null;
-  }
-
-  _cache(cacheKey, parsedFunction) {
-    if (!parsedFunction) {
-      throw new Error('PDFFunctionFactory._cache - expected "parsedFunction" argument.');
-    }
-
-    let fnRef;
-
-    if (cacheKey instanceof _primitives.Ref) {
-      fnRef = cacheKey;
-    } else if (cacheKey instanceof _primitives.Dict) {
-      fnRef = cacheKey.objId;
-    } else if ((0, _primitives.isStream)(cacheKey)) {
-      fnRef = cacheKey.dict && cacheKey.dict.objId;
-    }
-
-    if (fnRef) {
-      this._localFunctionCache.set(null, fnRef, parsedFunction);
-    }
-  }
-
-  get _localFunctionCache() {
-    return (0, _util.shadow)(this, "_localFunctionCache", new _image_utils.LocalFunctionCache());
-  }
-
-}
-
-exports.PDFFunctionFactory = PDFFunctionFactory;
-
-function toNumberArray(arr) {
-  if (!Array.isArray(arr)) {
-    return null;
-  }
-
-  const length = arr.length;
-
-  for (let i = 0; i < length; i++) {
-    if (typeof arr[i] !== "number") {
-      const result = new Array(length);
-
-      for (let j = 0; j < length; j++) {
-        result[j] = +arr[j];
-      }
-
-      return result;
-    }
-  }
-
-  return arr;
-}
-
-class PDFFunction {
-  static getSampleArray(size, outputSize, bps, stream) {
-    let i, ii;
-    let length = 1;
-
-    for (i = 0, ii = size.length; i < ii; i++) {
-      length *= size[i];
-    }
-
-    length *= outputSize;
-    const array = new Array(length);
-    let codeSize = 0;
-    let codeBuf = 0;
-    const sampleMul = 1.0 / (2.0 ** bps - 1);
-    const strBytes = stream.getBytes((length * bps + 7) / 8);
-    let strIdx = 0;
-
-    for (i = 0; i < length; i++) {
-      while (codeSize < bps) {
-        codeBuf <<= 8;
-        codeBuf |= strBytes[strIdx++];
-        codeSize += 8;
-      }
-
-      codeSize -= bps;
-      array[i] = (codeBuf >> codeSize) * sampleMul;
-      codeBuf &= (1 << codeSize) - 1;
-    }
-
-    return array;
-  }
-
-  static parse({
-    xref,
-    isEvalSupported,
-    fn
-  }) {
-    const dict = fn.dict || fn;
-    const typeNum = dict.get("FunctionType");
-
-    switch (typeNum) {
-      case 0:
-        return this.constructSampled({
-          xref,
-          isEvalSupported,
-          fn,
-          dict
-        });
-
-      case 1:
-        break;
-
-      case 2:
-        return this.constructInterpolated({
-          xref,
-          isEvalSupported,
-          dict
-        });
-
-      case 3:
-        return this.constructStiched({
-          xref,
-          isEvalSupported,
-          dict
-        });
-
-      case 4:
-        return this.constructPostScript({
-          xref,
-          isEvalSupported,
-          fn,
-          dict
-        });
-    }
-
-    throw new _util.FormatError("Unknown type of function");
-  }
-
-  static parseArray({
-    xref,
-    isEvalSupported,
-    fnObj
-  }) {
-    if (!Array.isArray(fnObj)) {
-      return this.parse({
-        xref,
-        isEvalSupported,
-        fn: fnObj
-      });
-    }
-
-    const fnArray = [];
-
-    for (let j = 0, jj = fnObj.length; j < jj; j++) {
-      fnArray.push(this.parse({
-        xref,
-        isEvalSupported,
-        fn: xref.fetchIfRef(fnObj[j])
-      }));
-    }
-
-    return function (src, srcOffset, dest, destOffset) {
-      for (let i = 0, ii = fnArray.length; i < ii; i++) {
-        fnArray[i](src, srcOffset, dest, destOffset + i);
-      }
-    };
-  }
-
-  static constructSampled({
-    xref,
-    isEvalSupported,
-    fn,
-    dict
-  }) {
-    function toMultiArray(arr) {
-      const inputLength = arr.length;
-      const out = [];
-      let index = 0;
-
-      for (let i = 0; i < inputLength; i += 2) {
-        out[index++] = [arr[i], arr[i + 1]];
-      }
-
-      return out;
-    }
-
-    function interpolate(x, xmin, xmax, ymin, ymax) {
-      return ymin + (x - xmin) * ((ymax - ymin) / (xmax - xmin));
-    }
-
-    let domain = toNumberArray(dict.getArray("Domain"));
-    let range = toNumberArray(dict.getArray("Range"));
-
-    if (!domain || !range) {
-      throw new _util.FormatError("No domain or range");
-    }
-
-    const inputSize = domain.length / 2;
-    const outputSize = range.length / 2;
-    domain = toMultiArray(domain);
-    range = toMultiArray(range);
-    const size = toNumberArray(dict.getArray("Size"));
-    const bps = dict.get("BitsPerSample");
-    const order = dict.get("Order") || 1;
-
-    if (order !== 1) {
-      (0, _util.info)("No support for cubic spline interpolation: " + order);
-    }
-
-    let encode = toNumberArray(dict.getArray("Encode"));
-
-    if (!encode) {
-      encode = [];
-
-      for (let i = 0; i < inputSize; ++i) {
-        encode.push([0, size[i] - 1]);
-      }
-    } else {
-      encode = toMultiArray(encode);
-    }
-
-    let decode = toNumberArray(dict.getArray("Decode"));
-
-    if (!decode) {
-      decode = range;
-    } else {
-      decode = toMultiArray(decode);
-    }
-
-    const samples = this.getSampleArray(size, outputSize, bps, fn);
-    return function constructSampledFn(src, srcOffset, dest, destOffset) {
-      const cubeVertices = 1 << inputSize;
-      const cubeN = new Float64Array(cubeVertices);
-      const cubeVertex = new Uint32Array(cubeVertices);
-      let i, j;
-
-      for (j = 0; j < cubeVertices; j++) {
-        cubeN[j] = 1;
-      }
-
-      let k = outputSize,
-          pos = 1;
-
-      for (i = 0; i < inputSize; ++i) {
-        const domain_2i = domain[i][0];
-        const domain_2i_1 = domain[i][1];
-        const xi = Math.min(Math.max(src[srcOffset + i], domain_2i), domain_2i_1);
-        let e = interpolate(xi, domain_2i, domain_2i_1, encode[i][0], encode[i][1]);
-        const size_i = size[i];
-        e = Math.min(Math.max(e, 0), size_i - 1);
-        const e0 = e < size_i - 1 ? Math.floor(e) : e - 1;
-        const n0 = e0 + 1 - e;
-        const n1 = e - e0;
-        const offset0 = e0 * k;
-        const offset1 = offset0 + k;
-
-        for (j = 0; j < cubeVertices; j++) {
-          if (j & pos) {
-            cubeN[j] *= n1;
-            cubeVertex[j] += offset1;
-          } else {
-            cubeN[j] *= n0;
-            cubeVertex[j] += offset0;
-          }
-        }
-
-        k *= size_i;
-        pos <<= 1;
-      }
-
-      for (j = 0; j < outputSize; ++j) {
-        let rj = 0;
-
-        for (i = 0; i < cubeVertices; i++) {
-          rj += samples[cubeVertex[i] + j] * cubeN[i];
-        }
-
-        rj = interpolate(rj, 0, 1, decode[j][0], decode[j][1]);
-        dest[destOffset + j] = Math.min(Math.max(rj, range[j][0]), range[j][1]);
-      }
-    };
-  }
-
-  static constructInterpolated({
-    xref,
-    isEvalSupported,
-    dict
-  }) {
-    const c0 = toNumberArray(dict.getArray("C0")) || [0];
-    const c1 = toNumberArray(dict.getArray("C1")) || [1];
-    const n = dict.get("N");
-    const diff = [];
-
-    for (let i = 0, ii = c0.length; i < ii; ++i) {
-      diff.push(c1[i] - c0[i]);
-    }
-
-    const length = diff.length;
-    return function constructInterpolatedFn(src, srcOffset, dest, destOffset) {
-      const x = n === 1 ? src[srcOffset] : src[srcOffset] ** n;
-
-      for (let j = 0; j < length; ++j) {
-        dest[destOffset + j] = c0[j] + x * diff[j];
-      }
-    };
-  }
-
-  static constructStiched({
-    xref,
-    isEvalSupported,
-    dict
-  }) {
-    const domain = toNumberArray(dict.getArray("Domain"));
-
-    if (!domain) {
-      throw new _util.FormatError("No domain");
-    }
-
-    const inputSize = domain.length / 2;
-
-    if (inputSize !== 1) {
-      throw new _util.FormatError("Bad domain for stiched function");
-    }
-
-    const fnRefs = dict.get("Functions");
-    const fns = [];
-
-    for (let i = 0, ii = fnRefs.length; i < ii; ++i) {
-      fns.push(this.parse({
-        xref,
-        isEvalSupported,
-        fn: xref.fetchIfRef(fnRefs[i])
-      }));
-    }
-
-    const bounds = toNumberArray(dict.getArray("Bounds"));
-    const encode = toNumberArray(dict.getArray("Encode"));
-    const tmpBuf = new Float32Array(1);
-    return function constructStichedFn(src, srcOffset, dest, destOffset) {
-      const clip = function constructStichedFromIRClip(v, min, max) {
-        if (v > max) {
-          v = max;
-        } else if (v < min) {
-          v = min;
-        }
-
-        return v;
-      };
-
-      const v = clip(src[srcOffset], domain[0], domain[1]);
-      const length = bounds.length;
-      let i;
-
-      for (i = 0; i < length; ++i) {
-        if (v < bounds[i]) {
-          break;
-        }
-      }
-
-      let dmin = domain[0];
-
-      if (i > 0) {
-        dmin = bounds[i - 1];
-      }
-
-      let dmax = domain[1];
-
-      if (i < bounds.length) {
-        dmax = bounds[i];
-      }
-
-      const rmin = encode[2 * i];
-      const rmax = encode[2 * i + 1];
-      tmpBuf[0] = dmin === dmax ? rmin : rmin + (v - dmin) * (rmax - rmin) / (dmax - dmin);
-      fns[i](tmpBuf, 0, dest, destOffset);
-    };
-  }
-
-  static constructPostScript({
-    xref,
-    isEvalSupported,
-    fn,
-    dict
-  }) {
-    const domain = toNumberArray(dict.getArray("Domain"));
-    const range = toNumberArray(dict.getArray("Range"));
-
-    if (!domain) {
-      throw new _util.FormatError("No domain.");
-    }
-
-    if (!range) {
-      throw new _util.FormatError("No range.");
-    }
-
-    const lexer = new _ps_parser.PostScriptLexer(fn);
-    const parser = new _ps_parser.PostScriptParser(lexer);
-    const code = parser.parse();
-
-    if (isEvalSupported && _util.IsEvalSupportedCached.value) {
-      const compiled = new PostScriptCompiler().compile(code, domain, range);
-
-      if (compiled) {
-        return new Function("src", "srcOffset", "dest", "destOffset", compiled);
-      }
-    }
-
-    (0, _util.info)("Unable to compile PS function");
-    const numOutputs = range.length >> 1;
-    const numInputs = domain.length >> 1;
-    const evaluator = new PostScriptEvaluator(code);
-    const cache = Object.create(null);
-    const MAX_CACHE_SIZE = 2048 * 4;
-    let cache_available = MAX_CACHE_SIZE;
-    const tmpBuf = new Float32Array(numInputs);
-    return function constructPostScriptFn(src, srcOffset, dest, destOffset) {
-      let i, value;
-      let key = "";
-      const input = tmpBuf;
-
-      for (i = 0; i < numInputs; i++) {
-        value = src[srcOffset + i];
-        input[i] = value;
-        key += value + "_";
-      }
-
-      const cachedValue = cache[key];
-
-      if (cachedValue !== undefined) {
-        dest.set(cachedValue, destOffset);
-        return;
-      }
-
-      const output = new Float32Array(numOutputs);
-      const stack = evaluator.execute(input);
-      const stackIndex = stack.length - numOutputs;
-
-      for (i = 0; i < numOutputs; i++) {
-        value = stack[stackIndex + i];
-        let bound = range[i * 2];
-
-        if (value < bound) {
-          value = bound;
-        } else {
-          bound = range[i * 2 + 1];
-
-          if (value > bound) {
-            value = bound;
-          }
-        }
-
-        output[i] = value;
-      }
-
-      if (cache_available > 0) {
-        cache_available--;
-        cache[key] = output;
-      }
-
-      dest.set(output, destOffset);
-    };
-  }
-
-}
-
-function isPDFFunction(v) {
-  let fnDict;
-
-  if (typeof v !== "object") {
-    return false;
-  } else if ((0, _primitives.isDict)(v)) {
-    fnDict = v;
-  } else if ((0, _primitives.isStream)(v)) {
-    fnDict = v.dict;
-  } else {
-    return false;
-  }
-
-  return fnDict.has("FunctionType");
-}
-
-class PostScriptStack {
-  static get MAX_STACK_SIZE() {
-    return (0, _util.shadow)(this, "MAX_STACK_SIZE", 100);
-  }
-
-  constructor(initialStack) {
-    this.stack = !initialStack ? [] : Array.prototype.slice.call(initialStack, 0);
-  }
-
-  push(value) {
-    if (this.stack.length >= PostScriptStack.MAX_STACK_SIZE) {
-      throw new Error("PostScript function stack overflow.");
-    }
-
-    this.stack.push(value);
-  }
-
-  pop() {
-    if (this.stack.length <= 0) {
-      throw new Error("PostScript function stack underflow.");
-    }
-
-    return this.stack.pop();
-  }
-
-  copy(n) {
-    if (this.stack.length + n >= PostScriptStack.MAX_STACK_SIZE) {
-      throw new Error("PostScript function stack overflow.");
-    }
-
-    const stack = this.stack;
-
-    for (let i = stack.length - n, j = n - 1; j >= 0; j--, i++) {
-      stack.push(stack[i]);
-    }
-  }
-
-  index(n) {
-    this.push(this.stack[this.stack.length - n - 1]);
-  }
-
-  roll(n, p) {
-    const stack = this.stack;
-    const l = stack.length - n;
-    const r = stack.length - 1;
-    const c = l + (p - Math.floor(p / n) * n);
-
-    for (let i = l, j = r; i < j; i++, j--) {
-      const t = stack[i];
-      stack[i] = stack[j];
-      stack[j] = t;
-    }
-
-    for (let i = l, j = c - 1; i < j; i++, j--) {
-      const t = stack[i];
-      stack[i] = stack[j];
-      stack[j] = t;
-    }
-
-    for (let i = c, j = r; i < j; i++, j--) {
-      const t = stack[i];
-      stack[i] = stack[j];
-      stack[j] = t;
-    }
-  }
-
-}
-
-class PostScriptEvaluator {
-  constructor(operators) {
-    this.operators = operators;
-  }
-
-  execute(initialStack) {
-    const stack = new PostScriptStack(initialStack);
-    let counter = 0;
-    const operators = this.operators;
-    const length = operators.length;
-    let operator, a, b;
-
-    while (counter < length) {
-      operator = operators[counter++];
-
-      if (typeof operator === "number") {
-        stack.push(operator);
-        continue;
-      }
-
-      switch (operator) {
-        case "jz":
-          b = stack.pop();
-          a = stack.pop();
-
-          if (!a) {
-            counter = b;
-          }
-
-          break;
-
-        case "j":
-          a = stack.pop();
-          counter = a;
-          break;
-
-        case "abs":
-          a = stack.pop();
-          stack.push(Math.abs(a));
-          break;
-
-        case "add":
-          b = stack.pop();
-          a = stack.pop();
-          stack.push(a + b);
-          break;
-
-        case "and":
-          b = stack.pop();
-          a = stack.pop();
-
-          if ((0, _util.isBool)(a) && (0, _util.isBool)(b)) {
-            stack.push(a && b);
-          } else {
-            stack.push(a & b);
-          }
-
-          break;
-
-        case "atan":
-          a = stack.pop();
-          stack.push(Math.atan(a));
-          break;
-
-        case "bitshift":
-          b = stack.pop();
-          a = stack.pop();
-
-          if (a > 0) {
-            stack.push(a << b);
-          } else {
-            stack.push(a >> b);
-          }
-
-          break;
-
-        case "ceiling":
-          a = stack.pop();
-          stack.push(Math.ceil(a));
-          break;
-
-        case "copy":
-          a = stack.pop();
-          stack.copy(a);
-          break;
-
-        case "cos":
-          a = stack.pop();
-          stack.push(Math.cos(a));
-          break;
-
-        case "cvi":
-          a = stack.pop() | 0;
-          stack.push(a);
-          break;
-
-        case "cvr":
-          break;
-
-        case "div":
-          b = stack.pop();
-          a = stack.pop();
-          stack.push(a / b);
-          break;
-
-        case "dup":
-          stack.copy(1);
-          break;
-
-        case "eq":
-          b = stack.pop();
-          a = stack.pop();
-          stack.push(a === b);
-          break;
-
-        case "exch":
-          stack.roll(2, 1);
-          break;
-
-        case "exp":
-          b = stack.pop();
-          a = stack.pop();
-          stack.push(a ** b);
-          break;
-
-        case "false":
-          stack.push(false);
-          break;
-
-        case "floor":
-          a = stack.pop();
-          stack.push(Math.floor(a));
-          break;
-
-        case "ge":
-          b = stack.pop();
-          a = stack.pop();
-          stack.push(a >= b);
-          break;
-
-        case "gt":
-          b = stack.pop();
-          a = stack.pop();
-          stack.push(a > b);
-          break;
-
-        case "idiv":
-          b = stack.pop();
-          a = stack.pop();
-          stack.push(a / b | 0);
-          break;
-
-        case "index":
-          a = stack.pop();
-          stack.index(a);
-          break;
-
-        case "le":
-          b = stack.pop();
-          a = stack.pop();
-          stack.push(a <= b);
-          break;
-
-        case "ln":
-          a = stack.pop();
-          stack.push(Math.log(a));
-          break;
-
-        case "log":
-          a = stack.pop();
-          stack.push(Math.log(a) / Math.LN10);
-          break;
-
-        case "lt":
-          b = stack.pop();
-          a = stack.pop();
-          stack.push(a < b);
-          break;
-
-        case "mod":
-          b = stack.pop();
-          a = stack.pop();
-          stack.push(a % b);
-          break;
-
-        case "mul":
-          b = stack.pop();
-          a = stack.pop();
-          stack.push(a * b);
-          break;
-
-        case "ne":
-          b = stack.pop();
-          a = stack.pop();
-          stack.push(a !== b);
-          break;
-
-        case "neg":
-          a = stack.pop();
-          stack.push(-a);
-          break;
-
-        case "not":
-          a = stack.pop();
-
-          if ((0, _util.isBool)(a)) {
-            stack.push(!a);
-          } else {
-            stack.push(~a);
-          }
-
-          break;
-
-        case "or":
-          b = stack.pop();
-          a = stack.pop();
-
-          if ((0, _util.isBool)(a) && (0, _util.isBool)(b)) {
-            stack.push(a || b);
-          } else {
-            stack.push(a | b);
-          }
-
-          break;
-
-        case "pop":
-          stack.pop();
-          break;
-
-        case "roll":
-          b = stack.pop();
-          a = stack.pop();
-          stack.roll(a, b);
-          break;
-
-        case "round":
-          a = stack.pop();
-          stack.push(Math.round(a));
-          break;
-
-        case "sin":
-          a = stack.pop();
-          stack.push(Math.sin(a));
-          break;
-
-        case "sqrt":
-          a = stack.pop();
-          stack.push(Math.sqrt(a));
-          break;
-
-        case "sub":
-          b = stack.pop();
-          a = stack.pop();
-          stack.push(a - b);
-          break;
-
-        case "true":
-          stack.push(true);
-          break;
-
-        case "truncate":
-          a = stack.pop();
-          a = a < 0 ? Math.ceil(a) : Math.floor(a);
-          stack.push(a);
-          break;
-
-        case "xor":
-          b = stack.pop();
-          a = stack.pop();
-
-          if ((0, _util.isBool)(a) && (0, _util.isBool)(b)) {
-            stack.push(a !== b);
-          } else {
-            stack.push(a ^ b);
-          }
-
-          break;
-
-        default:
-          throw new _util.FormatError(`Unknown operator ${operator}`);
-      }
-    }
-
-    return stack.stack;
-  }
-
-}
-
-exports.PostScriptEvaluator = PostScriptEvaluator;
-
-const PostScriptCompiler = function PostScriptCompilerClosure() {
-  class AstNode {
-    constructor(type) {
-      this.type = type;
-    }
-
-    visit(visitor) {
-      (0, _util.unreachable)("abstract method");
-    }
-
-  }
-
-  class AstArgument extends AstNode {
-    constructor(index, min, max) {
-      super("args");
-      this.index = index;
-      this.min = min;
-      this.max = max;
-    }
-
-    visit(visitor) {
-      visitor.visitArgument(this);
-    }
-
-  }
-
-  class AstLiteral extends AstNode {
-    constructor(number) {
-      super("literal");
-      this.number = number;
-      this.min = number;
-      this.max = number;
-    }
-
-    visit(visitor) {
-      visitor.visitLiteral(this);
-    }
-
-  }
-
-  class AstBinaryOperation extends AstNode {
-    constructor(op, arg1, arg2, min, max) {
-      super("binary");
-      this.op = op;
-      this.arg1 = arg1;
-      this.arg2 = arg2;
-      this.min = min;
-      this.max = max;
-    }
-
-    visit(visitor) {
-      visitor.visitBinaryOperation(this);
-    }
-
-  }
-
-  class AstMin extends AstNode {
-    constructor(arg, max) {
-      super("max");
-      this.arg = arg;
-      this.min = arg.min;
-      this.max = max;
-    }
-
-    visit(visitor) {
-      visitor.visitMin(this);
-    }
-
-  }
-
-  class AstVariable extends AstNode {
-    constructor(index, min, max) {
-      super("var");
-      this.index = index;
-      this.min = min;
-      this.max = max;
-    }
-
-    visit(visitor) {
-      visitor.visitVariable(this);
-    }
-
-  }
-
-  class AstVariableDefinition extends AstNode {
-    constructor(variable, arg) {
-      super("definition");
-      this.variable = variable;
-      this.arg = arg;
-    }
-
-    visit(visitor) {
-      visitor.visitVariableDefinition(this);
-    }
-
-  }
-
-  class ExpressionBuilderVisitor {
-    constructor() {
-      this.parts = [];
-    }
-
-    visitArgument(arg) {
-      this.parts.push("Math.max(", arg.min, ", Math.min(", arg.max, ", src[srcOffset + ", arg.index, "]))");
-    }
-
-    visitVariable(variable) {
-      this.parts.push("v", variable.index);
-    }
-
-    visitLiteral(literal) {
-      this.parts.push(literal.number);
-    }
-
-    visitBinaryOperation(operation) {
-      this.parts.push("(");
-      operation.arg1.visit(this);
-      this.parts.push(" ", operation.op, " ");
-      operation.arg2.visit(this);
-      this.parts.push(")");
-    }
-
-    visitVariableDefinition(definition) {
-      this.parts.push("var ");
-      definition.variable.visit(this);
-      this.parts.push(" = ");
-      definition.arg.visit(this);
-      this.parts.push(";");
-    }
-
-    visitMin(max) {
-      this.parts.push("Math.min(");
-      max.arg.visit(this);
-      this.parts.push(", ", max.max, ")");
-    }
-
-    toString() {
-      return this.parts.join("");
-    }
-
-  }
-
-  function buildAddOperation(num1, num2) {
-    if (num2.type === "literal" && num2.number === 0) {
-      return num1;
-    }
-
-    if (num1.type === "literal" && num1.number === 0) {
-      return num2;
-    }
-
-    if (num2.type === "literal" && num1.type === "literal") {
-      return new AstLiteral(num1.number + num2.number);
-    }
-
-    return new AstBinaryOperation("+", num1, num2, num1.min + num2.min, num1.max + num2.max);
-  }
-
-  function buildMulOperation(num1, num2) {
-    if (num2.type === "literal") {
-      if (num2.number === 0) {
-        return new AstLiteral(0);
-      } else if (num2.number === 1) {
-        return num1;
-      } else if (num1.type === "literal") {
-        return new AstLiteral(num1.number * num2.number);
-      }
-    }
-
-    if (num1.type === "literal") {
-      if (num1.number === 0) {
-        return new AstLiteral(0);
-      } else if (num1.number === 1) {
-        return num2;
-      }
-    }
-
-    const min = Math.min(num1.min * num2.min, num1.min * num2.max, num1.max * num2.min, num1.max * num2.max);
-    const max = Math.max(num1.min * num2.min, num1.min * num2.max, num1.max * num2.min, num1.max * num2.max);
-    return new AstBinaryOperation("*", num1, num2, min, max);
-  }
-
-  function buildSubOperation(num1, num2) {
-    if (num2.type === "literal") {
-      if (num2.number === 0) {
-        return num1;
-      } else if (num1.type === "literal") {
-        return new AstLiteral(num1.number - num2.number);
-      }
-    }
-
-    if (num2.type === "binary" && num2.op === "-" && num1.type === "literal" && num1.number === 1 && 
num2.arg1.type === "literal" && num2.arg1.number === 1) {
-      return num2.arg2;
-    }
-
-    return new AstBinaryOperation("-", num1, num2, num1.min - num2.max, num1.max - num2.min);
-  }
-
-  function buildMinOperation(num1, max) {
-    if (num1.min >= max) {
-      return new AstLiteral(max);
-    } else if (num1.max <= max) {
-      return num1;
-    }
-
-    return new AstMin(num1, max);
-  }
-
-  class PostScriptCompiler {
-    compile(code, domain, range) {
-      const stack = [];
-      const instructions = [];
-      const inputSize = domain.length >> 1,
-            outputSize = range.length >> 1;
-      let lastRegister = 0;
-      let n, j;
-      let num1, num2, ast1, ast2, tmpVar, item;
-
-      for (let i = 0; i < inputSize; i++) {
-        stack.push(new AstArgument(i, domain[i * 2], domain[i * 2 + 1]));
-      }
-
-      for (let i = 0, ii = code.length; i < ii; i++) {
-        item = code[i];
-
-        if (typeof item === "number") {
-          stack.push(new AstLiteral(item));
-          continue;
-        }
-
-        switch (item) {
-          case "add":
-            if (stack.length < 2) {
-              return null;
-            }
-
-            num2 = stack.pop();
-            num1 = stack.pop();
-            stack.push(buildAddOperation(num1, num2));
-            break;
-
-          case "cvr":
-            if (stack.length < 1) {
-              return null;
-            }
-
-            break;
-
-          case "mul":
-            if (stack.length < 2) {
-              return null;
-            }
-
-            num2 = stack.pop();
-            num1 = stack.pop();
-            stack.push(buildMulOperation(num1, num2));
-            break;
-
-          case "sub":
-            if (stack.length < 2) {
-              return null;
-            }
-
-            num2 = stack.pop();
-            num1 = stack.pop();
-            stack.push(buildSubOperation(num1, num2));
-            break;
-
-          case "exch":
-            if (stack.length < 2) {
-              return null;
-            }
-
-            ast1 = stack.pop();
-            ast2 = stack.pop();
-            stack.push(ast1, ast2);
-            break;
-
-          case "pop":
-            if (stack.length < 1) {
-              return null;
-            }
-
-            stack.pop();
-            break;
-
-          case "index":
-            if (stack.length < 1) {
-              return null;
-            }
-
-            num1 = stack.pop();
-
-            if (num1.type !== "literal") {
-              return null;
-            }
-
-            n = num1.number;
-
-            if (n < 0 || !Number.isInteger(n) || stack.length < n) {
-              return null;
-            }
-
-            ast1 = stack[stack.length - n - 1];
-
-            if (ast1.type === "literal" || ast1.type === "var") {
-              stack.push(ast1);
-              break;
-            }
-
-            tmpVar = new AstVariable(lastRegister++, ast1.min, ast1.max);
-            stack[stack.length - n - 1] = tmpVar;
-            stack.push(tmpVar);
-            instructions.push(new AstVariableDefinition(tmpVar, ast1));
-            break;
-
-          case "dup":
-            if (stack.length < 1) {
-              return null;
-            }
-
-            if (typeof code[i + 1] === "number" && code[i + 2] === "gt" && code[i + 3] === i + 7 && code[i + 
4] === "jz" && code[i + 5] === "pop" && code[i + 6] === code[i + 1]) {
-              num1 = stack.pop();
-              stack.push(buildMinOperation(num1, code[i + 1]));
-              i += 6;
-              break;
-            }
-
-            ast1 = stack[stack.length - 1];
-
-            if (ast1.type === "literal" || ast1.type === "var") {
-              stack.push(ast1);
-              break;
-            }
-
-            tmpVar = new AstVariable(lastRegister++, ast1.min, ast1.max);
-            stack[stack.length - 1] = tmpVar;
-            stack.push(tmpVar);
-            instructions.push(new AstVariableDefinition(tmpVar, ast1));
-            break;
-
-          case "roll":
-            if (stack.length < 2) {
-              return null;
-            }
-
-            num2 = stack.pop();
-            num1 = stack.pop();
-
-            if (num2.type !== "literal" || num1.type !== "literal") {
-              return null;
-            }
-
-            j = num2.number;
-            n = num1.number;
-
-            if (n <= 0 || !Number.isInteger(n) || !Number.isInteger(j) || stack.length < n) {
-              return null;
-            }
-
-            j = (j % n + n) % n;
-
-            if (j === 0) {
-              break;
-            }
-
-            Array.prototype.push.apply(stack, stack.splice(stack.length - n, n - j));
-            break;
-
-          default:
-            return null;
-        }
-      }
-
-      if (stack.length !== outputSize) {
-        return null;
-      }
-
-      const result = [];
-
-      for (const instruction of instructions) {
-        const statementBuilder = new ExpressionBuilderVisitor();
-        instruction.visit(statementBuilder);
-        result.push(statementBuilder.toString());
-      }
-
-      for (let i = 0, ii = stack.length; i < ii; i++) {
-        const expr = stack[i],
-              statementBuilder = new ExpressionBuilderVisitor();
-        expr.visit(statementBuilder);
-        const min = range[i * 2],
-              max = range[i * 2 + 1];
-        const out = [statementBuilder.toString()];
-
-        if (min > expr.min) {
-          out.unshift("Math.max(", min, ", ");
-          out.push(")");
-        }
-
-        if (max < expr.max) {
-          out.unshift("Math.min(", max, ", ");
-          out.push(")");
-        }
-
-        out.unshift("dest[destOffset + ", i, "] = ");
-        out.push(";");
-        result.push(out.join(""));
-      }
-
-      return result.join("\n");
-    }
-
-  }
-
-  return PostScriptCompiler;
-}();
-
-exports.PostScriptCompiler = PostScriptCompiler;
-
-/***/ }),
-/* 57 */
-/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
-
-
-
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.PostScriptParser = exports.PostScriptLexer = void 0;
-
-var _util = __w_pdfjs_require__(2);
-
-var _primitives = __w_pdfjs_require__(5);
-
-var _core_utils = __w_pdfjs_require__(9);
-
-class PostScriptParser {
-  constructor(lexer) {
-    this.lexer = lexer;
-    this.operators = [];
-    this.token = null;
-    this.prev = null;
-  }
-
-  nextToken() {
-    this.prev = this.token;
-    this.token = this.lexer.getToken();
-  }
-
-  accept(type) {
-    if (this.token.type === type) {
-      this.nextToken();
-      return true;
-    }
-
-    return false;
-  }
-
-  expect(type) {
-    if (this.accept(type)) {
-      return true;
-    }
-
-    throw new _util.FormatError(`Unexpected symbol: found ${this.token.type} expected ${type}.`);
-  }
-
-  parse() {
-    this.nextToken();
-    this.expect(PostScriptTokenTypes.LBRACE);
-    this.parseBlock();
-    this.expect(PostScriptTokenTypes.RBRACE);
-    return this.operators;
-  }
-
-  parseBlock() {
-    while (true) {
-      if (this.accept(PostScriptTokenTypes.NUMBER)) {
-        this.operators.push(this.prev.value);
-      } else if (this.accept(PostScriptTokenTypes.OPERATOR)) {
-        this.operators.push(this.prev.value);
-      } else if (this.accept(PostScriptTokenTypes.LBRACE)) {
-        this.parseCondition();
-      } else {
-        return;
-      }
-    }
-  }
-
-  parseCondition() {
-    const conditionLocation = this.operators.length;
-    this.operators.push(null, null);
-    this.parseBlock();
-    this.expect(PostScriptTokenTypes.RBRACE);
-
-    if (this.accept(PostScriptTokenTypes.IF)) {
-      this.operators[conditionLocation] = this.operators.length;
-      this.operators[conditionLocation + 1] = "jz";
-    } else if (this.accept(PostScriptTokenTypes.LBRACE)) {
-      const jumpLocation = this.operators.length;
-      this.operators.push(null, null);
-      const endOfTrue = this.operators.length;
-      this.parseBlock();
-      this.expect(PostScriptTokenTypes.RBRACE);
-      this.expect(PostScriptTokenTypes.IFELSE);
-      this.operators[jumpLocation] = this.operators.length;
-      this.operators[jumpLocation + 1] = "j";
-      this.operators[conditionLocation] = endOfTrue;
-      this.operators[conditionLocation + 1] = "jz";
-    } else {
-      throw new _util.FormatError("PS Function: error parsing conditional.");
-    }
-  }
-
-}
-
-exports.PostScriptParser = PostScriptParser;
-const PostScriptTokenTypes = {
-  LBRACE: 0,
-  RBRACE: 1,
-  NUMBER: 2,
-  OPERATOR: 3,
-  IF: 4,
-  IFELSE: 5
-};
-
-class PostScriptToken {
-  static get opCache() {
-    return (0, _util.shadow)(this, "opCache", Object.create(null));
-  }
-
-  constructor(type, value) {
-    this.type = type;
-    this.value = value;
-  }
-
-  static getOperator(op) {
-    const opValue = PostScriptToken.opCache[op];
-
-    if (opValue) {
-      return opValue;
-    }
-
-    return PostScriptToken.opCache[op] = new PostScriptToken(PostScriptTokenTypes.OPERATOR, op);
-  }
-
-  static get LBRACE() {
-    return (0, _util.shadow)(this, "LBRACE", new PostScriptToken(PostScriptTokenTypes.LBRACE, "{"));
-  }
-
-  static get RBRACE() {
-    return (0, _util.shadow)(this, "RBRACE", new PostScriptToken(PostScriptTokenTypes.RBRACE, "}"));
-  }
-
-  static get IF() {
-    return (0, _util.shadow)(this, "IF", new PostScriptToken(PostScriptTokenTypes.IF, "IF"));
-  }
-
-  static get IFELSE() {
-    return (0, _util.shadow)(this, "IFELSE", new PostScriptToken(PostScriptTokenTypes.IFELSE, "IFELSE"));
-  }
-
-}
-
-class PostScriptLexer {
-  constructor(stream) {
-    this.stream = stream;
-    this.nextChar();
-    this.strBuf = [];
-  }
-
-  nextChar() {
-    return this.currentChar = this.stream.getByte();
-  }
-
-  getToken() {
-    let comment = false;
-    let ch = this.currentChar;
-
-    while (true) {
-      if (ch < 0) {
-        return _primitives.EOF;
-      }
-
-      if (comment) {
-        if (ch === 0x0a || ch === 0x0d) {
-          comment = false;
-        }
-      } else if (ch === 0x25) {
-        comment = true;
-      } else if (!(0, _core_utils.isWhiteSpace)(ch)) {
-        break;
-      }
-
-      ch = this.nextChar();
-    }
-
-    switch (ch | 0) {
-      case 0x30:
-      case 0x31:
-      case 0x32:
-      case 0x33:
-      case 0x34:
-      case 0x35:
-      case 0x36:
-      case 0x37:
-      case 0x38:
-      case 0x39:
-      case 0x2b:
-      case 0x2d:
-      case 0x2e:
-        return new PostScriptToken(PostScriptTokenTypes.NUMBER, this.getNumber());
-
-      case 0x7b:
-        this.nextChar();
-        return PostScriptToken.LBRACE;
-
-      case 0x7d:
-        this.nextChar();
-        return PostScriptToken.RBRACE;
-    }
-
-    const strBuf = this.strBuf;
-    strBuf.length = 0;
-    strBuf[0] = String.fromCharCode(ch);
-
-    while ((ch = this.nextChar()) >= 0 && (ch >= 0x41 && ch <= 0x5a || ch >= 0x61 && ch <= 0x7a)) {
-      strBuf.push(String.fromCharCode(ch));
-    }
-
-    const str = strBuf.join("");
-
-    switch (str.toLowerCase()) {
-      case "if":
-        return PostScriptToken.IF;
-
-      case "ifelse":
-        return PostScriptToken.IFELSE;
-
-      default:
-        return PostScriptToken.getOperator(str);
-    }
-  }
-
-  getNumber() {
-    let ch = this.currentChar;
-    const strBuf = this.strBuf;
-    strBuf.length = 0;
-    strBuf[0] = String.fromCharCode(ch);
-
-    while ((ch = this.nextChar()) >= 0) {
-      if (ch >= 0x30 && ch <= 0x39 || ch === 0x2d || ch === 0x2e) {
-        strBuf.push(String.fromCharCode(ch));
-      } else {
-        break;
-      }
-    }
-
-    const value = parseFloat(strBuf.join(""));
-
-    if (isNaN(value)) {
-      throw new _util.FormatError(`Invalid floating point number: ${value}`);
-    }
-
-    return value;
-  }
-
-}
-
-exports.PostScriptLexer = PostScriptLexer;
-
-/***/ }),
-/* 58 */
-/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
-
-
-
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.LocalTilingPatternCache = exports.LocalImageCache = exports.LocalGStateCache = 
exports.LocalFunctionCache = exports.LocalColorSpaceCache = exports.GlobalImageCache = void 0;
-
-var _util = __w_pdfjs_require__(2);
-
-var _primitives = __w_pdfjs_require__(5);
-
-class BaseLocalCache {
-  constructor(options) {
-    if (this.constructor === BaseLocalCache) {
-      (0, _util.unreachable)("Cannot initialize BaseLocalCache.");
-    }
-
-    this._onlyRefs = (options && options.onlyRefs) === true;
-
-    if (!this._onlyRefs) {
-      this._nameRefMap = new Map();
-      this._imageMap = new Map();
-    }
-
-    this._imageCache = new _primitives.RefSetCache();
-  }
-
-  getByName(name) {
-    if (this._onlyRefs) {
-      (0, _util.unreachable)("Should not call `getByName` method.");
-    }
-
-    const ref = this._nameRefMap.get(name);
-
-    if (ref) {
-      return this.getByRef(ref);
-    }
-
-    return this._imageMap.get(name) || null;
-  }
-
-  getByRef(ref) {
-    return this._imageCache.get(ref) || null;
-  }
-
-  set(name, ref, data) {
-    (0, _util.unreachable)("Abstract method `set` called.");
-  }
-
-}
-
-class LocalImageCache extends BaseLocalCache {
-  set(name, ref = null, data) {
-    if (typeof name !== "string") {
-      throw new Error('LocalImageCache.set - expected "name" argument.');
-    }
-
-    if (ref) {
-      if (this._imageCache.has(ref)) {
-        return;
-      }
-
-      this._nameRefMap.set(name, ref);
-
-      this._imageCache.put(ref, data);
-
-      return;
-    }
-
-    if (this._imageMap.has(name)) {
-      return;
-    }
-
-    this._imageMap.set(name, data);
-  }
-
-}
-
-exports.LocalImageCache = LocalImageCache;
-
-class LocalColorSpaceCache extends BaseLocalCache {
-  set(name = null, ref = null, data) {
-    if (typeof name !== "string" && !ref) {
-      throw new Error('LocalColorSpaceCache.set - expected "name" and/or "ref" argument.');
-    }
-
-    if (ref) {
-      if (this._imageCache.has(ref)) {
-        return;
-      }
-
-      if (name !== null) {
-        this._nameRefMap.set(name, ref);
-      }
-
-      this._imageCache.put(ref, data);
-
-      return;
-    }
-
-    if (this._imageMap.has(name)) {
-      return;
-    }
-
-    this._imageMap.set(name, data);
-  }
-
-}
-
-exports.LocalColorSpaceCache = LocalColorSpaceCache;
-
-class LocalFunctionCache extends BaseLocalCache {
-  constructor(options) {
-    super({
-      onlyRefs: true
-    });
-  }
-
-  set(name = null, ref, data) {
-    if (!ref) {
-      throw new Error('LocalFunctionCache.set - expected "ref" argument.');
-    }
-
-    if (this._imageCache.has(ref)) {
-      return;
-    }
-
-    this._imageCache.put(ref, data);
-  }
-
-}
-
-exports.LocalFunctionCache = LocalFunctionCache;
-
-class LocalGStateCache extends BaseLocalCache {
-  set(name, ref = null, data) {
-    if (typeof name !== "string") {
-      throw new Error('LocalGStateCache.set - expected "name" argument.');
-    }
-
-    if (ref) {
-      if (this._imageCache.has(ref)) {
-        return;
-      }
-
-      this._nameRefMap.set(name, ref);
-
-      this._imageCache.put(ref, data);
-
-      return;
-    }
-
-    if (this._imageMap.has(name)) {
-      return;
-    }
-
-    this._imageMap.set(name, data);
-  }
-
-}
-
-exports.LocalGStateCache = LocalGStateCache;
-
-class LocalTilingPatternCache extends BaseLocalCache {
-  constructor(options) {
-    super({
-      onlyRefs: true
-    });
-  }
-
-  set(name = null, ref, data) {
-    if (!ref) {
-      throw new Error('LocalTilingPatternCache.set - expected "ref" argument.');
-    }
-
-    if (this._imageCache.has(ref)) {
-      return;
-    }
-
-    this._imageCache.put(ref, data);
-  }
-
-}
-
-exports.LocalTilingPatternCache = LocalTilingPatternCache;
-
-class GlobalImageCache {
-  static get NUM_PAGES_THRESHOLD() {
-    return (0, _util.shadow)(this, "NUM_PAGES_THRESHOLD", 2);
-  }
-
-  static get MIN_IMAGES_TO_CACHE() {
-    return (0, _util.shadow)(this, "MIN_IMAGES_TO_CACHE", 10);
-  }
-
-  static get MAX_BYTE_SIZE() {
-    return (0, _util.shadow)(this, "MAX_BYTE_SIZE", 40e6);
-  }
-
-  constructor() {
-    this._refCache = new _primitives.RefSetCache();
-    this._imageCache = new _primitives.RefSetCache();
-  }
-
-  get _byteSize() {
-    let byteSize = 0;
-
-    this._imageCache.forEach(imageData => {
-      byteSize += imageData.byteSize;
-    });
-
-    return byteSize;
-  }
-
-  get _cacheLimitReached() {
-    if (this._imageCache.size < GlobalImageCache.MIN_IMAGES_TO_CACHE) {
-      return false;
-    }
-
-    if (this._byteSize < GlobalImageCache.MAX_BYTE_SIZE) {
-      return false;
-    }
-
-    return true;
-  }
-
-  shouldCache(ref, pageIndex) {
-    const pageIndexSet = this._refCache.get(ref);
-
-    const numPages = pageIndexSet ? pageIndexSet.size + (pageIndexSet.has(pageIndex) ? 0 : 1) : 1;
-
-    if (numPages < GlobalImageCache.NUM_PAGES_THRESHOLD) {
-      return false;
-    }
-
-    if (!this._imageCache.has(ref) && this._cacheLimitReached) {
-      return false;
-    }
-
-    return true;
-  }
-
-  addPageIndex(ref, pageIndex) {
-    let pageIndexSet = this._refCache.get(ref);
-
-    if (!pageIndexSet) {
-      pageIndexSet = new Set();
-
-      this._refCache.put(ref, pageIndexSet);
-    }
-
-    pageIndexSet.add(pageIndex);
-  }
-
-  addByteSize(ref, byteSize) {
-    const imageData = this._imageCache.get(ref);
-
-    if (!imageData) {
-      return;
-    }
-
-    if (imageData.byteSize) {
-      return;
-    }
-
-    imageData.byteSize = byteSize;
-  }
-
-  getData(ref, pageIndex) {
-    const pageIndexSet = this._refCache.get(ref);
-
-    if (!pageIndexSet) {
-      return null;
-    }
-
-    if (pageIndexSet.size < GlobalImageCache.NUM_PAGES_THRESHOLD) {
-      return null;
-    }
-
-    const imageData = this._imageCache.get(ref);
-
-    if (!imageData) {
-      return null;
-    }
-
-    pageIndexSet.add(pageIndex);
-    return imageData;
-  }
-
-  setData(ref, data) {
-    if (!this._refCache.has(ref)) {
-      throw new Error('GlobalImageCache.setData - expected "addPageIndex" to have been called.');
-    }
-
-    if (this._imageCache.has(ref)) {
-      return;
-    }
-
-    if (this._cacheLimitReached) {
-      (0, _util.warn)("GlobalImageCache.setData - cache limit reached.");
-      return;
-    }
-
-    this._imageCache.put(ref, data);
-  }
-
-  clear(onlyData = false) {
-    if (!onlyData) {
-      this._refCache.clear();
-    }
-
-    this._imageCache.clear();
-  }
-
-}
-
-exports.GlobalImageCache = GlobalImageCache;
-
-/***/ }),
-/* 59 */
-/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
-
-
-
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.bidi = bidi;
-
-var _util = __w_pdfjs_require__(2);
-
-const baseTypes = ["BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "S", "B", "S", "WS", "B", "BN", 
"BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "B", "B", "B", "S", "WS", "ON", 
"ON", "ET", "ET", "ET", "ON", "ON", "ON", "ON", "ON", "ES", "CS", "ES", "CS", "CS", "EN", "EN", "EN", "EN", 
"EN", "EN", "EN", "EN", "EN", "EN", "CS", "ON", "ON", "ON", "ON", "ON", "ON", "L", "L", "L", "L", "L", "L", 
"L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "ON", 
"ON", "ON", "ON", "ON", "ON", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", 
"L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "ON", "ON", "ON", "ON", "BN", "BN", "BN", "BN", "BN", "BN", 
"B", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", 
"BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "CS", "ON", "ET", "ET", "ET", "ET", "ON", "ON", "ON", 
"ON", "L", "ON", "ON", "B
 N", "ON", "ON", "ET", "ET", "EN", "EN", "ON", "L", "ON", "ON", "ON", "EN", "L", "ON", "ON", "ON", "ON", 
"ON", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", 
"L", "L", "L", "ON", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", 
"L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "ON", "L", "L", "L", "L", "L", "L", 
"L", "L"];
-const arabicTypes = ["AN", "AN", "AN", "AN", "AN", "AN", "ON", "ON", "AL", "ET", "ET", "AL", "CS", "AL", 
"ON", "ON", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "AL", "AL", "", 
"AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", 
"NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "AN", "AN", "AN", 
"AN", "AN", "AN", "AN", "AN", "AN", "AN", "ET", "AN", "AN", "AL", "AL", "AL", "NSM", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "AL", "AL
 ", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "AN", "ON", "NSM", "NSM", "NSM", "NSM", 
"NSM", "NSM", "AL", "AL", "NSM", "NSM", "ON", "NSM", "NSM", "NSM", "NSM", "AL", "AL", "EN", "EN", "EN", "EN", 
"EN", "EN", "EN", "EN", "EN", "EN", "AL", "AL", "AL", "AL", "AL", "AL"];
-
-function isOdd(i) {
-  return (i & 1) !== 0;
-}
-
-function isEven(i) {
-  return (i & 1) === 0;
-}
-
-function findUnequal(arr, start, value) {
-  let j, jj;
-
-  for (j = start, jj = arr.length; j < jj; ++j) {
-    if (arr[j] !== value) {
-      return j;
-    }
-  }
-
-  return j;
-}
-
-function setValues(arr, start, end, value) {
-  for (let j = start; j < end; ++j) {
-    arr[j] = value;
-  }
-}
-
-function reverseValues(arr, start, end) {
-  for (let i = start, j = end - 1; i < j; ++i, --j) {
-    const temp = arr[i];
-    arr[i] = arr[j];
-    arr[j] = temp;
-  }
-}
-
-function createBidiText(str, isLTR, vertical = false) {
-  let dir = "ltr";
-
-  if (vertical) {
-    dir = "ttb";
-  } else if (!isLTR) {
-    dir = "rtl";
-  }
-
-  return {
-    str,
-    dir
-  };
-}
-
-const chars = [];
-const types = [];
-
-function bidi(str, startLevel = -1, vertical = false) {
-  let isLTR = true;
-  const strLength = str.length;
-
-  if (strLength === 0 || vertical) {
-    return createBidiText(str, isLTR, vertical);
-  }
-
-  chars.length = strLength;
-  types.length = strLength;
-  let numBidi = 0;
-  let i, ii;
-
-  for (i = 0; i < strLength; ++i) {
-    chars[i] = str.charAt(i);
-    const charCode = str.charCodeAt(i);
-    let charType = "L";
-
-    if (charCode <= 0x00ff) {
-      charType = baseTypes[charCode];
-    } else if (0x0590 <= charCode && charCode <= 0x05f4) {
-      charType = "R";
-    } else if (0x0600 <= charCode && charCode <= 0x06ff) {
-      charType = arabicTypes[charCode & 0xff];
-
-      if (!charType) {
-        (0, _util.warn)("Bidi: invalid Unicode character " + charCode.toString(16));
-      }
-    } else if (0x0700 <= charCode && charCode <= 0x08ac) {
-      charType = "AL";
-    }
-
-    if (charType === "R" || charType === "AL" || charType === "AN") {
-      numBidi++;
-    }
-
-    types[i] = charType;
-  }
-
-  if (numBidi === 0) {
-    isLTR = true;
-    return createBidiText(str, isLTR);
-  }
-
-  if (startLevel === -1) {
-    if (numBidi / strLength < 0.3 && strLength > 4) {
-      isLTR = true;
-      startLevel = 0;
-    } else {
-      isLTR = false;
-      startLevel = 1;
-    }
-  }
-
-  const levels = [];
-
-  for (i = 0; i < strLength; ++i) {
-    levels[i] = startLevel;
-  }
-
-  const e = isOdd(startLevel) ? "R" : "L";
-  const sor = e;
-  const eor = sor;
-  let lastType = sor;
-
-  for (i = 0; i < strLength; ++i) {
-    if (types[i] === "NSM") {
-      types[i] = lastType;
-    } else {
-      lastType = types[i];
-    }
-  }
-
-  lastType = sor;
-  let t;
-
-  for (i = 0; i < strLength; ++i) {
-    t = types[i];
-
-    if (t === "EN") {
-      types[i] = lastType === "AL" ? "AN" : "EN";
-    } else if (t === "R" || t === "L" || t === "AL") {
-      lastType = t;
-    }
-  }
-
-  for (i = 0; i < strLength; ++i) {
-    t = types[i];
-
-    if (t === "AL") {
-      types[i] = "R";
-    }
-  }
-
-  for (i = 1; i < strLength - 1; ++i) {
-    if (types[i] === "ES" && types[i - 1] === "EN" && types[i + 1] === "EN") {
-      types[i] = "EN";
-    }
-
-    if (types[i] === "CS" && (types[i - 1] === "EN" || types[i - 1] === "AN") && types[i + 1] === types[i - 
1]) {
-      types[i] = types[i - 1];
-    }
-  }
-
-  for (i = 0; i < strLength; ++i) {
-    if (types[i] === "EN") {
-      for (let j = i - 1; j >= 0; --j) {
-        if (types[j] !== "ET") {
-          break;
-        }
-
-        types[j] = "EN";
-      }
-
-      for (let j = i + 1; j < strLength; ++j) {
-        if (types[j] !== "ET") {
-          break;
-        }
-
-        types[j] = "EN";
-      }
-    }
-  }
-
-  for (i = 0; i < strLength; ++i) {
-    t = types[i];
-
-    if (t === "WS" || t === "ES" || t === "ET" || t === "CS") {
-      types[i] = "ON";
-    }
-  }
-
-  lastType = sor;
-
-  for (i = 0; i < strLength; ++i) {
-    t = types[i];
-
-    if (t === "EN") {
-      types[i] = lastType === "L" ? "L" : "EN";
-    } else if (t === "R" || t === "L") {
-      lastType = t;
-    }
-  }
-
-  for (i = 0; i < strLength; ++i) {
-    if (types[i] === "ON") {
-      const end = findUnequal(types, i + 1, "ON");
-      let before = sor;
-
-      if (i > 0) {
-        before = types[i - 1];
-      }
-
-      let after = eor;
-
-      if (end + 1 < strLength) {
-        after = types[end + 1];
-      }
-
-      if (before !== "L") {
-        before = "R";
-      }
-
-      if (after !== "L") {
-        after = "R";
-      }
-
-      if (before === after) {
-        setValues(types, i, end, before);
-      }
-
-      i = end - 1;
-    }
-  }
-
-  for (i = 0; i < strLength; ++i) {
-    if (types[i] === "ON") {
-      types[i] = e;
-    }
-  }
-
-  for (i = 0; i < strLength; ++i) {
-    t = types[i];
-
-    if (isEven(levels[i])) {
-      if (t === "R") {
-        levels[i] += 1;
-      } else if (t === "AN" || t === "EN") {
-        levels[i] += 2;
-      }
-    } else {
-      if (t === "L" || t === "AN" || t === "EN") {
-        levels[i] += 1;
-      }
-    }
-  }
-
-  let highestLevel = -1;
-  let lowestOddLevel = 99;
-  let level;
-
-  for (i = 0, ii = levels.length; i < ii; ++i) {
-    level = levels[i];
-
-    if (highestLevel < level) {
-      highestLevel = level;
-    }
-
-    if (lowestOddLevel > level && isOdd(level)) {
-      lowestOddLevel = level;
-    }
-  }
-
-  for (level = highestLevel; level >= lowestOddLevel; --level) {
-    let start = -1;
-
-    for (i = 0, ii = levels.length; i < ii; ++i) {
-      if (levels[i] < level) {
-        if (start >= 0) {
-          reverseValues(chars, start, i);
-          start = -1;
-        }
-      } else if (start < 0) {
-        start = i;
-      }
-    }
-
-    if (start >= 0) {
-      reverseValues(chars, start, levels.length);
-    }
-  }
-
-  for (i = 0, ii = chars.length; i < ii; ++i) {
-    const ch = chars[i];
-
-    if (ch === "<" || ch === ">") {
-      chars[i] = "";
-    }
-  }
-
-  return createBidiText(chars.join(""), isLTR);
-}
-
-/***/ }),
-/* 60 */
-/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
-
-
-
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.getMetrics = void 0;
-
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 const getMetrics = (0, _core_utils.getLookupTableFactory)(function (t) {
   t.Courier = 600;
@@ -51477,6 +46590,5146 @@ const getMetrics = (0, _core_utils.getLookupTableFactory)(function (t) {
   });
 });
 exports.getMetrics = getMetrics;
+const getFontBasicMetrics = (0, _core_utils.getLookupTableFactory)(function (t) {
+  t.Courier = {
+    ascent: 629,
+    descent: -157,
+    capHeight: 562,
+    xHeight: -426
+  };
+  t["Courier-Bold"] = {
+    ascent: 629,
+    descent: -157,
+    capHeight: 562,
+    xHeight: 439
+  };
+  t["Courier-Oblique"] = {
+    ascent: 629,
+    descent: -157,
+    capHeight: 562,
+    xHeight: 426
+  };
+  t["Courier-BoldOblique"] = {
+    ascent: 629,
+    descent: -157,
+    capHeight: 562,
+    xHeight: 426
+  };
+  t.Helvetica = {
+    ascent: 718,
+    descent: -207,
+    capHeight: 718,
+    xHeight: 523
+  };
+  t["Helvetica-Bold"] = {
+    ascent: 718,
+    descent: -207,
+    capHeight: 718,
+    xHeight: 532
+  };
+  t["Helvetica-Oblique"] = {
+    ascent: 718,
+    descent: -207,
+    capHeight: 718,
+    xHeight: 523
+  };
+  t["Helvetica-BoldOblique"] = {
+    ascent: 718,
+    descent: -207,
+    capHeight: 718,
+    xHeight: 532
+  };
+  t["Times-Roman"] = {
+    ascent: 683,
+    descent: -217,
+    capHeight: 662,
+    xHeight: 450
+  };
+  t["Times-Bold"] = {
+    ascent: 683,
+    descent: -217,
+    capHeight: 676,
+    xHeight: 461
+  };
+  t["Times-Italic"] = {
+    ascent: 683,
+    descent: -217,
+    capHeight: 653,
+    xHeight: 441
+  };
+  t["Times-BoldItalic"] = {
+    ascent: 683,
+    descent: -217,
+    capHeight: 669,
+    xHeight: 462
+  };
+  t.Symbol = {
+    ascent: Math.NaN,
+    descent: Math.NaN,
+    capHeight: Math.NaN,
+    xHeight: Math.NaN
+  };
+  t.ZapfDingbats = {
+    ascent: Math.NaN,
+    descent: Math.NaN,
+    capHeight: Math.NaN,
+    xHeight: Math.NaN
+  };
+});
+exports.getFontBasicMetrics = getFontBasicMetrics;
+
+/***/ }),
+/* 52 */
+/***/ ((__unused_webpack_module, exports) => {
+
+
+
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.GlyfTable = void 0;
+const ON_CURVE_POINT = 1 << 0;
+const X_SHORT_VECTOR = 1 << 1;
+const Y_SHORT_VECTOR = 1 << 2;
+const REPEAT_FLAG = 1 << 3;
+const X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR = 1 << 4;
+const Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR = 1 << 5;
+const OVERLAP_SIMPLE = 1 << 6;
+const ARG_1_AND_2_ARE_WORDS = 1 << 0;
+const ARGS_ARE_XY_VALUES = 1 << 1;
+const WE_HAVE_A_SCALE = 1 << 3;
+const MORE_COMPONENTS = 1 << 5;
+const WE_HAVE_AN_X_AND_Y_SCALE = 1 << 6;
+const WE_HAVE_A_TWO_BY_TWO = 1 << 7;
+const WE_HAVE_INSTRUCTIONS = 1 << 8;
+
+class GlyfTable {
+  constructor({
+    glyfTable,
+    isGlyphLocationsLong,
+    locaTable,
+    numGlyphs
+  }) {
+    this.glyphs = [];
+    const loca = new DataView(locaTable.buffer, locaTable.byteOffset, locaTable.byteLength);
+    const glyf = new DataView(glyfTable.buffer, glyfTable.byteOffset, glyfTable.byteLength);
+    const offsetSize = isGlyphLocationsLong ? 4 : 2;
+    let prev = isGlyphLocationsLong ? loca.getUint32(0) : 2 * loca.getUint16(0);
+    let pos = 0;
+
+    for (let i = 0; i < numGlyphs; i++) {
+      pos += offsetSize;
+      const next = isGlyphLocationsLong ? loca.getUint32(pos) : 2 * loca.getUint16(pos);
+
+      if (next === prev) {
+        this.glyphs.push(new Glyph({}));
+        continue;
+      }
+
+      const glyph = Glyph.parse(prev, glyf);
+      this.glyphs.push(glyph);
+      prev = next;
+    }
+  }
+
+  getSize() {
+    return this.glyphs.reduce((a, g) => {
+      const size = g.getSize();
+      return a + (size + 3 & ~3);
+    }, 0);
+  }
+
+  write() {
+    const totalSize = this.getSize();
+    const glyfTable = new DataView(new ArrayBuffer(totalSize));
+    const isLocationLong = totalSize > 0x1fffe;
+    const offsetSize = isLocationLong ? 4 : 2;
+    const locaTable = new DataView(new ArrayBuffer((this.glyphs.length + 1) * offsetSize));
+
+    if (isLocationLong) {
+      locaTable.setUint32(0, 0);
+    } else {
+      locaTable.setUint16(0, 0);
+    }
+
+    let pos = 0;
+    let locaIndex = 0;
+
+    for (const glyph of this.glyphs) {
+      pos += glyph.write(pos, glyfTable);
+      pos = pos + 3 & ~3;
+      locaIndex += offsetSize;
+
+      if (isLocationLong) {
+        locaTable.setUint32(locaIndex, pos);
+      } else {
+        locaTable.setUint16(locaIndex, pos >> 1);
+      }
+    }
+
+    return {
+      isLocationLong,
+      loca: new Uint8Array(locaTable.buffer),
+      glyf: new Uint8Array(glyfTable.buffer)
+    };
+  }
+
+  scale(factors) {
+    for (let i = 0, ii = this.glyphs.length; i < ii; i++) {
+      this.glyphs[i].scale(factors[i]);
+    }
+  }
+
+}
+
+exports.GlyfTable = GlyfTable;
+
+class Glyph {
+  constructor({
+    header = null,
+    simple = null,
+    composites = null
+  }) {
+    this.header = header;
+    this.simple = simple;
+    this.composites = composites;
+  }
+
+  static parse(pos, glyf) {
+    const [read, header] = GlyphHeader.parse(pos, glyf);
+    pos += read;
+
+    if (header.numberOfContours < 0) {
+      const composites = [];
+
+      while (true) {
+        const [n, composite] = CompositeGlyph.parse(pos, glyf);
+        pos += n;
+        composites.push(composite);
+
+        if (!(composite.flags & MORE_COMPONENTS)) {
+          break;
+        }
+      }
+
+      return new Glyph({
+        header,
+        composites
+      });
+    }
+
+    const simple = SimpleGlyph.parse(pos, glyf, header.numberOfContours);
+    return new Glyph({
+      header,
+      simple
+    });
+  }
+
+  getSize() {
+    if (!this.header) {
+      return 0;
+    }
+
+    const size = this.simple ? this.simple.getSize() : this.composites.reduce((a, c) => a + c.getSize(), 0);
+    return this.header.getSize() + size;
+  }
+
+  write(pos, buf) {
+    if (!this.header) {
+      return 0;
+    }
+
+    const spos = pos;
+    pos += this.header.write(pos, buf);
+
+    if (this.simple) {
+      pos += this.simple.write(pos, buf);
+    } else {
+      for (const composite of this.composites) {
+        pos += composite.write(pos, buf);
+      }
+    }
+
+    return pos - spos;
+  }
+
+  scale(factor) {
+    if (!this.header) {
+      return;
+    }
+
+    const xMiddle = (this.header.xMin + this.header.xMax) / 2;
+    this.header.scale(xMiddle, factor);
+
+    if (this.simple) {
+      this.simple.scale(xMiddle, factor);
+    } else {
+      for (const composite of this.composites) {
+        composite.scale(xMiddle, factor);
+      }
+    }
+  }
+
+}
+
+class GlyphHeader {
+  constructor({
+    numberOfContours,
+    xMin,
+    yMin,
+    xMax,
+    yMax
+  }) {
+    this.numberOfContours = numberOfContours;
+    this.xMin = xMin;
+    this.yMin = yMin;
+    this.xMax = xMax;
+    this.yMax = yMax;
+  }
+
+  static parse(pos, glyf) {
+    return [10, new GlyphHeader({
+      numberOfContours: glyf.getInt16(pos),
+      xMin: glyf.getInt16(pos + 2),
+      yMin: glyf.getInt16(pos + 4),
+      xMax: glyf.getInt16(pos + 6),
+      yMax: glyf.getInt16(pos + 8)
+    })];
+  }
+
+  getSize() {
+    return 10;
+  }
+
+  write(pos, buf) {
+    buf.setInt16(pos, this.numberOfContours);
+    buf.setInt16(pos + 2, this.xMin);
+    buf.setInt16(pos + 4, this.yMin);
+    buf.setInt16(pos + 6, this.xMax);
+    buf.setInt16(pos + 8, this.yMax);
+    return 10;
+  }
+
+  scale(x, factor) {
+    this.xMin = Math.round(x + (this.xMin - x) * factor);
+    this.xMax = Math.round(x + (this.xMax - x) * factor);
+  }
+
+}
+
+class Contour {
+  constructor({
+    flags,
+    xCoordinates,
+    yCoordinates
+  }) {
+    this.xCoordinates = xCoordinates;
+    this.yCoordinates = yCoordinates;
+    this.flags = flags;
+  }
+
+}
+
+class SimpleGlyph {
+  constructor({
+    contours,
+    instructions
+  }) {
+    this.contours = contours;
+    this.instructions = instructions;
+  }
+
+  static parse(pos, glyf, numberOfContours) {
+    const endPtsOfContours = [];
+
+    for (let i = 0; i < numberOfContours; i++) {
+      const endPt = glyf.getUint16(pos);
+      pos += 2;
+      endPtsOfContours.push(endPt);
+    }
+
+    const numberOfPt = endPtsOfContours[numberOfContours - 1] + 1;
+    const instructionLength = glyf.getUint16(pos);
+    pos += 2;
+    const instructions = new Uint8Array(glyf).slice(pos, pos + instructionLength);
+    pos += instructionLength;
+    const flags = [];
+
+    for (let i = 0; i < numberOfPt; pos++, i++) {
+      let flag = glyf.getUint8(pos);
+      flags.push(flag);
+
+      if (flag & REPEAT_FLAG) {
+        const count = glyf.getUint8(++pos);
+        flag ^= REPEAT_FLAG;
+
+        for (let m = 0; m < count; m++) {
+          flags.push(flag);
+        }
+
+        i += count;
+      }
+    }
+
+    const allXCoordinates = [];
+    let xCoordinates = [];
+    let yCoordinates = [];
+    let pointFlags = [];
+    const contours = [];
+    let endPtsOfContoursIndex = 0;
+    let lastCoordinate = 0;
+
+    for (let i = 0; i < numberOfPt; i++) {
+      const flag = flags[i];
+
+      if (flag & X_SHORT_VECTOR) {
+        const x = glyf.getUint8(pos++);
+        lastCoordinate += flag & X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR ? x : -x;
+        xCoordinates.push(lastCoordinate);
+      } else if (flag & X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR) {
+        xCoordinates.push(lastCoordinate);
+      } else {
+        lastCoordinate += glyf.getInt16(pos);
+        pos += 2;
+        xCoordinates.push(lastCoordinate);
+      }
+
+      if (endPtsOfContours[endPtsOfContoursIndex] === i) {
+        endPtsOfContoursIndex++;
+        allXCoordinates.push(xCoordinates);
+        xCoordinates = [];
+      }
+    }
+
+    lastCoordinate = 0;
+    endPtsOfContoursIndex = 0;
+
+    for (let i = 0; i < numberOfPt; i++) {
+      const flag = flags[i];
+
+      if (flag & Y_SHORT_VECTOR) {
+        const y = glyf.getUint8(pos++);
+        lastCoordinate += flag & Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR ? y : -y;
+        yCoordinates.push(lastCoordinate);
+      } else if (flag & Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR) {
+        yCoordinates.push(lastCoordinate);
+      } else {
+        lastCoordinate += glyf.getInt16(pos);
+        pos += 2;
+        yCoordinates.push(lastCoordinate);
+      }
+
+      pointFlags.push(flag & ON_CURVE_POINT | flag & OVERLAP_SIMPLE);
+
+      if (endPtsOfContours[endPtsOfContoursIndex] === i) {
+        xCoordinates = allXCoordinates[endPtsOfContoursIndex];
+        endPtsOfContoursIndex++;
+        contours.push(new Contour({
+          flags: pointFlags,
+          xCoordinates,
+          yCoordinates
+        }));
+        yCoordinates = [];
+        pointFlags = [];
+      }
+    }
+
+    return new SimpleGlyph({
+      contours,
+      instructions
+    });
+  }
+
+  getSize() {
+    let size = this.contours.length * 2 + 2 + this.instructions.length;
+    let lastX = 0;
+    let lastY = 0;
+
+    for (const contour of this.contours) {
+      size += contour.flags.length;
+
+      for (let i = 0, ii = contour.xCoordinates.length; i < ii; i++) {
+        const x = contour.xCoordinates[i];
+        const y = contour.yCoordinates[i];
+        let abs = Math.abs(x - lastX);
+
+        if (abs > 255) {
+          size += 2;
+        } else if (abs > 0) {
+          size += 1;
+        }
+
+        lastX = x;
+        abs = Math.abs(y - lastY);
+
+        if (abs > 255) {
+          size += 2;
+        } else if (abs > 0) {
+          size += 1;
+        }
+
+        lastY = y;
+      }
+    }
+
+    return size;
+  }
+
+  write(pos, buf) {
+    const spos = pos;
+    const xCoordinates = [];
+    const yCoordinates = [];
+    const flags = [];
+    let lastX = 0;
+    let lastY = 0;
+
+    for (const contour of this.contours) {
+      for (let i = 0, ii = contour.xCoordinates.length; i < ii; i++) {
+        let flag = contour.flags[i];
+        const x = contour.xCoordinates[i];
+        let delta = x - lastX;
+
+        if (delta === 0) {
+          flag |= X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR;
+          xCoordinates.push(0);
+        } else {
+          const abs = Math.abs(delta);
+
+          if (abs <= 255) {
+            flag |= delta >= 0 ? X_SHORT_VECTOR | X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR : X_SHORT_VECTOR;
+            xCoordinates.push(abs);
+          } else {
+            xCoordinates.push(delta);
+          }
+        }
+
+        lastX = x;
+        const y = contour.yCoordinates[i];
+        delta = y - lastY;
+
+        if (delta === 0) {
+          flag |= Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR;
+          yCoordinates.push(0);
+        } else {
+          const abs = Math.abs(delta);
+
+          if (abs <= 255) {
+            flag |= delta >= 0 ? Y_SHORT_VECTOR | Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR : Y_SHORT_VECTOR;
+            yCoordinates.push(abs);
+          } else {
+            yCoordinates.push(delta);
+          }
+        }
+
+        lastY = y;
+        flags.push(flag);
+      }
+
+      buf.setUint16(pos, xCoordinates.length - 1);
+      pos += 2;
+    }
+
+    buf.setUint16(pos, this.instructions.length);
+    pos += 2;
+
+    if (this.instructions.length) {
+      new Uint8Array(buf.buffer, 0, buf.buffer.byteLength).set(this.instructions, pos);
+      pos += this.instructions.length;
+    }
+
+    for (const flag of flags) {
+      buf.setUint8(pos++, flag);
+    }
+
+    for (let i = 0, ii = xCoordinates.length; i < ii; i++) {
+      const x = xCoordinates[i];
+      const flag = flags[i];
+
+      if (flag & X_SHORT_VECTOR) {
+        buf.setUint8(pos++, x);
+      } else if (!(flag & X_IS_SAME_OR_POSITIVE_X_SHORT_VECTOR)) {
+        buf.setInt16(pos, x);
+        pos += 2;
+      }
+    }
+
+    for (let i = 0, ii = yCoordinates.length; i < ii; i++) {
+      const y = yCoordinates[i];
+      const flag = flags[i];
+
+      if (flag & Y_SHORT_VECTOR) {
+        buf.setUint8(pos++, y);
+      } else if (!(flag & Y_IS_SAME_OR_POSITIVE_Y_SHORT_VECTOR)) {
+        buf.setInt16(pos, y);
+        pos += 2;
+      }
+    }
+
+    return pos - spos;
+  }
+
+  scale(x, factor) {
+    for (const contour of this.contours) {
+      if (contour.xCoordinates.length === 0) {
+        continue;
+      }
+
+      for (let i = 0, ii = contour.xCoordinates.length; i < ii; i++) {
+        contour.xCoordinates[i] = Math.round(x + (contour.xCoordinates[i] - x) * factor);
+      }
+    }
+  }
+
+}
+
+class CompositeGlyph {
+  constructor({
+    flags,
+    glyphIndex,
+    argument1,
+    argument2,
+    transf,
+    instructions
+  }) {
+    this.flags = flags;
+    this.glyphIndex = glyphIndex;
+    this.argument1 = argument1;
+    this.argument2 = argument2;
+    this.transf = transf;
+    this.instructions = instructions;
+  }
+
+  static parse(pos, glyf) {
+    const spos = pos;
+    const transf = [];
+    let flags = glyf.getUint16(pos);
+    const glyphIndex = glyf.getUint16(pos + 2);
+    pos += 4;
+    let argument1, argument2;
+
+    if (flags & ARG_1_AND_2_ARE_WORDS) {
+      if (flags & ARGS_ARE_XY_VALUES) {
+        argument1 = glyf.getInt16(pos);
+        argument2 = glyf.getInt16(pos + 2);
+      } else {
+        argument1 = glyf.getUint16(pos);
+        argument2 = glyf.getUint16(pos + 2);
+      }
+
+      pos += 4;
+      flags ^= ARG_1_AND_2_ARE_WORDS;
+    } else {
+      if (flags & ARGS_ARE_XY_VALUES) {
+        argument1 = glyf.getInt8(pos);
+        argument2 = glyf.getInt8(pos + 1);
+      } else {
+        argument1 = glyf.getUint8(pos);
+        argument2 = glyf.getUint8(pos + 1);
+      }
+
+      pos += 2;
+    }
+
+    if (flags & WE_HAVE_A_SCALE) {
+      transf.push(glyf.getUint16(pos));
+      pos += 2;
+    } else if (flags & WE_HAVE_AN_X_AND_Y_SCALE) {
+      transf.push(glyf.getUint16(pos), glyf.getUint16(pos + 2));
+      pos += 4;
+    } else if (flags & WE_HAVE_A_TWO_BY_TWO) {
+      transf.push(glyf.getUint16(pos), glyf.getUint16(pos + 2), glyf.getUint16(pos + 4), glyf.getUint16(pos 
+ 6));
+      pos += 8;
+    }
+
+    let instructions = null;
+
+    if (flags & WE_HAVE_INSTRUCTIONS) {
+      const instructionLength = glyf.getUint16(pos);
+      pos += 2;
+      instructions = new Uint8Array(glyf).slice(pos, pos + instructionLength);
+      pos += instructionLength;
+    }
+
+    return [pos - spos, new CompositeGlyph({
+      flags,
+      glyphIndex,
+      argument1,
+      argument2,
+      transf,
+      instructions
+    })];
+  }
+
+  getSize() {
+    let size = 2 + 2 + this.transf.length * 2;
+
+    if (this.flags & WE_HAVE_INSTRUCTIONS) {
+      size += 2 + this.instructions.length;
+    }
+
+    size += 2;
+
+    if (this.flags & 2) {
+      if (!(this.argument1 >= -128 && this.argument1 <= 127 && this.argument2 >= -128 && this.argument2 <= 
127)) {
+        size += 2;
+      }
+    } else {
+      if (!(this.argument1 >= 0 && this.argument1 <= 255 && this.argument2 >= 0 && this.argument2 <= 255)) {
+        size += 2;
+      }
+    }
+
+    return size;
+  }
+
+  write(pos, buf) {
+    const spos = pos;
+
+    if (this.flags & ARGS_ARE_XY_VALUES) {
+      if (!(this.argument1 >= -128 && this.argument1 <= 127 && this.argument2 >= -128 && this.argument2 <= 
127)) {
+        this.flags |= ARG_1_AND_2_ARE_WORDS;
+      }
+    } else {
+      if (!(this.argument1 >= 0 && this.argument1 <= 255 && this.argument2 >= 0 && this.argument2 <= 255)) {
+        this.flags |= ARG_1_AND_2_ARE_WORDS;
+      }
+    }
+
+    buf.setUint16(pos, this.flags);
+    buf.setUint16(pos + 2, this.glyphIndex);
+    pos += 4;
+
+    if (this.flags & ARG_1_AND_2_ARE_WORDS) {
+      if (this.flags & ARGS_ARE_XY_VALUES) {
+        buf.setInt16(pos, this.argument1);
+        buf.setInt16(pos + 2, this.argument2);
+      } else {
+        buf.setUint16(pos, this.argument1);
+        buf.setUint16(pos + 2, this.argument2);
+      }
+
+      pos += 4;
+    } else {
+      buf.setUint8(pos, this.argument1);
+      buf.setUint8(pos + 1, this.argument2);
+      pos += 2;
+    }
+
+    if (this.flags & WE_HAVE_INSTRUCTIONS) {
+      buf.setUint16(pos, this.instructions.length);
+      pos += 2;
+
+      if (this.instructions.length) {
+        new Uint8Array(buf.buffer, 0, buf.buffer.byteLength).set(this.instructions, pos);
+        pos += this.instructions.length;
+      }
+    }
+
+    return pos - spos;
+  }
+
+  scale(x, factor) {}
+
+}
+
+/***/ }),
+/* 53 */
+/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
+
+
+
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.OpenTypeFileBuilder = void 0;
+
+var _core_utils = __w_pdfjs_require__(8);
+
+var _util = __w_pdfjs_require__(2);
+
+function writeInt16(dest, offset, num) {
+  dest[offset] = num >> 8 & 0xff;
+  dest[offset + 1] = num & 0xff;
+}
+
+function writeInt32(dest, offset, num) {
+  dest[offset] = num >> 24 & 0xff;
+  dest[offset + 1] = num >> 16 & 0xff;
+  dest[offset + 2] = num >> 8 & 0xff;
+  dest[offset + 3] = num & 0xff;
+}
+
+function writeData(dest, offset, data) {
+  if (data instanceof Uint8Array) {
+    dest.set(data, offset);
+  } else if (typeof data === "string") {
+    for (let i = 0, ii = data.length; i < ii; i++) {
+      dest[offset++] = data.charCodeAt(i) & 0xff;
+    }
+  } else {
+    for (let i = 0, ii = data.length; i < ii; i++) {
+      dest[offset++] = data[i] & 0xff;
+    }
+  }
+}
+
+const OTF_HEADER_SIZE = 12;
+const OTF_TABLE_ENTRY_SIZE = 16;
+
+class OpenTypeFileBuilder {
+  constructor(sfnt) {
+    this.sfnt = sfnt;
+    this.tables = Object.create(null);
+  }
+
+  static getSearchParams(entriesCount, entrySize) {
+    let maxPower2 = 1,
+        log2 = 0;
+
+    while ((maxPower2 ^ entriesCount) > maxPower2) {
+      maxPower2 <<= 1;
+      log2++;
+    }
+
+    const searchRange = maxPower2 * entrySize;
+    return {
+      range: searchRange,
+      entry: log2,
+      rangeShift: entrySize * entriesCount - searchRange
+    };
+  }
+
+  toArray() {
+    let sfnt = this.sfnt;
+    const tables = this.tables;
+    const tablesNames = Object.keys(tables);
+    tablesNames.sort();
+    const numTables = tablesNames.length;
+    let i, j, jj, table, tableName;
+    let offset = OTF_HEADER_SIZE + numTables * OTF_TABLE_ENTRY_SIZE;
+    const tableOffsets = [offset];
+
+    for (i = 0; i < numTables; i++) {
+      table = tables[tablesNames[i]];
+      const paddedLength = (table.length + 3 & ~3) >>> 0;
+      offset += paddedLength;
+      tableOffsets.push(offset);
+    }
+
+    const file = new Uint8Array(offset);
+
+    for (i = 0; i < numTables; i++) {
+      table = tables[tablesNames[i]];
+      writeData(file, tableOffsets[i], table);
+    }
+
+    if (sfnt === "true") {
+      sfnt = (0, _util.string32)(0x00010000);
+    }
+
+    file[0] = sfnt.charCodeAt(0) & 0xff;
+    file[1] = sfnt.charCodeAt(1) & 0xff;
+    file[2] = sfnt.charCodeAt(2) & 0xff;
+    file[3] = sfnt.charCodeAt(3) & 0xff;
+    writeInt16(file, 4, numTables);
+    const searchParams = OpenTypeFileBuilder.getSearchParams(numTables, 16);
+    writeInt16(file, 6, searchParams.range);
+    writeInt16(file, 8, searchParams.entry);
+    writeInt16(file, 10, searchParams.rangeShift);
+    offset = OTF_HEADER_SIZE;
+
+    for (i = 0; i < numTables; i++) {
+      tableName = tablesNames[i];
+      file[offset] = tableName.charCodeAt(0) & 0xff;
+      file[offset + 1] = tableName.charCodeAt(1) & 0xff;
+      file[offset + 2] = tableName.charCodeAt(2) & 0xff;
+      file[offset + 3] = tableName.charCodeAt(3) & 0xff;
+      let checksum = 0;
+
+      for (j = tableOffsets[i], jj = tableOffsets[i + 1]; j < jj; j += 4) {
+        const quad = (0, _core_utils.readUint32)(file, j);
+        checksum = checksum + quad >>> 0;
+      }
+
+      writeInt32(file, offset + 4, checksum);
+      writeInt32(file, offset + 8, tableOffsets[i]);
+      writeInt32(file, offset + 12, tables[tableName].length);
+      offset += OTF_TABLE_ENTRY_SIZE;
+    }
+
+    return file;
+  }
+
+  addTable(tag, data) {
+    if (tag in this.tables) {
+      throw new Error("Table " + tag + " already exists");
+    }
+
+    this.tables[tag] = data;
+  }
+
+}
+
+exports.OpenTypeFileBuilder = OpenTypeFileBuilder;
+
+/***/ }),
+/* 54 */
+/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
+
+
+
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.Type1Font = void 0;
+
+var _cff_parser = __w_pdfjs_require__(45);
+
+var _fonts_utils = __w_pdfjs_require__(18);
+
+var _core_utils = __w_pdfjs_require__(8);
+
+var _stream = __w_pdfjs_require__(10);
+
+var _type1_parser = __w_pdfjs_require__(55);
+
+var _util = __w_pdfjs_require__(2);
+
+function findBlock(streamBytes, signature, startIndex) {
+  const streamBytesLength = streamBytes.length;
+  const signatureLength = signature.length;
+  const scanLength = streamBytesLength - signatureLength;
+  let i = startIndex,
+      found = false;
+
+  while (i < scanLength) {
+    let j = 0;
+
+    while (j < signatureLength && streamBytes[i + j] === signature[j]) {
+      j++;
+    }
+
+    if (j >= signatureLength) {
+      i += j;
+
+      while (i < streamBytesLength && (0, _core_utils.isWhiteSpace)(streamBytes[i])) {
+        i++;
+      }
+
+      found = true;
+      break;
+    }
+
+    i++;
+  }
+
+  return {
+    found,
+    length: i
+  };
+}
+
+function getHeaderBlock(stream, suggestedLength) {
+  const EEXEC_SIGNATURE = [0x65, 0x65, 0x78, 0x65, 0x63];
+  const streamStartPos = stream.pos;
+  let headerBytes, headerBytesLength, block;
+
+  try {
+    headerBytes = stream.getBytes(suggestedLength);
+    headerBytesLength = headerBytes.length;
+  } catch (ex) {}
+
+  if (headerBytesLength === suggestedLength) {
+    block = findBlock(headerBytes, EEXEC_SIGNATURE, suggestedLength - 2 * EEXEC_SIGNATURE.length);
+
+    if (block.found && block.length === suggestedLength) {
+      return {
+        stream: new _stream.Stream(headerBytes),
+        length: suggestedLength
+      };
+    }
+  }
+
+  (0, _util.warn)('Invalid "Length1" property in Type1 font -- trying to recover.');
+  stream.pos = streamStartPos;
+  const SCAN_BLOCK_LENGTH = 2048;
+  let actualLength;
+
+  while (true) {
+    const scanBytes = stream.peekBytes(SCAN_BLOCK_LENGTH);
+    block = findBlock(scanBytes, EEXEC_SIGNATURE, 0);
+
+    if (block.length === 0) {
+      break;
+    }
+
+    stream.pos += block.length;
+
+    if (block.found) {
+      actualLength = stream.pos - streamStartPos;
+      break;
+    }
+  }
+
+  stream.pos = streamStartPos;
+
+  if (actualLength) {
+    return {
+      stream: new _stream.Stream(stream.getBytes(actualLength)),
+      length: actualLength
+    };
+  }
+
+  (0, _util.warn)('Unable to recover "Length1" property in Type1 font -- using as is.');
+  return {
+    stream: new _stream.Stream(stream.getBytes(suggestedLength)),
+    length: suggestedLength
+  };
+}
+
+function getEexecBlock(stream, suggestedLength) {
+  const eexecBytes = stream.getBytes();
+  return {
+    stream: new _stream.Stream(eexecBytes),
+    length: eexecBytes.length
+  };
+}
+
+class Type1Font {
+  constructor(name, file, properties) {
+    const PFB_HEADER_SIZE = 6;
+    let headerBlockLength = properties.length1;
+    let eexecBlockLength = properties.length2;
+    let pfbHeader = file.peekBytes(PFB_HEADER_SIZE);
+    const pfbHeaderPresent = pfbHeader[0] === 0x80 && pfbHeader[1] === 0x01;
+
+    if (pfbHeaderPresent) {
+      file.skip(PFB_HEADER_SIZE);
+      headerBlockLength = pfbHeader[5] << 24 | pfbHeader[4] << 16 | pfbHeader[3] << 8 | pfbHeader[2];
+    }
+
+    const headerBlock = getHeaderBlock(file, headerBlockLength);
+    const headerBlockParser = new _type1_parser.Type1Parser(headerBlock.stream, false, 
_fonts_utils.SEAC_ANALYSIS_ENABLED);
+    headerBlockParser.extractFontHeader(properties);
+
+    if (pfbHeaderPresent) {
+      pfbHeader = file.getBytes(PFB_HEADER_SIZE);
+      eexecBlockLength = pfbHeader[5] << 24 | pfbHeader[4] << 16 | pfbHeader[3] << 8 | pfbHeader[2];
+    }
+
+    const eexecBlock = getEexecBlock(file, eexecBlockLength);
+    const eexecBlockParser = new _type1_parser.Type1Parser(eexecBlock.stream, true, 
_fonts_utils.SEAC_ANALYSIS_ENABLED);
+    const data = eexecBlockParser.extractFontProgram(properties);
+
+    for (const key in data.properties) {
+      properties[key] = data.properties[key];
+    }
+
+    const charstrings = data.charstrings;
+    const type2Charstrings = this.getType2Charstrings(charstrings);
+    const subrs = this.getType2Subrs(data.subrs);
+    this.charstrings = charstrings;
+    this.data = this.wrap(name, type2Charstrings, this.charstrings, subrs, properties);
+    this.seacs = this.getSeacs(data.charstrings);
+  }
+
+  get numGlyphs() {
+    return this.charstrings.length + 1;
+  }
+
+  getCharset() {
+    const charset = [".notdef"];
+    const charstrings = this.charstrings;
+
+    for (let glyphId = 0; glyphId < charstrings.length; glyphId++) {
+      charset.push(charstrings[glyphId].glyphName);
+    }
+
+    return charset;
+  }
+
+  getGlyphMapping(properties) {
+    const charstrings = this.charstrings;
+
+    if (properties.composite) {
+      const charCodeToGlyphId = Object.create(null);
+
+      for (let glyphId = 0, charstringsLen = charstrings.length; glyphId < charstringsLen; glyphId++) {
+        const charCode = properties.cMap.charCodeOf(glyphId);
+        charCodeToGlyphId[charCode] = glyphId + 1;
+      }
+
+      return charCodeToGlyphId;
+    }
+
+    const glyphNames = [".notdef"];
+    let builtInEncoding, glyphId;
+
+    for (glyphId = 0; glyphId < charstrings.length; glyphId++) {
+      glyphNames.push(charstrings[glyphId].glyphName);
+    }
+
+    const encoding = properties.builtInEncoding;
+
+    if (encoding) {
+      builtInEncoding = Object.create(null);
+
+      for (const charCode in encoding) {
+        glyphId = glyphNames.indexOf(encoding[charCode]);
+
+        if (glyphId >= 0) {
+          builtInEncoding[charCode] = glyphId;
+        }
+      }
+    }
+
+    return (0, _fonts_utils.type1FontGlyphMapping)(properties, builtInEncoding, glyphNames);
+  }
+
+  hasGlyphId(id) {
+    if (id < 0 || id >= this.numGlyphs) {
+      return false;
+    }
+
+    if (id === 0) {
+      return true;
+    }
+
+    const glyph = this.charstrings[id - 1];
+    return glyph.charstring.length > 0;
+  }
+
+  getSeacs(charstrings) {
+    const seacMap = [];
+
+    for (let i = 0, ii = charstrings.length; i < ii; i++) {
+      const charstring = charstrings[i];
+
+      if (charstring.seac) {
+        seacMap[i + 1] = charstring.seac;
+      }
+    }
+
+    return seacMap;
+  }
+
+  getType2Charstrings(type1Charstrings) {
+    const type2Charstrings = [];
+
+    for (let i = 0, ii = type1Charstrings.length; i < ii; i++) {
+      type2Charstrings.push(type1Charstrings[i].charstring);
+    }
+
+    return type2Charstrings;
+  }
+
+  getType2Subrs(type1Subrs) {
+    let bias = 0;
+    const count = type1Subrs.length;
+
+    if (count < 1133) {
+      bias = 107;
+    } else if (count < 33769) {
+      bias = 1131;
+    } else {
+      bias = 32768;
+    }
+
+    const type2Subrs = [];
+    let i;
+
+    for (i = 0; i < bias; i++) {
+      type2Subrs.push([0x0b]);
+    }
+
+    for (i = 0; i < count; i++) {
+      type2Subrs.push(type1Subrs[i]);
+    }
+
+    return type2Subrs;
+  }
+
+  wrap(name, glyphs, charstrings, subrs, properties) {
+    const cff = new _cff_parser.CFF();
+    cff.header = new _cff_parser.CFFHeader(1, 0, 4, 4);
+    cff.names = [name];
+    const topDict = new _cff_parser.CFFTopDict();
+    topDict.setByName("version", 391);
+    topDict.setByName("Notice", 392);
+    topDict.setByName("FullName", 393);
+    topDict.setByName("FamilyName", 394);
+    topDict.setByName("Weight", 395);
+    topDict.setByName("Encoding", null);
+    topDict.setByName("FontMatrix", properties.fontMatrix);
+    topDict.setByName("FontBBox", properties.bbox);
+    topDict.setByName("charset", null);
+    topDict.setByName("CharStrings", null);
+    topDict.setByName("Private", null);
+    cff.topDict = topDict;
+    const strings = new _cff_parser.CFFStrings();
+    strings.add("Version 0.11");
+    strings.add("See original notice");
+    strings.add(name);
+    strings.add(name);
+    strings.add("Medium");
+    cff.strings = strings;
+    cff.globalSubrIndex = new _cff_parser.CFFIndex();
+    const count = glyphs.length;
+    const charsetArray = [".notdef"];
+    let i, ii;
+
+    for (i = 0; i < count; i++) {
+      const glyphName = charstrings[i].glyphName;
+
+      const index = _cff_parser.CFFStandardStrings.indexOf(glyphName);
+
+      if (index === -1) {
+        strings.add(glyphName);
+      }
+
+      charsetArray.push(glyphName);
+    }
+
+    cff.charset = new _cff_parser.CFFCharset(false, 0, charsetArray);
+    const charStringsIndex = new _cff_parser.CFFIndex();
+    charStringsIndex.add([0x8b, 0x0e]);
+
+    for (i = 0; i < count; i++) {
+      charStringsIndex.add(glyphs[i]);
+    }
+
+    cff.charStrings = charStringsIndex;
+    const privateDict = new _cff_parser.CFFPrivateDict();
+    privateDict.setByName("Subrs", null);
+    const fields = ["BlueValues", "OtherBlues", "FamilyBlues", "FamilyOtherBlues", "StemSnapH", "StemSnapV", 
"BlueShift", "BlueFuzz", "BlueScale", "LanguageGroup", "ExpansionFactor", "ForceBold", "StdHW", "StdVW"];
+
+    for (i = 0, ii = fields.length; i < ii; i++) {
+      const field = fields[i];
+
+      if (!(field in properties.privateData)) {
+        continue;
+      }
+
+      const value = properties.privateData[field];
+
+      if (Array.isArray(value)) {
+        for (let j = value.length - 1; j > 0; j--) {
+          value[j] -= value[j - 1];
+        }
+      }
+
+      privateDict.setByName(field, value);
+    }
+
+    cff.topDict.privateDict = privateDict;
+    const subrIndex = new _cff_parser.CFFIndex();
+
+    for (i = 0, ii = subrs.length; i < ii; i++) {
+      subrIndex.add(subrs[i]);
+    }
+
+    privateDict.subrsIndex = subrIndex;
+    const compiler = new _cff_parser.CFFCompiler(cff);
+    return compiler.compile();
+  }
+
+}
+
+exports.Type1Font = Type1Font;
+
+/***/ }),
+/* 55 */
+/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
+
+
+
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.Type1Parser = void 0;
+
+var _encodings = __w_pdfjs_require__(19);
+
+var _core_utils = __w_pdfjs_require__(8);
+
+var _stream = __w_pdfjs_require__(10);
+
+var _util = __w_pdfjs_require__(2);
+
+const HINTING_ENABLED = false;
+
+const Type1CharString = function Type1CharStringClosure() {
+  const COMMAND_MAP = {
+    hstem: [1],
+    vstem: [3],
+    vmoveto: [4],
+    rlineto: [5],
+    hlineto: [6],
+    vlineto: [7],
+    rrcurveto: [8],
+    callsubr: [10],
+    flex: [12, 35],
+    drop: [12, 18],
+    endchar: [14],
+    rmoveto: [21],
+    hmoveto: [22],
+    vhcurveto: [30],
+    hvcurveto: [31]
+  };
+
+  class Type1CharString {
+    constructor() {
+      this.width = 0;
+      this.lsb = 0;
+      this.flexing = false;
+      this.output = [];
+      this.stack = [];
+    }
+
+    convert(encoded, subrs, seacAnalysisEnabled) {
+      const count = encoded.length;
+      let error = false;
+      let wx, sbx, subrNumber;
+
+      for (let i = 0; i < count; i++) {
+        let value = encoded[i];
+
+        if (value < 32) {
+          if (value === 12) {
+            value = (value << 8) + encoded[++i];
+          }
+
+          switch (value) {
+            case 1:
+              if (!HINTING_ENABLED) {
+                this.stack = [];
+                break;
+              }
+
+              error = this.executeCommand(2, COMMAND_MAP.hstem);
+              break;
+
+            case 3:
+              if (!HINTING_ENABLED) {
+                this.stack = [];
+                break;
+              }
+
+              error = this.executeCommand(2, COMMAND_MAP.vstem);
+              break;
+
+            case 4:
+              if (this.flexing) {
+                if (this.stack.length < 1) {
+                  error = true;
+                  break;
+                }
+
+                const dy = this.stack.pop();
+                this.stack.push(0, dy);
+                break;
+              }
+
+              error = this.executeCommand(1, COMMAND_MAP.vmoveto);
+              break;
+
+            case 5:
+              error = this.executeCommand(2, COMMAND_MAP.rlineto);
+              break;
+
+            case 6:
+              error = this.executeCommand(1, COMMAND_MAP.hlineto);
+              break;
+
+            case 7:
+              error = this.executeCommand(1, COMMAND_MAP.vlineto);
+              break;
+
+            case 8:
+              error = this.executeCommand(6, COMMAND_MAP.rrcurveto);
+              break;
+
+            case 9:
+              this.stack = [];
+              break;
+
+            case 10:
+              if (this.stack.length < 1) {
+                error = true;
+                break;
+              }
+
+              subrNumber = this.stack.pop();
+
+              if (!subrs[subrNumber]) {
+                error = true;
+                break;
+              }
+
+              error = this.convert(subrs[subrNumber], subrs, seacAnalysisEnabled);
+              break;
+
+            case 11:
+              return error;
+
+            case 13:
+              if (this.stack.length < 2) {
+                error = true;
+                break;
+              }
+
+              wx = this.stack.pop();
+              sbx = this.stack.pop();
+              this.lsb = sbx;
+              this.width = wx;
+              this.stack.push(wx, sbx);
+              error = this.executeCommand(2, COMMAND_MAP.hmoveto);
+              break;
+
+            case 14:
+              this.output.push(COMMAND_MAP.endchar[0]);
+              break;
+
+            case 21:
+              if (this.flexing) {
+                break;
+              }
+
+              error = this.executeCommand(2, COMMAND_MAP.rmoveto);
+              break;
+
+            case 22:
+              if (this.flexing) {
+                this.stack.push(0);
+                break;
+              }
+
+              error = this.executeCommand(1, COMMAND_MAP.hmoveto);
+              break;
+
+            case 30:
+              error = this.executeCommand(4, COMMAND_MAP.vhcurveto);
+              break;
+
+            case 31:
+              error = this.executeCommand(4, COMMAND_MAP.hvcurveto);
+              break;
+
+            case (12 << 8) + 0:
+              this.stack = [];
+              break;
+
+            case (12 << 8) + 1:
+              if (!HINTING_ENABLED) {
+                this.stack = [];
+                break;
+              }
+
+              error = this.executeCommand(2, COMMAND_MAP.vstem);
+              break;
+
+            case (12 << 8) + 2:
+              if (!HINTING_ENABLED) {
+                this.stack = [];
+                break;
+              }
+
+              error = this.executeCommand(2, COMMAND_MAP.hstem);
+              break;
+
+            case (12 << 8) + 6:
+              if (seacAnalysisEnabled) {
+                const asb = this.stack[this.stack.length - 5];
+                this.seac = this.stack.splice(-4, 4);
+                this.seac[0] += this.lsb - asb;
+                error = this.executeCommand(0, COMMAND_MAP.endchar);
+              } else {
+                error = this.executeCommand(4, COMMAND_MAP.endchar);
+              }
+
+              break;
+
+            case (12 << 8) + 7:
+              if (this.stack.length < 4) {
+                error = true;
+                break;
+              }
+
+              this.stack.pop();
+              wx = this.stack.pop();
+              const sby = this.stack.pop();
+              sbx = this.stack.pop();
+              this.lsb = sbx;
+              this.width = wx;
+              this.stack.push(wx, sbx, sby);
+              error = this.executeCommand(3, COMMAND_MAP.rmoveto);
+              break;
+
+            case (12 << 8) + 12:
+              if (this.stack.length < 2) {
+                error = true;
+                break;
+              }
+
+              const num2 = this.stack.pop();
+              const num1 = this.stack.pop();
+              this.stack.push(num1 / num2);
+              break;
+
+            case (12 << 8) + 16:
+              if (this.stack.length < 2) {
+                error = true;
+                break;
+              }
+
+              subrNumber = this.stack.pop();
+              const numArgs = this.stack.pop();
+
+              if (subrNumber === 0 && numArgs === 3) {
+                const flexArgs = this.stack.splice(this.stack.length - 17, 17);
+                this.stack.push(flexArgs[2] + flexArgs[0], flexArgs[3] + flexArgs[1], flexArgs[4], 
flexArgs[5], flexArgs[6], flexArgs[7], flexArgs[8], flexArgs[9], flexArgs[10], flexArgs[11], flexArgs[12], 
flexArgs[13], flexArgs[14]);
+                error = this.executeCommand(13, COMMAND_MAP.flex, true);
+                this.flexing = false;
+                this.stack.push(flexArgs[15], flexArgs[16]);
+              } else if (subrNumber === 1 && numArgs === 0) {
+                this.flexing = true;
+              }
+
+              break;
+
+            case (12 << 8) + 17:
+              break;
+
+            case (12 << 8) + 33:
+              this.stack = [];
+              break;
+
+            default:
+              (0, _util.warn)('Unknown type 1 charstring command of "' + value + '"');
+              break;
+          }
+
+          if (error) {
+            break;
+          }
+
+          continue;
+        } else if (value <= 246) {
+          value -= 139;
+        } else if (value <= 250) {
+          value = (value - 247) * 256 + encoded[++i] + 108;
+        } else if (value <= 254) {
+          value = -((value - 251) * 256) - encoded[++i] - 108;
+        } else {
+          value = (encoded[++i] & 0xff) << 24 | (encoded[++i] & 0xff) << 16 | (encoded[++i] & 0xff) << 8 | 
(encoded[++i] & 0xff) << 0;
+        }
+
+        this.stack.push(value);
+      }
+
+      return error;
+    }
+
+    executeCommand(howManyArgs, command, keepStack) {
+      const stackLength = this.stack.length;
+
+      if (howManyArgs > stackLength) {
+        return true;
+      }
+
+      const start = stackLength - howManyArgs;
+
+      for (let i = start; i < stackLength; i++) {
+        let value = this.stack[i];
+
+        if (Number.isInteger(value)) {
+          this.output.push(28, value >> 8 & 0xff, value & 0xff);
+        } else {
+          value = 65536 * value | 0;
+          this.output.push(255, value >> 24 & 0xff, value >> 16 & 0xff, value >> 8 & 0xff, value & 0xff);
+        }
+      }
+
+      this.output.push.apply(this.output, command);
+
+      if (keepStack) {
+        this.stack.splice(start, howManyArgs);
+      } else {
+        this.stack.length = 0;
+      }
+
+      return false;
+    }
+
+  }
+
+  return Type1CharString;
+}();
+
+const Type1Parser = function Type1ParserClosure() {
+  const EEXEC_ENCRYPT_KEY = 55665;
+  const CHAR_STRS_ENCRYPT_KEY = 4330;
+
+  function isHexDigit(code) {
+    return code >= 48 && code <= 57 || code >= 65 && code <= 70 || code >= 97 && code <= 102;
+  }
+
+  function decrypt(data, key, discardNumber) {
+    if (discardNumber >= data.length) {
+      return new Uint8Array(0);
+    }
+
+    const c1 = 52845,
+          c2 = 22719;
+    let r = key | 0,
+        i,
+        j;
+
+    for (i = 0; i < discardNumber; i++) {
+      r = (data[i] + r) * c1 + c2 & (1 << 16) - 1;
+    }
+
+    const count = data.length - discardNumber;
+    const decrypted = new Uint8Array(count);
+
+    for (i = discardNumber, j = 0; j < count; i++, j++) {
+      const value = data[i];
+      decrypted[j] = value ^ r >> 8;
+      r = (value + r) * c1 + c2 & (1 << 16) - 1;
+    }
+
+    return decrypted;
+  }
+
+  function decryptAscii(data, key, discardNumber) {
+    const c1 = 52845,
+          c2 = 22719;
+    let r = key | 0;
+    const count = data.length,
+          maybeLength = count >>> 1;
+    const decrypted = new Uint8Array(maybeLength);
+    let i, j;
+
+    for (i = 0, j = 0; i < count; i++) {
+      const digit1 = data[i];
+
+      if (!isHexDigit(digit1)) {
+        continue;
+      }
+
+      i++;
+      let digit2;
+
+      while (i < count && !isHexDigit(digit2 = data[i])) {
+        i++;
+      }
+
+      if (i < count) {
+        const value = parseInt(String.fromCharCode(digit1, digit2), 16);
+        decrypted[j++] = value ^ r >> 8;
+        r = (value + r) * c1 + c2 & (1 << 16) - 1;
+      }
+    }
+
+    return decrypted.slice(discardNumber, j);
+  }
+
+  function isSpecial(c) {
+    return c === 0x2f || c === 0x5b || c === 0x5d || c === 0x7b || c === 0x7d || c === 0x28 || c === 0x29;
+  }
+
+  class Type1Parser {
+    constructor(stream, encrypted, seacAnalysisEnabled) {
+      if (encrypted) {
+        const data = stream.getBytes();
+        const isBinary = !((isHexDigit(data[0]) || (0, _core_utils.isWhiteSpace)(data[0])) && 
isHexDigit(data[1]) && isHexDigit(data[2]) && isHexDigit(data[3]) && isHexDigit(data[4]) && 
isHexDigit(data[5]) && isHexDigit(data[6]) && isHexDigit(data[7]));
+        stream = new _stream.Stream(isBinary ? decrypt(data, EEXEC_ENCRYPT_KEY, 4) : decryptAscii(data, 
EEXEC_ENCRYPT_KEY, 4));
+      }
+
+      this.seacAnalysisEnabled = !!seacAnalysisEnabled;
+      this.stream = stream;
+      this.nextChar();
+    }
+
+    readNumberArray() {
+      this.getToken();
+      const array = [];
+
+      while (true) {
+        const token = this.getToken();
+
+        if (token === null || token === "]" || token === "}") {
+          break;
+        }
+
+        array.push(parseFloat(token || 0));
+      }
+
+      return array;
+    }
+
+    readNumber() {
+      const token = this.getToken();
+      return parseFloat(token || 0);
+    }
+
+    readInt() {
+      const token = this.getToken();
+      return parseInt(token || 0, 10) | 0;
+    }
+
+    readBoolean() {
+      const token = this.getToken();
+      return token === "true" ? 1 : 0;
+    }
+
+    nextChar() {
+      return this.currentChar = this.stream.getByte();
+    }
+
+    prevChar() {
+      this.stream.skip(-2);
+      return this.currentChar = this.stream.getByte();
+    }
+
+    getToken() {
+      let comment = false;
+      let ch = this.currentChar;
+
+      while (true) {
+        if (ch === -1) {
+          return null;
+        }
+
+        if (comment) {
+          if (ch === 0x0a || ch === 0x0d) {
+            comment = false;
+          }
+        } else if (ch === 0x25) {
+          comment = true;
+        } else if (!(0, _core_utils.isWhiteSpace)(ch)) {
+          break;
+        }
+
+        ch = this.nextChar();
+      }
+
+      if (isSpecial(ch)) {
+        this.nextChar();
+        return String.fromCharCode(ch);
+      }
+
+      let token = "";
+
+      do {
+        token += String.fromCharCode(ch);
+        ch = this.nextChar();
+      } while (ch >= 0 && !(0, _core_utils.isWhiteSpace)(ch) && !isSpecial(ch));
+
+      return token;
+    }
+
+    readCharStrings(bytes, lenIV) {
+      if (lenIV === -1) {
+        return bytes;
+      }
+
+      return decrypt(bytes, CHAR_STRS_ENCRYPT_KEY, lenIV);
+    }
+
+    extractFontProgram(properties) {
+      const stream = this.stream;
+      const subrs = [],
+            charstrings = [];
+      const privateData = Object.create(null);
+      privateData.lenIV = 4;
+      const program = {
+        subrs: [],
+        charstrings: [],
+        properties: {
+          privateData
+        }
+      };
+      let token, length, data, lenIV, encoded;
+
+      while ((token = this.getToken()) !== null) {
+        if (token !== "/") {
+          continue;
+        }
+
+        token = this.getToken();
+
+        switch (token) {
+          case "CharStrings":
+            this.getToken();
+            this.getToken();
+            this.getToken();
+            this.getToken();
+
+            while (true) {
+              token = this.getToken();
+
+              if (token === null || token === "end") {
+                break;
+              }
+
+              if (token !== "/") {
+                continue;
+              }
+
+              const glyph = this.getToken();
+              length = this.readInt();
+              this.getToken();
+              data = length > 0 ? stream.getBytes(length) : new Uint8Array(0);
+              lenIV = program.properties.privateData.lenIV;
+              encoded = this.readCharStrings(data, lenIV);
+              this.nextChar();
+              token = this.getToken();
+
+              if (token === "noaccess") {
+                this.getToken();
+              } else if (token === "/") {
+                this.prevChar();
+              }
+
+              charstrings.push({
+                glyph,
+                encoded
+              });
+            }
+
+            break;
+
+          case "Subrs":
+            this.readInt();
+            this.getToken();
+
+            while (this.getToken() === "dup") {
+              const index = this.readInt();
+              length = this.readInt();
+              this.getToken();
+              data = length > 0 ? stream.getBytes(length) : new Uint8Array(0);
+              lenIV = program.properties.privateData.lenIV;
+              encoded = this.readCharStrings(data, lenIV);
+              this.nextChar();
+              token = this.getToken();
+
+              if (token === "noaccess") {
+                this.getToken();
+              }
+
+              subrs[index] = encoded;
+            }
+
+            break;
+
+          case "BlueValues":
+          case "OtherBlues":
+          case "FamilyBlues":
+          case "FamilyOtherBlues":
+            const blueArray = this.readNumberArray();
+
+            if (blueArray.length > 0 && blueArray.length % 2 === 0 && HINTING_ENABLED) {
+              program.properties.privateData[token] = blueArray;
+            }
+
+            break;
+
+          case "StemSnapH":
+          case "StemSnapV":
+            program.properties.privateData[token] = this.readNumberArray();
+            break;
+
+          case "StdHW":
+          case "StdVW":
+            program.properties.privateData[token] = this.readNumberArray()[0];
+            break;
+
+          case "BlueShift":
+          case "lenIV":
+          case "BlueFuzz":
+          case "BlueScale":
+          case "LanguageGroup":
+          case "ExpansionFactor":
+            program.properties.privateData[token] = this.readNumber();
+            break;
+
+          case "ForceBold":
+            program.properties.privateData[token] = this.readBoolean();
+            break;
+        }
+      }
+
+      for (let i = 0; i < charstrings.length; i++) {
+        const glyph = charstrings[i].glyph;
+        encoded = charstrings[i].encoded;
+        const charString = new Type1CharString();
+        const error = charString.convert(encoded, subrs, this.seacAnalysisEnabled);
+        let output = charString.output;
+
+        if (error) {
+          output = [14];
+        }
+
+        const charStringObject = {
+          glyphName: glyph,
+          charstring: output,
+          width: charString.width,
+          lsb: charString.lsb,
+          seac: charString.seac
+        };
+
+        if (glyph === ".notdef") {
+          program.charstrings.unshift(charStringObject);
+        } else {
+          program.charstrings.push(charStringObject);
+        }
+
+        if (properties.builtInEncoding) {
+          const index = properties.builtInEncoding.indexOf(glyph);
+
+          if (index > -1 && properties.widths[index] === undefined && index >= properties.firstChar && index 
<= properties.lastChar) {
+            properties.widths[index] = charString.width;
+          }
+        }
+      }
+
+      return program;
+    }
+
+    extractFontHeader(properties) {
+      let token;
+
+      while ((token = this.getToken()) !== null) {
+        if (token !== "/") {
+          continue;
+        }
+
+        token = this.getToken();
+
+        switch (token) {
+          case "FontMatrix":
+            const matrix = this.readNumberArray();
+            properties.fontMatrix = matrix;
+            break;
+
+          case "Encoding":
+            const encodingArg = this.getToken();
+            let encoding;
+
+            if (!/^\d+$/.test(encodingArg)) {
+              encoding = (0, _encodings.getEncoding)(encodingArg);
+            } else {
+              encoding = [];
+              const size = parseInt(encodingArg, 10) | 0;
+              this.getToken();
+
+              for (let j = 0; j < size; j++) {
+                token = this.getToken();
+
+                while (token !== "dup" && token !== "def") {
+                  token = this.getToken();
+
+                  if (token === null) {
+                    return;
+                  }
+                }
+
+                if (token === "def") {
+                  break;
+                }
+
+                const index = this.readInt();
+                this.getToken();
+                const glyph = this.getToken();
+                encoding[index] = glyph;
+                this.getToken();
+              }
+            }
+
+            properties.builtInEncoding = encoding;
+            break;
+
+          case "FontBBox":
+            const fontBBox = this.readNumberArray();
+            properties.ascent = Math.max(fontBBox[3], fontBBox[1]);
+            properties.descent = Math.min(fontBBox[1], fontBBox[3]);
+            properties.ascentScaled = true;
+            break;
+        }
+      }
+    }
+
+  }
+
+  return Type1Parser;
+}();
+
+exports.Type1Parser = Type1Parser;
+
+/***/ }),
+/* 56 */
+/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
+
+
+
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.Pattern = void 0;
+exports.getTilingPatternIR = getTilingPatternIR;
+
+var _util = __w_pdfjs_require__(2);
+
+var _base_stream = __w_pdfjs_require__(9);
+
+var _colorspace = __w_pdfjs_require__(24);
+
+var _core_utils = __w_pdfjs_require__(8);
+
+const ShadingType = {
+  FUNCTION_BASED: 1,
+  AXIAL: 2,
+  RADIAL: 3,
+  FREE_FORM_MESH: 4,
+  LATTICE_FORM_MESH: 5,
+  COONS_PATCH_MESH: 6,
+  TENSOR_PATCH_MESH: 7
+};
+
+class Pattern {
+  constructor() {
+    (0, _util.unreachable)("Cannot initialize Pattern.");
+  }
+
+  static parseShading(shading, xref, res, handler, pdfFunctionFactory, localColorSpaceCache) {
+    const dict = shading instanceof _base_stream.BaseStream ? shading.dict : shading;
+    const type = dict.get("ShadingType");
+
+    try {
+      switch (type) {
+        case ShadingType.AXIAL:
+        case ShadingType.RADIAL:
+          return new RadialAxialShading(dict, xref, res, pdfFunctionFactory, localColorSpaceCache);
+
+        case ShadingType.FREE_FORM_MESH:
+        case ShadingType.LATTICE_FORM_MESH:
+        case ShadingType.COONS_PATCH_MESH:
+        case ShadingType.TENSOR_PATCH_MESH:
+          return new MeshShading(shading, xref, res, pdfFunctionFactory, localColorSpaceCache);
+
+        default:
+          throw new _util.FormatError("Unsupported ShadingType: " + type);
+      }
+    } catch (ex) {
+      if (ex instanceof _core_utils.MissingDataException) {
+        throw ex;
+      }
+
+      handler.send("UnsupportedFeature", {
+        featureId: _util.UNSUPPORTED_FEATURES.shadingPattern
+      });
+      (0, _util.warn)(ex);
+      return new DummyShading();
+    }
+  }
+
+}
+
+exports.Pattern = Pattern;
+
+class BaseShading {
+  static get SMALL_NUMBER() {
+    return (0, _util.shadow)(this, "SMALL_NUMBER", 1e-6);
+  }
+
+  constructor() {
+    if (this.constructor === BaseShading) {
+      (0, _util.unreachable)("Cannot initialize BaseShading.");
+    }
+  }
+
+  getIR() {
+    (0, _util.unreachable)("Abstract method `getIR` called.");
+  }
+
+}
+
+class RadialAxialShading extends BaseShading {
+  constructor(dict, xref, resources, pdfFunctionFactory, localColorSpaceCache) {
+    super();
+    this.coordsArr = dict.getArray("Coords");
+    this.shadingType = dict.get("ShadingType");
+
+    const cs = _colorspace.ColorSpace.parse({
+      cs: dict.getRaw("CS") || dict.getRaw("ColorSpace"),
+      xref,
+      resources,
+      pdfFunctionFactory,
+      localColorSpaceCache
+    });
+
+    const bbox = dict.getArray("BBox");
+
+    if (Array.isArray(bbox) && bbox.length === 4) {
+      this.bbox = _util.Util.normalizeRect(bbox);
+    } else {
+      this.bbox = null;
+    }
+
+    let t0 = 0.0,
+        t1 = 1.0;
+
+    if (dict.has("Domain")) {
+      const domainArr = dict.getArray("Domain");
+      t0 = domainArr[0];
+      t1 = domainArr[1];
+    }
+
+    let extendStart = false,
+        extendEnd = false;
+
+    if (dict.has("Extend")) {
+      const extendArr = dict.getArray("Extend");
+      extendStart = extendArr[0];
+      extendEnd = extendArr[1];
+    }
+
+    if (this.shadingType === ShadingType.RADIAL && (!extendStart || !extendEnd)) {
+      const [x1, y1, r1, x2, y2, r2] = this.coordsArr;
+      const distance = Math.hypot(x1 - x2, y1 - y2);
+
+      if (r1 <= r2 + distance && r2 <= r1 + distance) {
+        (0, _util.warn)("Unsupported radial gradient.");
+      }
+    }
+
+    this.extendStart = extendStart;
+    this.extendEnd = extendEnd;
+    const fnObj = dict.getRaw("Function");
+    const fn = pdfFunctionFactory.createFromArray(fnObj);
+    const NUMBER_OF_SAMPLES = 10;
+    const step = (t1 - t0) / NUMBER_OF_SAMPLES;
+    const colorStops = this.colorStops = [];
+
+    if (t0 >= t1 || step <= 0) {
+      (0, _util.info)("Bad shading domain.");
+      return;
+    }
+
+    const color = new Float32Array(cs.numComps),
+          ratio = new Float32Array(1);
+    let rgbColor;
+
+    for (let i = 0; i <= NUMBER_OF_SAMPLES; i++) {
+      ratio[0] = t0 + i * step;
+      fn(ratio, 0, color, 0);
+      rgbColor = cs.getRgb(color, 0);
+
+      const cssColor = _util.Util.makeHexColor(rgbColor[0], rgbColor[1], rgbColor[2]);
+
+      colorStops.push([i / NUMBER_OF_SAMPLES, cssColor]);
+    }
+
+    let background = "transparent";
+
+    if (dict.has("Background")) {
+      rgbColor = cs.getRgb(dict.get("Background"), 0);
+      background = _util.Util.makeHexColor(rgbColor[0], rgbColor[1], rgbColor[2]);
+    }
+
+    if (!extendStart) {
+      colorStops.unshift([0, background]);
+      colorStops[1][0] += BaseShading.SMALL_NUMBER;
+    }
+
+    if (!extendEnd) {
+      colorStops[colorStops.length - 1][0] -= BaseShading.SMALL_NUMBER;
+      colorStops.push([1, background]);
+    }
+
+    this.colorStops = colorStops;
+  }
+
+  getIR() {
+    const coordsArr = this.coordsArr;
+    const shadingType = this.shadingType;
+    let type, p0, p1, r0, r1;
+
+    if (shadingType === ShadingType.AXIAL) {
+      p0 = [coordsArr[0], coordsArr[1]];
+      p1 = [coordsArr[2], coordsArr[3]];
+      r0 = null;
+      r1 = null;
+      type = "axial";
+    } else if (shadingType === ShadingType.RADIAL) {
+      p0 = [coordsArr[0], coordsArr[1]];
+      p1 = [coordsArr[3], coordsArr[4]];
+      r0 = coordsArr[2];
+      r1 = coordsArr[5];
+      type = "radial";
+    } else {
+      (0, _util.unreachable)(`getPattern type unknown: ${shadingType}`);
+    }
+
+    return ["RadialAxial", type, this.bbox, this.colorStops, p0, p1, r0, r1];
+  }
+
+}
+
+class MeshStreamReader {
+  constructor(stream, context) {
+    this.stream = stream;
+    this.context = context;
+    this.buffer = 0;
+    this.bufferLength = 0;
+    const numComps = context.numComps;
+    this.tmpCompsBuf = new Float32Array(numComps);
+    const csNumComps = context.colorSpace.numComps;
+    this.tmpCsCompsBuf = context.colorFn ? new Float32Array(csNumComps) : this.tmpCompsBuf;
+  }
+
+  get hasData() {
+    if (this.stream.end) {
+      return this.stream.pos < this.stream.end;
+    }
+
+    if (this.bufferLength > 0) {
+      return true;
+    }
+
+    const nextByte = this.stream.getByte();
+
+    if (nextByte < 0) {
+      return false;
+    }
+
+    this.buffer = nextByte;
+    this.bufferLength = 8;
+    return true;
+  }
+
+  readBits(n) {
+    let buffer = this.buffer;
+    let bufferLength = this.bufferLength;
+
+    if (n === 32) {
+      if (bufferLength === 0) {
+        return (this.stream.getByte() << 24 | this.stream.getByte() << 16 | this.stream.getByte() << 8 | 
this.stream.getByte()) >>> 0;
+      }
+
+      buffer = buffer << 24 | this.stream.getByte() << 16 | this.stream.getByte() << 8 | 
this.stream.getByte();
+      const nextByte = this.stream.getByte();
+      this.buffer = nextByte & (1 << bufferLength) - 1;
+      return (buffer << 8 - bufferLength | (nextByte & 0xff) >> bufferLength) >>> 0;
+    }
+
+    if (n === 8 && bufferLength === 0) {
+      return this.stream.getByte();
+    }
+
+    while (bufferLength < n) {
+      buffer = buffer << 8 | this.stream.getByte();
+      bufferLength += 8;
+    }
+
+    bufferLength -= n;
+    this.bufferLength = bufferLength;
+    this.buffer = buffer & (1 << bufferLength) - 1;
+    return buffer >> bufferLength;
+  }
+
+  align() {
+    this.buffer = 0;
+    this.bufferLength = 0;
+  }
+
+  readFlag() {
+    return this.readBits(this.context.bitsPerFlag);
+  }
+
+  readCoordinate() {
+    const bitsPerCoordinate = this.context.bitsPerCoordinate;
+    const xi = this.readBits(bitsPerCoordinate);
+    const yi = this.readBits(bitsPerCoordinate);
+    const decode = this.context.decode;
+    const scale = bitsPerCoordinate < 32 ? 1 / ((1 << bitsPerCoordinate) - 1) : 2.3283064365386963e-10;
+    return [xi * scale * (decode[1] - decode[0]) + decode[0], yi * scale * (decode[3] - decode[2]) + 
decode[2]];
+  }
+
+  readComponents() {
+    const numComps = this.context.numComps;
+    const bitsPerComponent = this.context.bitsPerComponent;
+    const scale = bitsPerComponent < 32 ? 1 / ((1 << bitsPerComponent) - 1) : 2.3283064365386963e-10;
+    const decode = this.context.decode;
+    const components = this.tmpCompsBuf;
+
+    for (let i = 0, j = 4; i < numComps; i++, j += 2) {
+      const ci = this.readBits(bitsPerComponent);
+      components[i] = ci * scale * (decode[j + 1] - decode[j]) + decode[j];
+    }
+
+    const color = this.tmpCsCompsBuf;
+
+    if (this.context.colorFn) {
+      this.context.colorFn(components, 0, color, 0);
+    }
+
+    return this.context.colorSpace.getRgb(color, 0);
+  }
+
+}
+
+const getB = function getBClosure() {
+  function buildB(count) {
+    const lut = [];
+
+    for (let i = 0; i <= count; i++) {
+      const t = i / count,
+            t_ = 1 - t;
+      lut.push(new Float32Array([t_ * t_ * t_, 3 * t * t_ * t_, 3 * t * t * t_, t * t * t]));
+    }
+
+    return lut;
+  }
+
+  const cache = [];
+  return function (count) {
+    if (!cache[count]) {
+      cache[count] = buildB(count);
+    }
+
+    return cache[count];
+  };
+}();
+
+class MeshShading extends BaseShading {
+  static get MIN_SPLIT_PATCH_CHUNKS_AMOUNT() {
+    return (0, _util.shadow)(this, "MIN_SPLIT_PATCH_CHUNKS_AMOUNT", 3);
+  }
+
+  static get MAX_SPLIT_PATCH_CHUNKS_AMOUNT() {
+    return (0, _util.shadow)(this, "MAX_SPLIT_PATCH_CHUNKS_AMOUNT", 20);
+  }
+
+  static get TRIANGLE_DENSITY() {
+    return (0, _util.shadow)(this, "TRIANGLE_DENSITY", 20);
+  }
+
+  constructor(stream, xref, resources, pdfFunctionFactory, localColorSpaceCache) {
+    super();
+
+    if (!(stream instanceof _base_stream.BaseStream)) {
+      throw new _util.FormatError("Mesh data is not a stream");
+    }
+
+    const dict = stream.dict;
+    this.shadingType = dict.get("ShadingType");
+    const bbox = dict.getArray("BBox");
+
+    if (Array.isArray(bbox) && bbox.length === 4) {
+      this.bbox = _util.Util.normalizeRect(bbox);
+    } else {
+      this.bbox = null;
+    }
+
+    const cs = _colorspace.ColorSpace.parse({
+      cs: dict.getRaw("CS") || dict.getRaw("ColorSpace"),
+      xref,
+      resources,
+      pdfFunctionFactory,
+      localColorSpaceCache
+    });
+
+    this.background = dict.has("Background") ? cs.getRgb(dict.get("Background"), 0) : null;
+    const fnObj = dict.getRaw("Function");
+    const fn = fnObj ? pdfFunctionFactory.createFromArray(fnObj) : null;
+    this.coords = [];
+    this.colors = [];
+    this.figures = [];
+    const decodeContext = {
+      bitsPerCoordinate: dict.get("BitsPerCoordinate"),
+      bitsPerComponent: dict.get("BitsPerComponent"),
+      bitsPerFlag: dict.get("BitsPerFlag"),
+      decode: dict.getArray("Decode"),
+      colorFn: fn,
+      colorSpace: cs,
+      numComps: fn ? 1 : cs.numComps
+    };
+    const reader = new MeshStreamReader(stream, decodeContext);
+    let patchMesh = false;
+
+    switch (this.shadingType) {
+      case ShadingType.FREE_FORM_MESH:
+        this._decodeType4Shading(reader);
+
+        break;
+
+      case ShadingType.LATTICE_FORM_MESH:
+        const verticesPerRow = dict.get("VerticesPerRow") | 0;
+
+        if (verticesPerRow < 2) {
+          throw new _util.FormatError("Invalid VerticesPerRow");
+        }
+
+        this._decodeType5Shading(reader, verticesPerRow);
+
+        break;
+
+      case ShadingType.COONS_PATCH_MESH:
+        this._decodeType6Shading(reader);
+
+        patchMesh = true;
+        break;
+
+      case ShadingType.TENSOR_PATCH_MESH:
+        this._decodeType7Shading(reader);
+
+        patchMesh = true;
+        break;
+
+      default:
+        (0, _util.unreachable)("Unsupported mesh type.");
+        break;
+    }
+
+    if (patchMesh) {
+      this._updateBounds();
+
+      for (let i = 0, ii = this.figures.length; i < ii; i++) {
+        this._buildFigureFromPatch(i);
+      }
+    }
+
+    this._updateBounds();
+
+    this._packData();
+  }
+
+  _decodeType4Shading(reader) {
+    const coords = this.coords;
+    const colors = this.colors;
+    const operators = [];
+    const ps = [];
+    let verticesLeft = 0;
+
+    while (reader.hasData) {
+      const f = reader.readFlag();
+      const coord = reader.readCoordinate();
+      const color = reader.readComponents();
+
+      if (verticesLeft === 0) {
+        if (!(0 <= f && f <= 2)) {
+          throw new _util.FormatError("Unknown type4 flag");
+        }
+
+        switch (f) {
+          case 0:
+            verticesLeft = 3;
+            break;
+
+          case 1:
+            ps.push(ps[ps.length - 2], ps[ps.length - 1]);
+            verticesLeft = 1;
+            break;
+
+          case 2:
+            ps.push(ps[ps.length - 3], ps[ps.length - 1]);
+            verticesLeft = 1;
+            break;
+        }
+
+        operators.push(f);
+      }
+
+      ps.push(coords.length);
+      coords.push(coord);
+      colors.push(color);
+      verticesLeft--;
+      reader.align();
+    }
+
+    this.figures.push({
+      type: "triangles",
+      coords: new Int32Array(ps),
+      colors: new Int32Array(ps)
+    });
+  }
+
+  _decodeType5Shading(reader, verticesPerRow) {
+    const coords = this.coords;
+    const colors = this.colors;
+    const ps = [];
+
+    while (reader.hasData) {
+      const coord = reader.readCoordinate();
+      const color = reader.readComponents();
+      ps.push(coords.length);
+      coords.push(coord);
+      colors.push(color);
+    }
+
+    this.figures.push({
+      type: "lattice",
+      coords: new Int32Array(ps),
+      colors: new Int32Array(ps),
+      verticesPerRow
+    });
+  }
+
+  _decodeType6Shading(reader) {
+    const coords = this.coords;
+    const colors = this.colors;
+    const ps = new Int32Array(16);
+    const cs = new Int32Array(4);
+
+    while (reader.hasData) {
+      const f = reader.readFlag();
+
+      if (!(0 <= f && f <= 3)) {
+        throw new _util.FormatError("Unknown type6 flag");
+      }
+
+      const pi = coords.length;
+
+      for (let i = 0, ii = f !== 0 ? 8 : 12; i < ii; i++) {
+        coords.push(reader.readCoordinate());
+      }
+
+      const ci = colors.length;
+
+      for (let i = 0, ii = f !== 0 ? 2 : 4; i < ii; i++) {
+        colors.push(reader.readComponents());
+      }
+
+      let tmp1, tmp2, tmp3, tmp4;
+
+      switch (f) {
+        case 0:
+          ps[12] = pi + 3;
+          ps[13] = pi + 4;
+          ps[14] = pi + 5;
+          ps[15] = pi + 6;
+          ps[8] = pi + 2;
+          ps[11] = pi + 7;
+          ps[4] = pi + 1;
+          ps[7] = pi + 8;
+          ps[0] = pi;
+          ps[1] = pi + 11;
+          ps[2] = pi + 10;
+          ps[3] = pi + 9;
+          cs[2] = ci + 1;
+          cs[3] = ci + 2;
+          cs[0] = ci;
+          cs[1] = ci + 3;
+          break;
+
+        case 1:
+          tmp1 = ps[12];
+          tmp2 = ps[13];
+          tmp3 = ps[14];
+          tmp4 = ps[15];
+          ps[12] = tmp4;
+          ps[13] = pi + 0;
+          ps[14] = pi + 1;
+          ps[15] = pi + 2;
+          ps[8] = tmp3;
+          ps[11] = pi + 3;
+          ps[4] = tmp2;
+          ps[7] = pi + 4;
+          ps[0] = tmp1;
+          ps[1] = pi + 7;
+          ps[2] = pi + 6;
+          ps[3] = pi + 5;
+          tmp1 = cs[2];
+          tmp2 = cs[3];
+          cs[2] = tmp2;
+          cs[3] = ci;
+          cs[0] = tmp1;
+          cs[1] = ci + 1;
+          break;
+
+        case 2:
+          tmp1 = ps[15];
+          tmp2 = ps[11];
+          ps[12] = ps[3];
+          ps[13] = pi + 0;
+          ps[14] = pi + 1;
+          ps[15] = pi + 2;
+          ps[8] = ps[7];
+          ps[11] = pi + 3;
+          ps[4] = tmp2;
+          ps[7] = pi + 4;
+          ps[0] = tmp1;
+          ps[1] = pi + 7;
+          ps[2] = pi + 6;
+          ps[3] = pi + 5;
+          tmp1 = cs[3];
+          cs[2] = cs[1];
+          cs[3] = ci;
+          cs[0] = tmp1;
+          cs[1] = ci + 1;
+          break;
+
+        case 3:
+          ps[12] = ps[0];
+          ps[13] = pi + 0;
+          ps[14] = pi + 1;
+          ps[15] = pi + 2;
+          ps[8] = ps[1];
+          ps[11] = pi + 3;
+          ps[4] = ps[2];
+          ps[7] = pi + 4;
+          ps[0] = ps[3];
+          ps[1] = pi + 7;
+          ps[2] = pi + 6;
+          ps[3] = pi + 5;
+          cs[2] = cs[0];
+          cs[3] = ci;
+          cs[0] = cs[1];
+          cs[1] = ci + 1;
+          break;
+      }
+
+      ps[5] = coords.length;
+      coords.push([(-4 * coords[ps[0]][0] - coords[ps[15]][0] + 6 * (coords[ps[4]][0] + coords[ps[1]][0]) - 
2 * (coords[ps[12]][0] + coords[ps[3]][0]) + 3 * (coords[ps[13]][0] + coords[ps[7]][0])) / 9, (-4 * 
coords[ps[0]][1] - coords[ps[15]][1] + 6 * (coords[ps[4]][1] + coords[ps[1]][1]) - 2 * (coords[ps[12]][1] + 
coords[ps[3]][1]) + 3 * (coords[ps[13]][1] + coords[ps[7]][1])) / 9]);
+      ps[6] = coords.length;
+      coords.push([(-4 * coords[ps[3]][0] - coords[ps[12]][0] + 6 * (coords[ps[2]][0] + coords[ps[7]][0]) - 
2 * (coords[ps[0]][0] + coords[ps[15]][0]) + 3 * (coords[ps[4]][0] + coords[ps[14]][0])) / 9, (-4 * 
coords[ps[3]][1] - coords[ps[12]][1] + 6 * (coords[ps[2]][1] + coords[ps[7]][1]) - 2 * (coords[ps[0]][1] + 
coords[ps[15]][1]) + 3 * (coords[ps[4]][1] + coords[ps[14]][1])) / 9]);
+      ps[9] = coords.length;
+      coords.push([(-4 * coords[ps[12]][0] - coords[ps[3]][0] + 6 * (coords[ps[8]][0] + coords[ps[13]][0]) - 
2 * (coords[ps[0]][0] + coords[ps[15]][0]) + 3 * (coords[ps[11]][0] + coords[ps[1]][0])) / 9, (-4 * 
coords[ps[12]][1] - coords[ps[3]][1] + 6 * (coords[ps[8]][1] + coords[ps[13]][1]) - 2 * (coords[ps[0]][1] + 
coords[ps[15]][1]) + 3 * (coords[ps[11]][1] + coords[ps[1]][1])) / 9]);
+      ps[10] = coords.length;
+      coords.push([(-4 * coords[ps[15]][0] - coords[ps[0]][0] + 6 * (coords[ps[11]][0] + coords[ps[14]][0]) 
- 2 * (coords[ps[12]][0] + coords[ps[3]][0]) + 3 * (coords[ps[2]][0] + coords[ps[8]][0])) / 9, (-4 * 
coords[ps[15]][1] - coords[ps[0]][1] + 6 * (coords[ps[11]][1] + coords[ps[14]][1]) - 2 * (coords[ps[12]][1] + 
coords[ps[3]][1]) + 3 * (coords[ps[2]][1] + coords[ps[8]][1])) / 9]);
+      this.figures.push({
+        type: "patch",
+        coords: new Int32Array(ps),
+        colors: new Int32Array(cs)
+      });
+    }
+  }
+
+  _decodeType7Shading(reader) {
+    const coords = this.coords;
+    const colors = this.colors;
+    const ps = new Int32Array(16);
+    const cs = new Int32Array(4);
+
+    while (reader.hasData) {
+      const f = reader.readFlag();
+
+      if (!(0 <= f && f <= 3)) {
+        throw new _util.FormatError("Unknown type7 flag");
+      }
+
+      const pi = coords.length;
+
+      for (let i = 0, ii = f !== 0 ? 12 : 16; i < ii; i++) {
+        coords.push(reader.readCoordinate());
+      }
+
+      const ci = colors.length;
+
+      for (let i = 0, ii = f !== 0 ? 2 : 4; i < ii; i++) {
+        colors.push(reader.readComponents());
+      }
+
+      let tmp1, tmp2, tmp3, tmp4;
+
+      switch (f) {
+        case 0:
+          ps[12] = pi + 3;
+          ps[13] = pi + 4;
+          ps[14] = pi + 5;
+          ps[15] = pi + 6;
+          ps[8] = pi + 2;
+          ps[9] = pi + 13;
+          ps[10] = pi + 14;
+          ps[11] = pi + 7;
+          ps[4] = pi + 1;
+          ps[5] = pi + 12;
+          ps[6] = pi + 15;
+          ps[7] = pi + 8;
+          ps[0] = pi;
+          ps[1] = pi + 11;
+          ps[2] = pi + 10;
+          ps[3] = pi + 9;
+          cs[2] = ci + 1;
+          cs[3] = ci + 2;
+          cs[0] = ci;
+          cs[1] = ci + 3;
+          break;
+
+        case 1:
+          tmp1 = ps[12];
+          tmp2 = ps[13];
+          tmp3 = ps[14];
+          tmp4 = ps[15];
+          ps[12] = tmp4;
+          ps[13] = pi + 0;
+          ps[14] = pi + 1;
+          ps[15] = pi + 2;
+          ps[8] = tmp3;
+          ps[9] = pi + 9;
+          ps[10] = pi + 10;
+          ps[11] = pi + 3;
+          ps[4] = tmp2;
+          ps[5] = pi + 8;
+          ps[6] = pi + 11;
+          ps[7] = pi + 4;
+          ps[0] = tmp1;
+          ps[1] = pi + 7;
+          ps[2] = pi + 6;
+          ps[3] = pi + 5;
+          tmp1 = cs[2];
+          tmp2 = cs[3];
+          cs[2] = tmp2;
+          cs[3] = ci;
+          cs[0] = tmp1;
+          cs[1] = ci + 1;
+          break;
+
+        case 2:
+          tmp1 = ps[15];
+          tmp2 = ps[11];
+          ps[12] = ps[3];
+          ps[13] = pi + 0;
+          ps[14] = pi + 1;
+          ps[15] = pi + 2;
+          ps[8] = ps[7];
+          ps[9] = pi + 9;
+          ps[10] = pi + 10;
+          ps[11] = pi + 3;
+          ps[4] = tmp2;
+          ps[5] = pi + 8;
+          ps[6] = pi + 11;
+          ps[7] = pi + 4;
+          ps[0] = tmp1;
+          ps[1] = pi + 7;
+          ps[2] = pi + 6;
+          ps[3] = pi + 5;
+          tmp1 = cs[3];
+          cs[2] = cs[1];
+          cs[3] = ci;
+          cs[0] = tmp1;
+          cs[1] = ci + 1;
+          break;
+
+        case 3:
+          ps[12] = ps[0];
+          ps[13] = pi + 0;
+          ps[14] = pi + 1;
+          ps[15] = pi + 2;
+          ps[8] = ps[1];
+          ps[9] = pi + 9;
+          ps[10] = pi + 10;
+          ps[11] = pi + 3;
+          ps[4] = ps[2];
+          ps[5] = pi + 8;
+          ps[6] = pi + 11;
+          ps[7] = pi + 4;
+          ps[0] = ps[3];
+          ps[1] = pi + 7;
+          ps[2] = pi + 6;
+          ps[3] = pi + 5;
+          cs[2] = cs[0];
+          cs[3] = ci;
+          cs[0] = cs[1];
+          cs[1] = ci + 1;
+          break;
+      }
+
+      this.figures.push({
+        type: "patch",
+        coords: new Int32Array(ps),
+        colors: new Int32Array(cs)
+      });
+    }
+  }
+
+  _buildFigureFromPatch(index) {
+    const figure = this.figures[index];
+    (0, _util.assert)(figure.type === "patch", "Unexpected patch mesh figure");
+    const coords = this.coords,
+          colors = this.colors;
+    const pi = figure.coords;
+    const ci = figure.colors;
+    const figureMinX = Math.min(coords[pi[0]][0], coords[pi[3]][0], coords[pi[12]][0], coords[pi[15]][0]);
+    const figureMinY = Math.min(coords[pi[0]][1], coords[pi[3]][1], coords[pi[12]][1], coords[pi[15]][1]);
+    const figureMaxX = Math.max(coords[pi[0]][0], coords[pi[3]][0], coords[pi[12]][0], coords[pi[15]][0]);
+    const figureMaxY = Math.max(coords[pi[0]][1], coords[pi[3]][1], coords[pi[12]][1], coords[pi[15]][1]);
+    let splitXBy = Math.ceil((figureMaxX - figureMinX) * MeshShading.TRIANGLE_DENSITY / (this.bounds[2] - 
this.bounds[0]));
+    splitXBy = Math.max(MeshShading.MIN_SPLIT_PATCH_CHUNKS_AMOUNT, 
Math.min(MeshShading.MAX_SPLIT_PATCH_CHUNKS_AMOUNT, splitXBy));
+    let splitYBy = Math.ceil((figureMaxY - figureMinY) * MeshShading.TRIANGLE_DENSITY / (this.bounds[3] - 
this.bounds[1]));
+    splitYBy = Math.max(MeshShading.MIN_SPLIT_PATCH_CHUNKS_AMOUNT, 
Math.min(MeshShading.MAX_SPLIT_PATCH_CHUNKS_AMOUNT, splitYBy));
+    const verticesPerRow = splitXBy + 1;
+    const figureCoords = new Int32Array((splitYBy + 1) * verticesPerRow);
+    const figureColors = new Int32Array((splitYBy + 1) * verticesPerRow);
+    let k = 0;
+    const cl = new Uint8Array(3),
+          cr = new Uint8Array(3);
+    const c0 = colors[ci[0]],
+          c1 = colors[ci[1]],
+          c2 = colors[ci[2]],
+          c3 = colors[ci[3]];
+    const bRow = getB(splitYBy),
+          bCol = getB(splitXBy);
+
+    for (let row = 0; row <= splitYBy; row++) {
+      cl[0] = (c0[0] * (splitYBy - row) + c2[0] * row) / splitYBy | 0;
+      cl[1] = (c0[1] * (splitYBy - row) + c2[1] * row) / splitYBy | 0;
+      cl[2] = (c0[2] * (splitYBy - row) + c2[2] * row) / splitYBy | 0;
+      cr[0] = (c1[0] * (splitYBy - row) + c3[0] * row) / splitYBy | 0;
+      cr[1] = (c1[1] * (splitYBy - row) + c3[1] * row) / splitYBy | 0;
+      cr[2] = (c1[2] * (splitYBy - row) + c3[2] * row) / splitYBy | 0;
+
+      for (let col = 0; col <= splitXBy; col++, k++) {
+        if ((row === 0 || row === splitYBy) && (col === 0 || col === splitXBy)) {
+          continue;
+        }
+
+        let x = 0,
+            y = 0;
+        let q = 0;
+
+        for (let i = 0; i <= 3; i++) {
+          for (let j = 0; j <= 3; j++, q++) {
+            const m = bRow[row][i] * bCol[col][j];
+            x += coords[pi[q]][0] * m;
+            y += coords[pi[q]][1] * m;
+          }
+        }
+
+        figureCoords[k] = coords.length;
+        coords.push([x, y]);
+        figureColors[k] = colors.length;
+        const newColor = new Uint8Array(3);
+        newColor[0] = (cl[0] * (splitXBy - col) + cr[0] * col) / splitXBy | 0;
+        newColor[1] = (cl[1] * (splitXBy - col) + cr[1] * col) / splitXBy | 0;
+        newColor[2] = (cl[2] * (splitXBy - col) + cr[2] * col) / splitXBy | 0;
+        colors.push(newColor);
+      }
+    }
+
+    figureCoords[0] = pi[0];
+    figureColors[0] = ci[0];
+    figureCoords[splitXBy] = pi[3];
+    figureColors[splitXBy] = ci[1];
+    figureCoords[verticesPerRow * splitYBy] = pi[12];
+    figureColors[verticesPerRow * splitYBy] = ci[2];
+    figureCoords[verticesPerRow * splitYBy + splitXBy] = pi[15];
+    figureColors[verticesPerRow * splitYBy + splitXBy] = ci[3];
+    this.figures[index] = {
+      type: "lattice",
+      coords: figureCoords,
+      colors: figureColors,
+      verticesPerRow
+    };
+  }
+
+  _updateBounds() {
+    let minX = this.coords[0][0],
+        minY = this.coords[0][1],
+        maxX = minX,
+        maxY = minY;
+
+    for (let i = 1, ii = this.coords.length; i < ii; i++) {
+      const x = this.coords[i][0],
+            y = this.coords[i][1];
+      minX = minX > x ? x : minX;
+      minY = minY > y ? y : minY;
+      maxX = maxX < x ? x : maxX;
+      maxY = maxY < y ? y : maxY;
+    }
+
+    this.bounds = [minX, minY, maxX, maxY];
+  }
+
+  _packData() {
+    let i, ii, j, jj;
+    const coords = this.coords;
+    const coordsPacked = new Float32Array(coords.length * 2);
+
+    for (i = 0, j = 0, ii = coords.length; i < ii; i++) {
+      const xy = coords[i];
+      coordsPacked[j++] = xy[0];
+      coordsPacked[j++] = xy[1];
+    }
+
+    this.coords = coordsPacked;
+    const colors = this.colors;
+    const colorsPacked = new Uint8Array(colors.length * 3);
+
+    for (i = 0, j = 0, ii = colors.length; i < ii; i++) {
+      const c = colors[i];
+      colorsPacked[j++] = c[0];
+      colorsPacked[j++] = c[1];
+      colorsPacked[j++] = c[2];
+    }
+
+    this.colors = colorsPacked;
+    const figures = this.figures;
+
+    for (i = 0, ii = figures.length; i < ii; i++) {
+      const figure = figures[i],
+            ps = figure.coords,
+            cs = figure.colors;
+
+      for (j = 0, jj = ps.length; j < jj; j++) {
+        ps[j] *= 2;
+        cs[j] *= 3;
+      }
+    }
+  }
+
+  getIR() {
+    return ["Mesh", this.shadingType, this.coords, this.colors, this.figures, this.bounds, this.bbox, 
this.background];
+  }
+
+}
+
+class DummyShading extends BaseShading {
+  getIR() {
+    return ["Dummy"];
+  }
+
+}
+
+function getTilingPatternIR(operatorList, dict, color) {
+  const matrix = dict.getArray("Matrix");
+
+  const bbox = _util.Util.normalizeRect(dict.getArray("BBox"));
+
+  const xstep = dict.get("XStep");
+  const ystep = dict.get("YStep");
+  const paintType = dict.get("PaintType");
+  const tilingType = dict.get("TilingType");
+
+  if (bbox[2] - bbox[0] === 0 || bbox[3] - bbox[1] === 0) {
+    throw new _util.FormatError(`Invalid getTilingPatternIR /BBox array: [${bbox}].`);
+  }
+
+  return ["TilingPattern", color, operatorList, matrix, bbox, xstep, ystep, paintType, tilingType];
+}
+
+/***/ }),
+/* 57 */
+/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
+
+
+
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.PostScriptEvaluator = exports.PostScriptCompiler = exports.PDFFunctionFactory = void 0;
+exports.isPDFFunction = isPDFFunction;
+
+var _primitives = __w_pdfjs_require__(5);
+
+var _util = __w_pdfjs_require__(2);
+
+var _ps_parser = __w_pdfjs_require__(58);
+
+var _base_stream = __w_pdfjs_require__(9);
+
+var _image_utils = __w_pdfjs_require__(59);
+
+class PDFFunctionFactory {
+  constructor({
+    xref,
+    isEvalSupported = true
+  }) {
+    this.xref = xref;
+    this.isEvalSupported = isEvalSupported !== false;
+  }
+
+  create(fn) {
+    const cachedFunction = this.getCached(fn);
+
+    if (cachedFunction) {
+      return cachedFunction;
+    }
+
+    const parsedFunction = PDFFunction.parse({
+      xref: this.xref,
+      isEvalSupported: this.isEvalSupported,
+      fn: fn instanceof _primitives.Ref ? this.xref.fetch(fn) : fn
+    });
+
+    this._cache(fn, parsedFunction);
+
+    return parsedFunction;
+  }
+
+  createFromArray(fnObj) {
+    const cachedFunction = this.getCached(fnObj);
+
+    if (cachedFunction) {
+      return cachedFunction;
+    }
+
+    const parsedFunction = PDFFunction.parseArray({
+      xref: this.xref,
+      isEvalSupported: this.isEvalSupported,
+      fnObj: fnObj instanceof _primitives.Ref ? this.xref.fetch(fnObj) : fnObj
+    });
+
+    this._cache(fnObj, parsedFunction);
+
+    return parsedFunction;
+  }
+
+  getCached(cacheKey) {
+    let fnRef;
+
+    if (cacheKey instanceof _primitives.Ref) {
+      fnRef = cacheKey;
+    } else if (cacheKey instanceof _primitives.Dict) {
+      fnRef = cacheKey.objId;
+    } else if (cacheKey instanceof _base_stream.BaseStream) {
+      fnRef = cacheKey.dict && cacheKey.dict.objId;
+    }
+
+    if (fnRef) {
+      const localFunction = this._localFunctionCache.getByRef(fnRef);
+
+      if (localFunction) {
+        return localFunction;
+      }
+    }
+
+    return null;
+  }
+
+  _cache(cacheKey, parsedFunction) {
+    if (!parsedFunction) {
+      throw new Error('PDFFunctionFactory._cache - expected "parsedFunction" argument.');
+    }
+
+    let fnRef;
+
+    if (cacheKey instanceof _primitives.Ref) {
+      fnRef = cacheKey;
+    } else if (cacheKey instanceof _primitives.Dict) {
+      fnRef = cacheKey.objId;
+    } else if (cacheKey instanceof _base_stream.BaseStream) {
+      fnRef = cacheKey.dict && cacheKey.dict.objId;
+    }
+
+    if (fnRef) {
+      this._localFunctionCache.set(null, fnRef, parsedFunction);
+    }
+  }
+
+  get _localFunctionCache() {
+    return (0, _util.shadow)(this, "_localFunctionCache", new _image_utils.LocalFunctionCache());
+  }
+
+}
+
+exports.PDFFunctionFactory = PDFFunctionFactory;
+
+function toNumberArray(arr) {
+  if (!Array.isArray(arr)) {
+    return null;
+  }
+
+  const length = arr.length;
+
+  for (let i = 0; i < length; i++) {
+    if (typeof arr[i] !== "number") {
+      const result = new Array(length);
+
+      for (let j = 0; j < length; j++) {
+        result[j] = +arr[j];
+      }
+
+      return result;
+    }
+  }
+
+  return arr;
+}
+
+class PDFFunction {
+  static getSampleArray(size, outputSize, bps, stream) {
+    let i, ii;
+    let length = 1;
+
+    for (i = 0, ii = size.length; i < ii; i++) {
+      length *= size[i];
+    }
+
+    length *= outputSize;
+    const array = new Array(length);
+    let codeSize = 0;
+    let codeBuf = 0;
+    const sampleMul = 1.0 / (2.0 ** bps - 1);
+    const strBytes = stream.getBytes((length * bps + 7) / 8);
+    let strIdx = 0;
+
+    for (i = 0; i < length; i++) {
+      while (codeSize < bps) {
+        codeBuf <<= 8;
+        codeBuf |= strBytes[strIdx++];
+        codeSize += 8;
+      }
+
+      codeSize -= bps;
+      array[i] = (codeBuf >> codeSize) * sampleMul;
+      codeBuf &= (1 << codeSize) - 1;
+    }
+
+    return array;
+  }
+
+  static parse({
+    xref,
+    isEvalSupported,
+    fn
+  }) {
+    const dict = fn.dict || fn;
+    const typeNum = dict.get("FunctionType");
+
+    switch (typeNum) {
+      case 0:
+        return this.constructSampled({
+          xref,
+          isEvalSupported,
+          fn,
+          dict
+        });
+
+      case 1:
+        break;
+
+      case 2:
+        return this.constructInterpolated({
+          xref,
+          isEvalSupported,
+          dict
+        });
+
+      case 3:
+        return this.constructStiched({
+          xref,
+          isEvalSupported,
+          dict
+        });
+
+      case 4:
+        return this.constructPostScript({
+          xref,
+          isEvalSupported,
+          fn,
+          dict
+        });
+    }
+
+    throw new _util.FormatError("Unknown type of function");
+  }
+
+  static parseArray({
+    xref,
+    isEvalSupported,
+    fnObj
+  }) {
+    if (!Array.isArray(fnObj)) {
+      return this.parse({
+        xref,
+        isEvalSupported,
+        fn: fnObj
+      });
+    }
+
+    const fnArray = [];
+
+    for (let j = 0, jj = fnObj.length; j < jj; j++) {
+      fnArray.push(this.parse({
+        xref,
+        isEvalSupported,
+        fn: xref.fetchIfRef(fnObj[j])
+      }));
+    }
+
+    return function (src, srcOffset, dest, destOffset) {
+      for (let i = 0, ii = fnArray.length; i < ii; i++) {
+        fnArray[i](src, srcOffset, dest, destOffset + i);
+      }
+    };
+  }
+
+  static constructSampled({
+    xref,
+    isEvalSupported,
+    fn,
+    dict
+  }) {
+    function toMultiArray(arr) {
+      const inputLength = arr.length;
+      const out = [];
+      let index = 0;
+
+      for (let i = 0; i < inputLength; i += 2) {
+        out[index++] = [arr[i], arr[i + 1]];
+      }
+
+      return out;
+    }
+
+    function interpolate(x, xmin, xmax, ymin, ymax) {
+      return ymin + (x - xmin) * ((ymax - ymin) / (xmax - xmin));
+    }
+
+    let domain = toNumberArray(dict.getArray("Domain"));
+    let range = toNumberArray(dict.getArray("Range"));
+
+    if (!domain || !range) {
+      throw new _util.FormatError("No domain or range");
+    }
+
+    const inputSize = domain.length / 2;
+    const outputSize = range.length / 2;
+    domain = toMultiArray(domain);
+    range = toMultiArray(range);
+    const size = toNumberArray(dict.getArray("Size"));
+    const bps = dict.get("BitsPerSample");
+    const order = dict.get("Order") || 1;
+
+    if (order !== 1) {
+      (0, _util.info)("No support for cubic spline interpolation: " + order);
+    }
+
+    let encode = toNumberArray(dict.getArray("Encode"));
+
+    if (!encode) {
+      encode = [];
+
+      for (let i = 0; i < inputSize; ++i) {
+        encode.push([0, size[i] - 1]);
+      }
+    } else {
+      encode = toMultiArray(encode);
+    }
+
+    let decode = toNumberArray(dict.getArray("Decode"));
+
+    if (!decode) {
+      decode = range;
+    } else {
+      decode = toMultiArray(decode);
+    }
+
+    const samples = this.getSampleArray(size, outputSize, bps, fn);
+    return function constructSampledFn(src, srcOffset, dest, destOffset) {
+      const cubeVertices = 1 << inputSize;
+      const cubeN = new Float64Array(cubeVertices);
+      const cubeVertex = new Uint32Array(cubeVertices);
+      let i, j;
+
+      for (j = 0; j < cubeVertices; j++) {
+        cubeN[j] = 1;
+      }
+
+      let k = outputSize,
+          pos = 1;
+
+      for (i = 0; i < inputSize; ++i) {
+        const domain_2i = domain[i][0];
+        const domain_2i_1 = domain[i][1];
+        const xi = Math.min(Math.max(src[srcOffset + i], domain_2i), domain_2i_1);
+        let e = interpolate(xi, domain_2i, domain_2i_1, encode[i][0], encode[i][1]);
+        const size_i = size[i];
+        e = Math.min(Math.max(e, 0), size_i - 1);
+        const e0 = e < size_i - 1 ? Math.floor(e) : e - 1;
+        const n0 = e0 + 1 - e;
+        const n1 = e - e0;
+        const offset0 = e0 * k;
+        const offset1 = offset0 + k;
+
+        for (j = 0; j < cubeVertices; j++) {
+          if (j & pos) {
+            cubeN[j] *= n1;
+            cubeVertex[j] += offset1;
+          } else {
+            cubeN[j] *= n0;
+            cubeVertex[j] += offset0;
+          }
+        }
+
+        k *= size_i;
+        pos <<= 1;
+      }
+
+      for (j = 0; j < outputSize; ++j) {
+        let rj = 0;
+
+        for (i = 0; i < cubeVertices; i++) {
+          rj += samples[cubeVertex[i] + j] * cubeN[i];
+        }
+
+        rj = interpolate(rj, 0, 1, decode[j][0], decode[j][1]);
+        dest[destOffset + j] = Math.min(Math.max(rj, range[j][0]), range[j][1]);
+      }
+    };
+  }
+
+  static constructInterpolated({
+    xref,
+    isEvalSupported,
+    dict
+  }) {
+    const c0 = toNumberArray(dict.getArray("C0")) || [0];
+    const c1 = toNumberArray(dict.getArray("C1")) || [1];
+    const n = dict.get("N");
+    const diff = [];
+
+    for (let i = 0, ii = c0.length; i < ii; ++i) {
+      diff.push(c1[i] - c0[i]);
+    }
+
+    const length = diff.length;
+    return function constructInterpolatedFn(src, srcOffset, dest, destOffset) {
+      const x = n === 1 ? src[srcOffset] : src[srcOffset] ** n;
+
+      for (let j = 0; j < length; ++j) {
+        dest[destOffset + j] = c0[j] + x * diff[j];
+      }
+    };
+  }
+
+  static constructStiched({
+    xref,
+    isEvalSupported,
+    dict
+  }) {
+    const domain = toNumberArray(dict.getArray("Domain"));
+
+    if (!domain) {
+      throw new _util.FormatError("No domain");
+    }
+
+    const inputSize = domain.length / 2;
+
+    if (inputSize !== 1) {
+      throw new _util.FormatError("Bad domain for stiched function");
+    }
+
+    const fnRefs = dict.get("Functions");
+    const fns = [];
+
+    for (let i = 0, ii = fnRefs.length; i < ii; ++i) {
+      fns.push(this.parse({
+        xref,
+        isEvalSupported,
+        fn: xref.fetchIfRef(fnRefs[i])
+      }));
+    }
+
+    const bounds = toNumberArray(dict.getArray("Bounds"));
+    const encode = toNumberArray(dict.getArray("Encode"));
+    const tmpBuf = new Float32Array(1);
+    return function constructStichedFn(src, srcOffset, dest, destOffset) {
+      const clip = function constructStichedFromIRClip(v, min, max) {
+        if (v > max) {
+          v = max;
+        } else if (v < min) {
+          v = min;
+        }
+
+        return v;
+      };
+
+      const v = clip(src[srcOffset], domain[0], domain[1]);
+      const length = bounds.length;
+      let i;
+
+      for (i = 0; i < length; ++i) {
+        if (v < bounds[i]) {
+          break;
+        }
+      }
+
+      let dmin = domain[0];
+
+      if (i > 0) {
+        dmin = bounds[i - 1];
+      }
+
+      let dmax = domain[1];
+
+      if (i < bounds.length) {
+        dmax = bounds[i];
+      }
+
+      const rmin = encode[2 * i];
+      const rmax = encode[2 * i + 1];
+      tmpBuf[0] = dmin === dmax ? rmin : rmin + (v - dmin) * (rmax - rmin) / (dmax - dmin);
+      fns[i](tmpBuf, 0, dest, destOffset);
+    };
+  }
+
+  static constructPostScript({
+    xref,
+    isEvalSupported,
+    fn,
+    dict
+  }) {
+    const domain = toNumberArray(dict.getArray("Domain"));
+    const range = toNumberArray(dict.getArray("Range"));
+
+    if (!domain) {
+      throw new _util.FormatError("No domain.");
+    }
+
+    if (!range) {
+      throw new _util.FormatError("No range.");
+    }
+
+    const lexer = new _ps_parser.PostScriptLexer(fn);
+    const parser = new _ps_parser.PostScriptParser(lexer);
+    const code = parser.parse();
+
+    if (isEvalSupported && _util.IsEvalSupportedCached.value) {
+      const compiled = new PostScriptCompiler().compile(code, domain, range);
+
+      if (compiled) {
+        return new Function("src", "srcOffset", "dest", "destOffset", compiled);
+      }
+    }
+
+    (0, _util.info)("Unable to compile PS function");
+    const numOutputs = range.length >> 1;
+    const numInputs = domain.length >> 1;
+    const evaluator = new PostScriptEvaluator(code);
+    const cache = Object.create(null);
+    const MAX_CACHE_SIZE = 2048 * 4;
+    let cache_available = MAX_CACHE_SIZE;
+    const tmpBuf = new Float32Array(numInputs);
+    return function constructPostScriptFn(src, srcOffset, dest, destOffset) {
+      let i, value;
+      let key = "";
+      const input = tmpBuf;
+
+      for (i = 0; i < numInputs; i++) {
+        value = src[srcOffset + i];
+        input[i] = value;
+        key += value + "_";
+      }
+
+      const cachedValue = cache[key];
+
+      if (cachedValue !== undefined) {
+        dest.set(cachedValue, destOffset);
+        return;
+      }
+
+      const output = new Float32Array(numOutputs);
+      const stack = evaluator.execute(input);
+      const stackIndex = stack.length - numOutputs;
+
+      for (i = 0; i < numOutputs; i++) {
+        value = stack[stackIndex + i];
+        let bound = range[i * 2];
+
+        if (value < bound) {
+          value = bound;
+        } else {
+          bound = range[i * 2 + 1];
+
+          if (value > bound) {
+            value = bound;
+          }
+        }
+
+        output[i] = value;
+      }
+
+      if (cache_available > 0) {
+        cache_available--;
+        cache[key] = output;
+      }
+
+      dest.set(output, destOffset);
+    };
+  }
+
+}
+
+function isPDFFunction(v) {
+  let fnDict;
+
+  if (typeof v !== "object") {
+    return false;
+  } else if (v instanceof _primitives.Dict) {
+    fnDict = v;
+  } else if (v instanceof _base_stream.BaseStream) {
+    fnDict = v.dict;
+  } else {
+    return false;
+  }
+
+  return fnDict.has("FunctionType");
+}
+
+class PostScriptStack {
+  static get MAX_STACK_SIZE() {
+    return (0, _util.shadow)(this, "MAX_STACK_SIZE", 100);
+  }
+
+  constructor(initialStack) {
+    this.stack = !initialStack ? [] : Array.prototype.slice.call(initialStack, 0);
+  }
+
+  push(value) {
+    if (this.stack.length >= PostScriptStack.MAX_STACK_SIZE) {
+      throw new Error("PostScript function stack overflow.");
+    }
+
+    this.stack.push(value);
+  }
+
+  pop() {
+    if (this.stack.length <= 0) {
+      throw new Error("PostScript function stack underflow.");
+    }
+
+    return this.stack.pop();
+  }
+
+  copy(n) {
+    if (this.stack.length + n >= PostScriptStack.MAX_STACK_SIZE) {
+      throw new Error("PostScript function stack overflow.");
+    }
+
+    const stack = this.stack;
+
+    for (let i = stack.length - n, j = n - 1; j >= 0; j--, i++) {
+      stack.push(stack[i]);
+    }
+  }
+
+  index(n) {
+    this.push(this.stack[this.stack.length - n - 1]);
+  }
+
+  roll(n, p) {
+    const stack = this.stack;
+    const l = stack.length - n;
+    const r = stack.length - 1;
+    const c = l + (p - Math.floor(p / n) * n);
+
+    for (let i = l, j = r; i < j; i++, j--) {
+      const t = stack[i];
+      stack[i] = stack[j];
+      stack[j] = t;
+    }
+
+    for (let i = l, j = c - 1; i < j; i++, j--) {
+      const t = stack[i];
+      stack[i] = stack[j];
+      stack[j] = t;
+    }
+
+    for (let i = c, j = r; i < j; i++, j--) {
+      const t = stack[i];
+      stack[i] = stack[j];
+      stack[j] = t;
+    }
+  }
+
+}
+
+class PostScriptEvaluator {
+  constructor(operators) {
+    this.operators = operators;
+  }
+
+  execute(initialStack) {
+    const stack = new PostScriptStack(initialStack);
+    let counter = 0;
+    const operators = this.operators;
+    const length = operators.length;
+    let operator, a, b;
+
+    while (counter < length) {
+      operator = operators[counter++];
+
+      if (typeof operator === "number") {
+        stack.push(operator);
+        continue;
+      }
+
+      switch (operator) {
+        case "jz":
+          b = stack.pop();
+          a = stack.pop();
+
+          if (!a) {
+            counter = b;
+          }
+
+          break;
+
+        case "j":
+          a = stack.pop();
+          counter = a;
+          break;
+
+        case "abs":
+          a = stack.pop();
+          stack.push(Math.abs(a));
+          break;
+
+        case "add":
+          b = stack.pop();
+          a = stack.pop();
+          stack.push(a + b);
+          break;
+
+        case "and":
+          b = stack.pop();
+          a = stack.pop();
+
+          if (typeof a === "boolean" && typeof b === "boolean") {
+            stack.push(a && b);
+          } else {
+            stack.push(a & b);
+          }
+
+          break;
+
+        case "atan":
+          a = stack.pop();
+          stack.push(Math.atan(a));
+          break;
+
+        case "bitshift":
+          b = stack.pop();
+          a = stack.pop();
+
+          if (a > 0) {
+            stack.push(a << b);
+          } else {
+            stack.push(a >> b);
+          }
+
+          break;
+
+        case "ceiling":
+          a = stack.pop();
+          stack.push(Math.ceil(a));
+          break;
+
+        case "copy":
+          a = stack.pop();
+          stack.copy(a);
+          break;
+
+        case "cos":
+          a = stack.pop();
+          stack.push(Math.cos(a));
+          break;
+
+        case "cvi":
+          a = stack.pop() | 0;
+          stack.push(a);
+          break;
+
+        case "cvr":
+          break;
+
+        case "div":
+          b = stack.pop();
+          a = stack.pop();
+          stack.push(a / b);
+          break;
+
+        case "dup":
+          stack.copy(1);
+          break;
+
+        case "eq":
+          b = stack.pop();
+          a = stack.pop();
+          stack.push(a === b);
+          break;
+
+        case "exch":
+          stack.roll(2, 1);
+          break;
+
+        case "exp":
+          b = stack.pop();
+          a = stack.pop();
+          stack.push(a ** b);
+          break;
+
+        case "false":
+          stack.push(false);
+          break;
+
+        case "floor":
+          a = stack.pop();
+          stack.push(Math.floor(a));
+          break;
+
+        case "ge":
+          b = stack.pop();
+          a = stack.pop();
+          stack.push(a >= b);
+          break;
+
+        case "gt":
+          b = stack.pop();
+          a = stack.pop();
+          stack.push(a > b);
+          break;
+
+        case "idiv":
+          b = stack.pop();
+          a = stack.pop();
+          stack.push(a / b | 0);
+          break;
+
+        case "index":
+          a = stack.pop();
+          stack.index(a);
+          break;
+
+        case "le":
+          b = stack.pop();
+          a = stack.pop();
+          stack.push(a <= b);
+          break;
+
+        case "ln":
+          a = stack.pop();
+          stack.push(Math.log(a));
+          break;
+
+        case "log":
+          a = stack.pop();
+          stack.push(Math.log(a) / Math.LN10);
+          break;
+
+        case "lt":
+          b = stack.pop();
+          a = stack.pop();
+          stack.push(a < b);
+          break;
+
+        case "mod":
+          b = stack.pop();
+          a = stack.pop();
+          stack.push(a % b);
+          break;
+
+        case "mul":
+          b = stack.pop();
+          a = stack.pop();
+          stack.push(a * b);
+          break;
+
+        case "ne":
+          b = stack.pop();
+          a = stack.pop();
+          stack.push(a !== b);
+          break;
+
+        case "neg":
+          a = stack.pop();
+          stack.push(-a);
+          break;
+
+        case "not":
+          a = stack.pop();
+
+          if (typeof a === "boolean") {
+            stack.push(!a);
+          } else {
+            stack.push(~a);
+          }
+
+          break;
+
+        case "or":
+          b = stack.pop();
+          a = stack.pop();
+
+          if (typeof a === "boolean" && typeof b === "boolean") {
+            stack.push(a || b);
+          } else {
+            stack.push(a | b);
+          }
+
+          break;
+
+        case "pop":
+          stack.pop();
+          break;
+
+        case "roll":
+          b = stack.pop();
+          a = stack.pop();
+          stack.roll(a, b);
+          break;
+
+        case "round":
+          a = stack.pop();
+          stack.push(Math.round(a));
+          break;
+
+        case "sin":
+          a = stack.pop();
+          stack.push(Math.sin(a));
+          break;
+
+        case "sqrt":
+          a = stack.pop();
+          stack.push(Math.sqrt(a));
+          break;
+
+        case "sub":
+          b = stack.pop();
+          a = stack.pop();
+          stack.push(a - b);
+          break;
+
+        case "true":
+          stack.push(true);
+          break;
+
+        case "truncate":
+          a = stack.pop();
+          a = a < 0 ? Math.ceil(a) : Math.floor(a);
+          stack.push(a);
+          break;
+
+        case "xor":
+          b = stack.pop();
+          a = stack.pop();
+
+          if (typeof a === "boolean" && typeof b === "boolean") {
+            stack.push(a !== b);
+          } else {
+            stack.push(a ^ b);
+          }
+
+          break;
+
+        default:
+          throw new _util.FormatError(`Unknown operator ${operator}`);
+      }
+    }
+
+    return stack.stack;
+  }
+
+}
+
+exports.PostScriptEvaluator = PostScriptEvaluator;
+
+const PostScriptCompiler = function PostScriptCompilerClosure() {
+  class AstNode {
+    constructor(type) {
+      this.type = type;
+    }
+
+    visit(visitor) {
+      (0, _util.unreachable)("abstract method");
+    }
+
+  }
+
+  class AstArgument extends AstNode {
+    constructor(index, min, max) {
+      super("args");
+      this.index = index;
+      this.min = min;
+      this.max = max;
+    }
+
+    visit(visitor) {
+      visitor.visitArgument(this);
+    }
+
+  }
+
+  class AstLiteral extends AstNode {
+    constructor(number) {
+      super("literal");
+      this.number = number;
+      this.min = number;
+      this.max = number;
+    }
+
+    visit(visitor) {
+      visitor.visitLiteral(this);
+    }
+
+  }
+
+  class AstBinaryOperation extends AstNode {
+    constructor(op, arg1, arg2, min, max) {
+      super("binary");
+      this.op = op;
+      this.arg1 = arg1;
+      this.arg2 = arg2;
+      this.min = min;
+      this.max = max;
+    }
+
+    visit(visitor) {
+      visitor.visitBinaryOperation(this);
+    }
+
+  }
+
+  class AstMin extends AstNode {
+    constructor(arg, max) {
+      super("max");
+      this.arg = arg;
+      this.min = arg.min;
+      this.max = max;
+    }
+
+    visit(visitor) {
+      visitor.visitMin(this);
+    }
+
+  }
+
+  class AstVariable extends AstNode {
+    constructor(index, min, max) {
+      super("var");
+      this.index = index;
+      this.min = min;
+      this.max = max;
+    }
+
+    visit(visitor) {
+      visitor.visitVariable(this);
+    }
+
+  }
+
+  class AstVariableDefinition extends AstNode {
+    constructor(variable, arg) {
+      super("definition");
+      this.variable = variable;
+      this.arg = arg;
+    }
+
+    visit(visitor) {
+      visitor.visitVariableDefinition(this);
+    }
+
+  }
+
+  class ExpressionBuilderVisitor {
+    constructor() {
+      this.parts = [];
+    }
+
+    visitArgument(arg) {
+      this.parts.push("Math.max(", arg.min, ", Math.min(", arg.max, ", src[srcOffset + ", arg.index, "]))");
+    }
+
+    visitVariable(variable) {
+      this.parts.push("v", variable.index);
+    }
+
+    visitLiteral(literal) {
+      this.parts.push(literal.number);
+    }
+
+    visitBinaryOperation(operation) {
+      this.parts.push("(");
+      operation.arg1.visit(this);
+      this.parts.push(" ", operation.op, " ");
+      operation.arg2.visit(this);
+      this.parts.push(")");
+    }
+
+    visitVariableDefinition(definition) {
+      this.parts.push("var ");
+      definition.variable.visit(this);
+      this.parts.push(" = ");
+      definition.arg.visit(this);
+      this.parts.push(";");
+    }
+
+    visitMin(max) {
+      this.parts.push("Math.min(");
+      max.arg.visit(this);
+      this.parts.push(", ", max.max, ")");
+    }
+
+    toString() {
+      return this.parts.join("");
+    }
+
+  }
+
+  function buildAddOperation(num1, num2) {
+    if (num2.type === "literal" && num2.number === 0) {
+      return num1;
+    }
+
+    if (num1.type === "literal" && num1.number === 0) {
+      return num2;
+    }
+
+    if (num2.type === "literal" && num1.type === "literal") {
+      return new AstLiteral(num1.number + num2.number);
+    }
+
+    return new AstBinaryOperation("+", num1, num2, num1.min + num2.min, num1.max + num2.max);
+  }
+
+  function buildMulOperation(num1, num2) {
+    if (num2.type === "literal") {
+      if (num2.number === 0) {
+        return new AstLiteral(0);
+      } else if (num2.number === 1) {
+        return num1;
+      } else if (num1.type === "literal") {
+        return new AstLiteral(num1.number * num2.number);
+      }
+    }
+
+    if (num1.type === "literal") {
+      if (num1.number === 0) {
+        return new AstLiteral(0);
+      } else if (num1.number === 1) {
+        return num2;
+      }
+    }
+
+    const min = Math.min(num1.min * num2.min, num1.min * num2.max, num1.max * num2.min, num1.max * num2.max);
+    const max = Math.max(num1.min * num2.min, num1.min * num2.max, num1.max * num2.min, num1.max * num2.max);
+    return new AstBinaryOperation("*", num1, num2, min, max);
+  }
+
+  function buildSubOperation(num1, num2) {
+    if (num2.type === "literal") {
+      if (num2.number === 0) {
+        return num1;
+      } else if (num1.type === "literal") {
+        return new AstLiteral(num1.number - num2.number);
+      }
+    }
+
+    if (num2.type === "binary" && num2.op === "-" && num1.type === "literal" && num1.number === 1 && 
num2.arg1.type === "literal" && num2.arg1.number === 1) {
+      return num2.arg2;
+    }
+
+    return new AstBinaryOperation("-", num1, num2, num1.min - num2.max, num1.max - num2.min);
+  }
+
+  function buildMinOperation(num1, max) {
+    if (num1.min >= max) {
+      return new AstLiteral(max);
+    } else if (num1.max <= max) {
+      return num1;
+    }
+
+    return new AstMin(num1, max);
+  }
+
+  class PostScriptCompiler {
+    compile(code, domain, range) {
+      const stack = [];
+      const instructions = [];
+      const inputSize = domain.length >> 1,
+            outputSize = range.length >> 1;
+      let lastRegister = 0;
+      let n, j;
+      let num1, num2, ast1, ast2, tmpVar, item;
+
+      for (let i = 0; i < inputSize; i++) {
+        stack.push(new AstArgument(i, domain[i * 2], domain[i * 2 + 1]));
+      }
+
+      for (let i = 0, ii = code.length; i < ii; i++) {
+        item = code[i];
+
+        if (typeof item === "number") {
+          stack.push(new AstLiteral(item));
+          continue;
+        }
+
+        switch (item) {
+          case "add":
+            if (stack.length < 2) {
+              return null;
+            }
+
+            num2 = stack.pop();
+            num1 = stack.pop();
+            stack.push(buildAddOperation(num1, num2));
+            break;
+
+          case "cvr":
+            if (stack.length < 1) {
+              return null;
+            }
+
+            break;
+
+          case "mul":
+            if (stack.length < 2) {
+              return null;
+            }
+
+            num2 = stack.pop();
+            num1 = stack.pop();
+            stack.push(buildMulOperation(num1, num2));
+            break;
+
+          case "sub":
+            if (stack.length < 2) {
+              return null;
+            }
+
+            num2 = stack.pop();
+            num1 = stack.pop();
+            stack.push(buildSubOperation(num1, num2));
+            break;
+
+          case "exch":
+            if (stack.length < 2) {
+              return null;
+            }
+
+            ast1 = stack.pop();
+            ast2 = stack.pop();
+            stack.push(ast1, ast2);
+            break;
+
+          case "pop":
+            if (stack.length < 1) {
+              return null;
+            }
+
+            stack.pop();
+            break;
+
+          case "index":
+            if (stack.length < 1) {
+              return null;
+            }
+
+            num1 = stack.pop();
+
+            if (num1.type !== "literal") {
+              return null;
+            }
+
+            n = num1.number;
+
+            if (n < 0 || !Number.isInteger(n) || stack.length < n) {
+              return null;
+            }
+
+            ast1 = stack[stack.length - n - 1];
+
+            if (ast1.type === "literal" || ast1.type === "var") {
+              stack.push(ast1);
+              break;
+            }
+
+            tmpVar = new AstVariable(lastRegister++, ast1.min, ast1.max);
+            stack[stack.length - n - 1] = tmpVar;
+            stack.push(tmpVar);
+            instructions.push(new AstVariableDefinition(tmpVar, ast1));
+            break;
+
+          case "dup":
+            if (stack.length < 1) {
+              return null;
+            }
+
+            if (typeof code[i + 1] === "number" && code[i + 2] === "gt" && code[i + 3] === i + 7 && code[i + 
4] === "jz" && code[i + 5] === "pop" && code[i + 6] === code[i + 1]) {
+              num1 = stack.pop();
+              stack.push(buildMinOperation(num1, code[i + 1]));
+              i += 6;
+              break;
+            }
+
+            ast1 = stack[stack.length - 1];
+
+            if (ast1.type === "literal" || ast1.type === "var") {
+              stack.push(ast1);
+              break;
+            }
+
+            tmpVar = new AstVariable(lastRegister++, ast1.min, ast1.max);
+            stack[stack.length - 1] = tmpVar;
+            stack.push(tmpVar);
+            instructions.push(new AstVariableDefinition(tmpVar, ast1));
+            break;
+
+          case "roll":
+            if (stack.length < 2) {
+              return null;
+            }
+
+            num2 = stack.pop();
+            num1 = stack.pop();
+
+            if (num2.type !== "literal" || num1.type !== "literal") {
+              return null;
+            }
+
+            j = num2.number;
+            n = num1.number;
+
+            if (n <= 0 || !Number.isInteger(n) || !Number.isInteger(j) || stack.length < n) {
+              return null;
+            }
+
+            j = (j % n + n) % n;
+
+            if (j === 0) {
+              break;
+            }
+
+            Array.prototype.push.apply(stack, stack.splice(stack.length - n, n - j));
+            break;
+
+          default:
+            return null;
+        }
+      }
+
+      if (stack.length !== outputSize) {
+        return null;
+      }
+
+      const result = [];
+
+      for (const instruction of instructions) {
+        const statementBuilder = new ExpressionBuilderVisitor();
+        instruction.visit(statementBuilder);
+        result.push(statementBuilder.toString());
+      }
+
+      for (let i = 0, ii = stack.length; i < ii; i++) {
+        const expr = stack[i],
+              statementBuilder = new ExpressionBuilderVisitor();
+        expr.visit(statementBuilder);
+        const min = range[i * 2],
+              max = range[i * 2 + 1];
+        const out = [statementBuilder.toString()];
+
+        if (min > expr.min) {
+          out.unshift("Math.max(", min, ", ");
+          out.push(")");
+        }
+
+        if (max < expr.max) {
+          out.unshift("Math.min(", max, ", ");
+          out.push(")");
+        }
+
+        out.unshift("dest[destOffset + ", i, "] = ");
+        out.push(";");
+        result.push(out.join(""));
+      }
+
+      return result.join("\n");
+    }
+
+  }
+
+  return PostScriptCompiler;
+}();
+
+exports.PostScriptCompiler = PostScriptCompiler;
+
+/***/ }),
+/* 58 */
+/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
+
+
+
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.PostScriptParser = exports.PostScriptLexer = void 0;
+
+var _util = __w_pdfjs_require__(2);
+
+var _primitives = __w_pdfjs_require__(5);
+
+var _core_utils = __w_pdfjs_require__(8);
+
+class PostScriptParser {
+  constructor(lexer) {
+    this.lexer = lexer;
+    this.operators = [];
+    this.token = null;
+    this.prev = null;
+  }
+
+  nextToken() {
+    this.prev = this.token;
+    this.token = this.lexer.getToken();
+  }
+
+  accept(type) {
+    if (this.token.type === type) {
+      this.nextToken();
+      return true;
+    }
+
+    return false;
+  }
+
+  expect(type) {
+    if (this.accept(type)) {
+      return true;
+    }
+
+    throw new _util.FormatError(`Unexpected symbol: found ${this.token.type} expected ${type}.`);
+  }
+
+  parse() {
+    this.nextToken();
+    this.expect(PostScriptTokenTypes.LBRACE);
+    this.parseBlock();
+    this.expect(PostScriptTokenTypes.RBRACE);
+    return this.operators;
+  }
+
+  parseBlock() {
+    while (true) {
+      if (this.accept(PostScriptTokenTypes.NUMBER)) {
+        this.operators.push(this.prev.value);
+      } else if (this.accept(PostScriptTokenTypes.OPERATOR)) {
+        this.operators.push(this.prev.value);
+      } else if (this.accept(PostScriptTokenTypes.LBRACE)) {
+        this.parseCondition();
+      } else {
+        return;
+      }
+    }
+  }
+
+  parseCondition() {
+    const conditionLocation = this.operators.length;
+    this.operators.push(null, null);
+    this.parseBlock();
+    this.expect(PostScriptTokenTypes.RBRACE);
+
+    if (this.accept(PostScriptTokenTypes.IF)) {
+      this.operators[conditionLocation] = this.operators.length;
+      this.operators[conditionLocation + 1] = "jz";
+    } else if (this.accept(PostScriptTokenTypes.LBRACE)) {
+      const jumpLocation = this.operators.length;
+      this.operators.push(null, null);
+      const endOfTrue = this.operators.length;
+      this.parseBlock();
+      this.expect(PostScriptTokenTypes.RBRACE);
+      this.expect(PostScriptTokenTypes.IFELSE);
+      this.operators[jumpLocation] = this.operators.length;
+      this.operators[jumpLocation + 1] = "j";
+      this.operators[conditionLocation] = endOfTrue;
+      this.operators[conditionLocation + 1] = "jz";
+    } else {
+      throw new _util.FormatError("PS Function: error parsing conditional.");
+    }
+  }
+
+}
+
+exports.PostScriptParser = PostScriptParser;
+const PostScriptTokenTypes = {
+  LBRACE: 0,
+  RBRACE: 1,
+  NUMBER: 2,
+  OPERATOR: 3,
+  IF: 4,
+  IFELSE: 5
+};
+
+class PostScriptToken {
+  static get opCache() {
+    return (0, _util.shadow)(this, "opCache", Object.create(null));
+  }
+
+  constructor(type, value) {
+    this.type = type;
+    this.value = value;
+  }
+
+  static getOperator(op) {
+    const opValue = PostScriptToken.opCache[op];
+
+    if (opValue) {
+      return opValue;
+    }
+
+    return PostScriptToken.opCache[op] = new PostScriptToken(PostScriptTokenTypes.OPERATOR, op);
+  }
+
+  static get LBRACE() {
+    return (0, _util.shadow)(this, "LBRACE", new PostScriptToken(PostScriptTokenTypes.LBRACE, "{"));
+  }
+
+  static get RBRACE() {
+    return (0, _util.shadow)(this, "RBRACE", new PostScriptToken(PostScriptTokenTypes.RBRACE, "}"));
+  }
+
+  static get IF() {
+    return (0, _util.shadow)(this, "IF", new PostScriptToken(PostScriptTokenTypes.IF, "IF"));
+  }
+
+  static get IFELSE() {
+    return (0, _util.shadow)(this, "IFELSE", new PostScriptToken(PostScriptTokenTypes.IFELSE, "IFELSE"));
+  }
+
+}
+
+class PostScriptLexer {
+  constructor(stream) {
+    this.stream = stream;
+    this.nextChar();
+    this.strBuf = [];
+  }
+
+  nextChar() {
+    return this.currentChar = this.stream.getByte();
+  }
+
+  getToken() {
+    let comment = false;
+    let ch = this.currentChar;
+
+    while (true) {
+      if (ch < 0) {
+        return _primitives.EOF;
+      }
+
+      if (comment) {
+        if (ch === 0x0a || ch === 0x0d) {
+          comment = false;
+        }
+      } else if (ch === 0x25) {
+        comment = true;
+      } else if (!(0, _core_utils.isWhiteSpace)(ch)) {
+        break;
+      }
+
+      ch = this.nextChar();
+    }
+
+    switch (ch | 0) {
+      case 0x30:
+      case 0x31:
+      case 0x32:
+      case 0x33:
+      case 0x34:
+      case 0x35:
+      case 0x36:
+      case 0x37:
+      case 0x38:
+      case 0x39:
+      case 0x2b:
+      case 0x2d:
+      case 0x2e:
+        return new PostScriptToken(PostScriptTokenTypes.NUMBER, this.getNumber());
+
+      case 0x7b:
+        this.nextChar();
+        return PostScriptToken.LBRACE;
+
+      case 0x7d:
+        this.nextChar();
+        return PostScriptToken.RBRACE;
+    }
+
+    const strBuf = this.strBuf;
+    strBuf.length = 0;
+    strBuf[0] = String.fromCharCode(ch);
+
+    while ((ch = this.nextChar()) >= 0 && (ch >= 0x41 && ch <= 0x5a || ch >= 0x61 && ch <= 0x7a)) {
+      strBuf.push(String.fromCharCode(ch));
+    }
+
+    const str = strBuf.join("");
+
+    switch (str.toLowerCase()) {
+      case "if":
+        return PostScriptToken.IF;
+
+      case "ifelse":
+        return PostScriptToken.IFELSE;
+
+      default:
+        return PostScriptToken.getOperator(str);
+    }
+  }
+
+  getNumber() {
+    let ch = this.currentChar;
+    const strBuf = this.strBuf;
+    strBuf.length = 0;
+    strBuf[0] = String.fromCharCode(ch);
+
+    while ((ch = this.nextChar()) >= 0) {
+      if (ch >= 0x30 && ch <= 0x39 || ch === 0x2d || ch === 0x2e) {
+        strBuf.push(String.fromCharCode(ch));
+      } else {
+        break;
+      }
+    }
+
+    const value = parseFloat(strBuf.join(""));
+
+    if (isNaN(value)) {
+      throw new _util.FormatError(`Invalid floating point number: ${value}`);
+    }
+
+    return value;
+  }
+
+}
+
+exports.PostScriptLexer = PostScriptLexer;
+
+/***/ }),
+/* 59 */
+/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
+
+
+
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.LocalTilingPatternCache = exports.LocalImageCache = exports.LocalGStateCache = 
exports.LocalFunctionCache = exports.LocalColorSpaceCache = exports.GlobalImageCache = void 0;
+
+var _util = __w_pdfjs_require__(2);
+
+var _primitives = __w_pdfjs_require__(5);
+
+class BaseLocalCache {
+  constructor(options) {
+    if (this.constructor === BaseLocalCache) {
+      (0, _util.unreachable)("Cannot initialize BaseLocalCache.");
+    }
+
+    this._onlyRefs = (options && options.onlyRefs) === true;
+
+    if (!this._onlyRefs) {
+      this._nameRefMap = new Map();
+      this._imageMap = new Map();
+    }
+
+    this._imageCache = new _primitives.RefSetCache();
+  }
+
+  getByName(name) {
+    if (this._onlyRefs) {
+      (0, _util.unreachable)("Should not call `getByName` method.");
+    }
+
+    const ref = this._nameRefMap.get(name);
+
+    if (ref) {
+      return this.getByRef(ref);
+    }
+
+    return this._imageMap.get(name) || null;
+  }
+
+  getByRef(ref) {
+    return this._imageCache.get(ref) || null;
+  }
+
+  set(name, ref, data) {
+    (0, _util.unreachable)("Abstract method `set` called.");
+  }
+
+}
+
+class LocalImageCache extends BaseLocalCache {
+  set(name, ref = null, data) {
+    if (typeof name !== "string") {
+      throw new Error('LocalImageCache.set - expected "name" argument.');
+    }
+
+    if (ref) {
+      if (this._imageCache.has(ref)) {
+        return;
+      }
+
+      this._nameRefMap.set(name, ref);
+
+      this._imageCache.put(ref, data);
+
+      return;
+    }
+
+    if (this._imageMap.has(name)) {
+      return;
+    }
+
+    this._imageMap.set(name, data);
+  }
+
+}
+
+exports.LocalImageCache = LocalImageCache;
+
+class LocalColorSpaceCache extends BaseLocalCache {
+  set(name = null, ref = null, data) {
+    if (typeof name !== "string" && !ref) {
+      throw new Error('LocalColorSpaceCache.set - expected "name" and/or "ref" argument.');
+    }
+
+    if (ref) {
+      if (this._imageCache.has(ref)) {
+        return;
+      }
+
+      if (name !== null) {
+        this._nameRefMap.set(name, ref);
+      }
+
+      this._imageCache.put(ref, data);
+
+      return;
+    }
+
+    if (this._imageMap.has(name)) {
+      return;
+    }
+
+    this._imageMap.set(name, data);
+  }
+
+}
+
+exports.LocalColorSpaceCache = LocalColorSpaceCache;
+
+class LocalFunctionCache extends BaseLocalCache {
+  constructor(options) {
+    super({
+      onlyRefs: true
+    });
+  }
+
+  set(name = null, ref, data) {
+    if (!ref) {
+      throw new Error('LocalFunctionCache.set - expected "ref" argument.');
+    }
+
+    if (this._imageCache.has(ref)) {
+      return;
+    }
+
+    this._imageCache.put(ref, data);
+  }
+
+}
+
+exports.LocalFunctionCache = LocalFunctionCache;
+
+class LocalGStateCache extends BaseLocalCache {
+  set(name, ref = null, data) {
+    if (typeof name !== "string") {
+      throw new Error('LocalGStateCache.set - expected "name" argument.');
+    }
+
+    if (ref) {
+      if (this._imageCache.has(ref)) {
+        return;
+      }
+
+      this._nameRefMap.set(name, ref);
+
+      this._imageCache.put(ref, data);
+
+      return;
+    }
+
+    if (this._imageMap.has(name)) {
+      return;
+    }
+
+    this._imageMap.set(name, data);
+  }
+
+}
+
+exports.LocalGStateCache = LocalGStateCache;
+
+class LocalTilingPatternCache extends BaseLocalCache {
+  constructor(options) {
+    super({
+      onlyRefs: true
+    });
+  }
+
+  set(name = null, ref, data) {
+    if (!ref) {
+      throw new Error('LocalTilingPatternCache.set - expected "ref" argument.');
+    }
+
+    if (this._imageCache.has(ref)) {
+      return;
+    }
+
+    this._imageCache.put(ref, data);
+  }
+
+}
+
+exports.LocalTilingPatternCache = LocalTilingPatternCache;
+
+class GlobalImageCache {
+  static get NUM_PAGES_THRESHOLD() {
+    return (0, _util.shadow)(this, "NUM_PAGES_THRESHOLD", 2);
+  }
+
+  static get MIN_IMAGES_TO_CACHE() {
+    return (0, _util.shadow)(this, "MIN_IMAGES_TO_CACHE", 10);
+  }
+
+  static get MAX_BYTE_SIZE() {
+    return (0, _util.shadow)(this, "MAX_BYTE_SIZE", 40e6);
+  }
+
+  constructor() {
+    this._refCache = new _primitives.RefSetCache();
+    this._imageCache = new _primitives.RefSetCache();
+  }
+
+  get _byteSize() {
+    let byteSize = 0;
+
+    this._imageCache.forEach(imageData => {
+      byteSize += imageData.byteSize;
+    });
+
+    return byteSize;
+  }
+
+  get _cacheLimitReached() {
+    if (this._imageCache.size < GlobalImageCache.MIN_IMAGES_TO_CACHE) {
+      return false;
+    }
+
+    if (this._byteSize < GlobalImageCache.MAX_BYTE_SIZE) {
+      return false;
+    }
+
+    return true;
+  }
+
+  shouldCache(ref, pageIndex) {
+    const pageIndexSet = this._refCache.get(ref);
+
+    const numPages = pageIndexSet ? pageIndexSet.size + (pageIndexSet.has(pageIndex) ? 0 : 1) : 1;
+
+    if (numPages < GlobalImageCache.NUM_PAGES_THRESHOLD) {
+      return false;
+    }
+
+    if (!this._imageCache.has(ref) && this._cacheLimitReached) {
+      return false;
+    }
+
+    return true;
+  }
+
+  addPageIndex(ref, pageIndex) {
+    let pageIndexSet = this._refCache.get(ref);
+
+    if (!pageIndexSet) {
+      pageIndexSet = new Set();
+
+      this._refCache.put(ref, pageIndexSet);
+    }
+
+    pageIndexSet.add(pageIndex);
+  }
+
+  addByteSize(ref, byteSize) {
+    const imageData = this._imageCache.get(ref);
+
+    if (!imageData) {
+      return;
+    }
+
+    if (imageData.byteSize) {
+      return;
+    }
+
+    imageData.byteSize = byteSize;
+  }
+
+  getData(ref, pageIndex) {
+    const pageIndexSet = this._refCache.get(ref);
+
+    if (!pageIndexSet) {
+      return null;
+    }
+
+    if (pageIndexSet.size < GlobalImageCache.NUM_PAGES_THRESHOLD) {
+      return null;
+    }
+
+    const imageData = this._imageCache.get(ref);
+
+    if (!imageData) {
+      return null;
+    }
+
+    pageIndexSet.add(pageIndex);
+    return imageData;
+  }
+
+  setData(ref, data) {
+    if (!this._refCache.has(ref)) {
+      throw new Error('GlobalImageCache.setData - expected "addPageIndex" to have been called.');
+    }
+
+    if (this._imageCache.has(ref)) {
+      return;
+    }
+
+    if (this._cacheLimitReached) {
+      (0, _util.warn)("GlobalImageCache.setData - cache limit reached.");
+      return;
+    }
+
+    this._imageCache.put(ref, data);
+  }
+
+  clear(onlyData = false) {
+    if (!onlyData) {
+      this._refCache.clear();
+    }
+
+    this._imageCache.clear();
+  }
+
+}
+
+exports.GlobalImageCache = GlobalImageCache;
+
+/***/ }),
+/* 60 */
+/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
+
+
+
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.bidi = bidi;
+
+var _util = __w_pdfjs_require__(2);
+
+const baseTypes = ["BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "S", "B", "S", "WS", "B", "BN", 
"BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "B", "B", "B", "S", "WS", "ON", 
"ON", "ET", "ET", "ET", "ON", "ON", "ON", "ON", "ON", "ES", "CS", "ES", "CS", "CS", "EN", "EN", "EN", "EN", 
"EN", "EN", "EN", "EN", "EN", "EN", "CS", "ON", "ON", "ON", "ON", "ON", "ON", "L", "L", "L", "L", "L", "L", 
"L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "ON", 
"ON", "ON", "ON", "ON", "ON", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", 
"L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "ON", "ON", "ON", "ON", "BN", "BN", "BN", "BN", "BN", "BN", 
"B", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", 
"BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "BN", "CS", "ON", "ET", "ET", "ET", "ET", "ON", "ON", "ON", 
"ON", "L", "ON", "ON", "B
 N", "ON", "ON", "ET", "ET", "EN", "EN", "ON", "L", "ON", "ON", "ON", "EN", "L", "ON", "ON", "ON", "ON", 
"ON", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", 
"L", "L", "L", "ON", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", 
"L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "L", "ON", "L", "L", "L", "L", "L", "L", 
"L", "L"];
+const arabicTypes = ["AN", "AN", "AN", "AN", "AN", "AN", "ON", "ON", "AL", "ET", "ET", "AL", "CS", "AL", 
"ON", "ON", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "AL", "AL", "", 
"AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", 
"NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "AN", "AN", "AN", 
"AN", "AN", "AN", "AN", "AN", "AN", "AN", "ET", "AN", "AN", "AL", "AL", "AL", "NSM", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "AL", "AL
 ", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", "AL", 
"AL", "AL", "AL", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "NSM", "AN", "ON", "NSM", "NSM", "NSM", "NSM", 
"NSM", "NSM", "AL", "AL", "NSM", "NSM", "ON", "NSM", "NSM", "NSM", "NSM", "AL", "AL", "EN", "EN", "EN", "EN", 
"EN", "EN", "EN", "EN", "EN", "EN", "AL", "AL", "AL", "AL", "AL", "AL"];
+
+function isOdd(i) {
+  return (i & 1) !== 0;
+}
+
+function isEven(i) {
+  return (i & 1) === 0;
+}
+
+function findUnequal(arr, start, value) {
+  let j, jj;
+
+  for (j = start, jj = arr.length; j < jj; ++j) {
+    if (arr[j] !== value) {
+      return j;
+    }
+  }
+
+  return j;
+}
+
+function setValues(arr, start, end, value) {
+  for (let j = start; j < end; ++j) {
+    arr[j] = value;
+  }
+}
+
+function reverseValues(arr, start, end) {
+  for (let i = start, j = end - 1; i < j; ++i, --j) {
+    const temp = arr[i];
+    arr[i] = arr[j];
+    arr[j] = temp;
+  }
+}
+
+function createBidiText(str, isLTR, vertical = false) {
+  let dir = "ltr";
+
+  if (vertical) {
+    dir = "ttb";
+  } else if (!isLTR) {
+    dir = "rtl";
+  }
+
+  return {
+    str,
+    dir
+  };
+}
+
+const chars = [];
+const types = [];
+
+function bidi(str, startLevel = -1, vertical = false) {
+  let isLTR = true;
+  const strLength = str.length;
+
+  if (strLength === 0 || vertical) {
+    return createBidiText(str, isLTR, vertical);
+  }
+
+  chars.length = strLength;
+  types.length = strLength;
+  let numBidi = 0;
+  let i, ii;
+
+  for (i = 0; i < strLength; ++i) {
+    chars[i] = str.charAt(i);
+    const charCode = str.charCodeAt(i);
+    let charType = "L";
+
+    if (charCode <= 0x00ff) {
+      charType = baseTypes[charCode];
+    } else if (0x0590 <= charCode && charCode <= 0x05f4) {
+      charType = "R";
+    } else if (0x0600 <= charCode && charCode <= 0x06ff) {
+      charType = arabicTypes[charCode & 0xff];
+
+      if (!charType) {
+        (0, _util.warn)("Bidi: invalid Unicode character " + charCode.toString(16));
+      }
+    } else if (0x0700 <= charCode && charCode <= 0x08ac) {
+      charType = "AL";
+    }
+
+    if (charType === "R" || charType === "AL" || charType === "AN") {
+      numBidi++;
+    }
+
+    types[i] = charType;
+  }
+
+  if (numBidi === 0) {
+    isLTR = true;
+    return createBidiText(str, isLTR);
+  }
+
+  if (startLevel === -1) {
+    if (numBidi / strLength < 0.3 && strLength > 4) {
+      isLTR = true;
+      startLevel = 0;
+    } else {
+      isLTR = false;
+      startLevel = 1;
+    }
+  }
+
+  const levels = [];
+
+  for (i = 0; i < strLength; ++i) {
+    levels[i] = startLevel;
+  }
+
+  const e = isOdd(startLevel) ? "R" : "L";
+  const sor = e;
+  const eor = sor;
+  let lastType = sor;
+
+  for (i = 0; i < strLength; ++i) {
+    if (types[i] === "NSM") {
+      types[i] = lastType;
+    } else {
+      lastType = types[i];
+    }
+  }
+
+  lastType = sor;
+  let t;
+
+  for (i = 0; i < strLength; ++i) {
+    t = types[i];
+
+    if (t === "EN") {
+      types[i] = lastType === "AL" ? "AN" : "EN";
+    } else if (t === "R" || t === "L" || t === "AL") {
+      lastType = t;
+    }
+  }
+
+  for (i = 0; i < strLength; ++i) {
+    t = types[i];
+
+    if (t === "AL") {
+      types[i] = "R";
+    }
+  }
+
+  for (i = 1; i < strLength - 1; ++i) {
+    if (types[i] === "ES" && types[i - 1] === "EN" && types[i + 1] === "EN") {
+      types[i] = "EN";
+    }
+
+    if (types[i] === "CS" && (types[i - 1] === "EN" || types[i - 1] === "AN") && types[i + 1] === types[i - 
1]) {
+      types[i] = types[i - 1];
+    }
+  }
+
+  for (i = 0; i < strLength; ++i) {
+    if (types[i] === "EN") {
+      for (let j = i - 1; j >= 0; --j) {
+        if (types[j] !== "ET") {
+          break;
+        }
+
+        types[j] = "EN";
+      }
+
+      for (let j = i + 1; j < strLength; ++j) {
+        if (types[j] !== "ET") {
+          break;
+        }
+
+        types[j] = "EN";
+      }
+    }
+  }
+
+  for (i = 0; i < strLength; ++i) {
+    t = types[i];
+
+    if (t === "WS" || t === "ES" || t === "ET" || t === "CS") {
+      types[i] = "ON";
+    }
+  }
+
+  lastType = sor;
+
+  for (i = 0; i < strLength; ++i) {
+    t = types[i];
+
+    if (t === "EN") {
+      types[i] = lastType === "L" ? "L" : "EN";
+    } else if (t === "R" || t === "L") {
+      lastType = t;
+    }
+  }
+
+  for (i = 0; i < strLength; ++i) {
+    if (types[i] === "ON") {
+      const end = findUnequal(types, i + 1, "ON");
+      let before = sor;
+
+      if (i > 0) {
+        before = types[i - 1];
+      }
+
+      let after = eor;
+
+      if (end + 1 < strLength) {
+        after = types[end + 1];
+      }
+
+      if (before !== "L") {
+        before = "R";
+      }
+
+      if (after !== "L") {
+        after = "R";
+      }
+
+      if (before === after) {
+        setValues(types, i, end, before);
+      }
+
+      i = end - 1;
+    }
+  }
+
+  for (i = 0; i < strLength; ++i) {
+    if (types[i] === "ON") {
+      types[i] = e;
+    }
+  }
+
+  for (i = 0; i < strLength; ++i) {
+    t = types[i];
+
+    if (isEven(levels[i])) {
+      if (t === "R") {
+        levels[i] += 1;
+      } else if (t === "AN" || t === "EN") {
+        levels[i] += 2;
+      }
+    } else {
+      if (t === "L" || t === "AN" || t === "EN") {
+        levels[i] += 1;
+      }
+    }
+  }
+
+  let highestLevel = -1;
+  let lowestOddLevel = 99;
+  let level;
+
+  for (i = 0, ii = levels.length; i < ii; ++i) {
+    level = levels[i];
+
+    if (highestLevel < level) {
+      highestLevel = level;
+    }
+
+    if (lowestOddLevel > level && isOdd(level)) {
+      lowestOddLevel = level;
+    }
+  }
+
+  for (level = highestLevel; level >= lowestOddLevel; --level) {
+    let start = -1;
+
+    for (i = 0, ii = levels.length; i < ii; ++i) {
+      if (levels[i] < level) {
+        if (start >= 0) {
+          reverseValues(chars, start, i);
+          start = -1;
+        }
+      } else if (start < 0) {
+        start = i;
+      }
+    }
+
+    if (start >= 0) {
+      reverseValues(chars, start, levels.length);
+    }
+  }
+
+  for (i = 0, ii = chars.length; i < ii; ++i) {
+    const ch = chars[i];
+
+    if (ch === "<" || ch === ">") {
+      chars[i] = "";
+    }
+  }
+
+  return createBidiText(chars.join(""), isLTR);
+}
 
 /***/ }),
 /* 61 */
@@ -51504,7 +51757,7 @@ class MurmurHash3_64 {
   update(input) {
     let data, length;
 
-    if ((0, _util.isString)(input)) {
+    if (typeof input === "string") {
       data = new Uint8Array(input.length * 2);
       length = 0;
 
@@ -52271,7 +52524,7 @@ exports.PDFImage = void 0;
 
 var _util = __w_pdfjs_require__(2);
 
-var _primitives = __w_pdfjs_require__(5);
+var _base_stream = __w_pdfjs_require__(9);
 
 var _colorspace = __w_pdfjs_require__(24);
 
@@ -52281,6 +52534,8 @@ var _jpeg_stream = __w_pdfjs_require__(37);
 
 var _jpx = __w_pdfjs_require__(40);
 
+var _primitives = __w_pdfjs_require__(5);
+
 function decodeAndClamp(value, addend, coefficient, max) {
   value = addend + value * coefficient;
 
@@ -52347,7 +52602,7 @@ class PDFImage {
     const dict = image.dict;
     const filter = dict.get("F", "Filter");
 
-    if ((0, _primitives.isName)(filter)) {
+    if (filter instanceof _primitives.Name) {
       switch (filter.name) {
         case "JPXDecode":
           const jpxImage = new _jpx.JpxImage();
@@ -52462,7 +52717,7 @@ class PDFImage {
         localColorSpaceCache
       });
     } else if (mask) {
-      if ((0, _primitives.isStream)(mask)) {
+      if (mask instanceof _base_stream.BaseStream) {
         const maskDict = mask.dict,
               imageMask = maskDict.get("IM", "ImageMask");
 
@@ -52502,7 +52757,7 @@ class PDFImage {
     if (smask) {
       smaskData = smask;
     } else if (mask) {
-      if ((0, _primitives.isStream)(mask) || Array.isArray(mask)) {
+      if (mask instanceof _base_stream.BaseStream || Array.isArray(mask)) {
         maskData = mask;
       } else {
         (0, _util.warn)("Unsupported mask format.");
@@ -52945,25 +53200,27 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.Catalog = void 0;
 
-var _primitives = __w_pdfjs_require__(5);
-
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 var _util = __w_pdfjs_require__(2);
 
+var _primitives = __w_pdfjs_require__(5);
+
 var _name_number_tree = __w_pdfjs_require__(65);
 
-var _base_stream = __w_pdfjs_require__(6);
+var _base_stream = __w_pdfjs_require__(9);
+
+var _cleanup_helper = __w_pdfjs_require__(66);
 
 var _colorspace = __w_pdfjs_require__(24);
 
-var _file_spec = __w_pdfjs_require__(66);
+var _file_spec = __w_pdfjs_require__(67);
 
-var _image_utils = __w_pdfjs_require__(58);
+var _image_utils = __w_pdfjs_require__(59);
 
-var _metadata_parser = __w_pdfjs_require__(67);
+var _metadata_parser = __w_pdfjs_require__(68);
 
-var _struct_tree = __w_pdfjs_require__(69);
+var _struct_tree = __w_pdfjs_require__(70);
 
 function fetchDestination(dest) {
   if (dest instanceof _primitives.Dict) {
@@ -53018,7 +53275,7 @@ class Catalog {
     try {
       const obj = this._catDict.get("Collection");
 
-      if ((0, _primitives.isDict)(obj) && obj.size > 0) {
+      if (obj instanceof _primitives.Dict && obj.size > 0) {
         collection = obj;
       }
     } catch (ex) {
@@ -53038,7 +53295,7 @@ class Catalog {
     try {
       const obj = this._catDict.get("AcroForm");
 
-      if ((0, _primitives.isDict)(obj) && obj.size > 0) {
+      if (obj instanceof _primitives.Dict && obj.size > 0) {
         acroForm = obj;
       }
     } catch (ex) {
@@ -53055,7 +53312,7 @@ class Catalog {
   get acroFormRef() {
     const value = this._catDict.getRaw("AcroForm");
 
-    return (0, _util.shadow)(this, "acroFormRef", (0, _primitives.isRef)(value) ? value : null);
+    return (0, _util.shadow)(this, "acroFormRef", value instanceof _primitives.Ref ? value : null);
   }
 
   get metadata() {
@@ -53113,7 +53370,7 @@ class Catalog {
   _readMarkInfo() {
     const obj = this._catDict.get("MarkInfo");
 
-    if (!(0, _primitives.isDict)(obj)) {
+    if (!(obj instanceof _primitives.Dict)) {
       return null;
     }
 
@@ -53130,7 +53387,7 @@ class Catalog {
 
       const value = obj.get(key);
 
-      if (!(0, _util.isBool)(value)) {
+      if (typeof value !== "boolean") {
         continue;
       }
 
@@ -53159,7 +53416,7 @@ class Catalog {
   _readStructTreeRoot() {
     const obj = this._catDict.get("StructTreeRoot");
 
-    if (!(0, _primitives.isDict)(obj)) {
+    if (!(obj instanceof _primitives.Dict)) {
       return null;
     }
 
@@ -53171,7 +53428,7 @@ class Catalog {
   get toplevelPagesDict() {
     const pagesObj = this._catDict.get("Pages");
 
-    if (!(0, _primitives.isDict)(pagesObj)) {
+    if (!(pagesObj instanceof _primitives.Dict)) {
       throw new _util.FormatError("Invalid top-level pages dictionary.");
     }
 
@@ -53197,13 +53454,13 @@ class Catalog {
   _readDocumentOutline() {
     let obj = this._catDict.get("Outlines");
 
-    if (!(0, _primitives.isDict)(obj)) {
+    if (!(obj instanceof _primitives.Dict)) {
       return null;
     }
 
     obj = obj.getRaw("First");
 
-    if (!(0, _primitives.isRef)(obj)) {
+    if (!(obj instanceof _primitives.Ref)) {
       return null;
     }
 
@@ -53265,7 +53522,7 @@ class Catalog {
       i.parent.items.push(outlineItem);
       obj = outlineDict.getRaw("First");
 
-      if ((0, _primitives.isRef)(obj) && !processed.has(obj)) {
+      if (obj instanceof _primitives.Ref && !processed.has(obj)) {
         queue.push({
           obj,
           parent: outlineItem
@@ -53275,7 +53532,7 @@ class Catalog {
 
       obj = outlineDict.getRaw("Next");
 
-      if ((0, _primitives.isRef)(obj) && !processed.has(obj)) {
+      if (obj instanceof _primitives.Ref && !processed.has(obj)) {
         queue.push({
           obj,
           parent: i.parent
@@ -53306,13 +53563,13 @@ class Catalog {
   _readPermissions() {
     const encrypt = this.xref.trailer.get("Encrypt");
 
-    if (!(0, _primitives.isDict)(encrypt)) {
+    if (!(encrypt instanceof _primitives.Dict)) {
       return null;
     }
 
     let flags = encrypt.get("P");
 
-    if (!(0, _util.isNum)(flags)) {
+    if (typeof flags !== "number") {
       return null;
     }
 
@@ -53356,7 +53613,7 @@ class Catalog {
       const groupRefs = [];
 
       for (const groupRef of groupsData) {
-        if (!(0, _primitives.isRef)(groupRef)) {
+        if (!(groupRef instanceof _primitives.Ref)) {
           continue;
         }
 
@@ -53364,8 +53621,8 @@ class Catalog {
         const group = this.xref.fetchIfRef(groupRef);
         groups.push({
           id: groupRef.toString(),
-          name: (0, _util.isString)(group.get("Name")) ? (0, _util.stringToPDFString)(group.get("Name")) : 
null,
-          intent: (0, _util.isString)(group.get("Intent")) ? (0, 
_util.stringToPDFString)(group.get("Intent")) : null
+          name: typeof group.get("Name") === "string" ? (0, _util.stringToPDFString)(group.get("Name")) : 
null,
+          intent: typeof group.get("Intent") === "string" ? (0, 
_util.stringToPDFString)(group.get("Intent")) : null
         });
       }
 
@@ -53388,7 +53645,7 @@ class Catalog {
 
       if (Array.isArray(refs)) {
         for (const value of refs) {
-          if (!(0, _primitives.isRef)(value)) {
+          if (!(value instanceof _primitives.Ref)) {
             continue;
           }
 
@@ -53409,7 +53666,7 @@ class Catalog {
       const order = [];
 
       for (const value of refs) {
-        if ((0, _primitives.isRef)(value) && contentGroupRefs.includes(value)) {
+        if (value instanceof _primitives.Ref && contentGroupRefs.includes(value)) {
           parsedOrderRefs.put(value);
           order.push(value.toString());
           continue;
@@ -53480,9 +53737,9 @@ class Catalog {
           parsedOrderRefs = new _primitives.RefSet(),
           MAX_NESTED_LEVELS = 10;
     return {
-      name: (0, _util.isString)(config.get("Name")) ? (0, _util.stringToPDFString)(config.get("Name")) : 
null,
-      creator: (0, _util.isString)(config.get("Creator")) ? (0, 
_util.stringToPDFString)(config.get("Creator")) : null,
-      baseState: (0, _primitives.isName)(config.get("BaseState")) ? config.get("BaseState").name : null,
+      name: typeof config.get("Name") === "string" ? (0, _util.stringToPDFString)(config.get("Name")) : null,
+      creator: typeof config.get("Creator") === "string" ? (0, 
_util.stringToPDFString)(config.get("Creator")) : null,
+      baseState: config.get("BaseState") instanceof _primitives.Name ? config.get("BaseState").name : null,
       on: parseOnOff(config.get("ON")),
       off: parseOnOff(config.get("OFF")),
       order: parseOrder(config.get("Order")),
@@ -53611,7 +53868,7 @@ class Catalog {
       const labelDict = nums.get(i);
 
       if (labelDict !== undefined) {
-        if (!(0, _primitives.isDict)(labelDict)) {
+        if (!(labelDict instanceof _primitives.Dict)) {
           throw new _util.FormatError("PageLabel is not a dictionary.");
         }
 
@@ -53622,7 +53879,7 @@ class Catalog {
         if (labelDict.has("S")) {
           const s = labelDict.get("S");
 
-          if (!(0, _primitives.isName)(s)) {
+          if (!(s instanceof _primitives.Name)) {
             throw new _util.FormatError("Invalid style in PageLabel dictionary.");
           }
 
@@ -53634,7 +53891,7 @@ class Catalog {
         if (labelDict.has("P")) {
           const p = labelDict.get("P");
 
-          if (!(0, _util.isString)(p)) {
+          if (typeof p !== "string") {
             throw new _util.FormatError("Invalid prefix in PageLabel dictionary.");
           }
 
@@ -53703,7 +53960,7 @@ class Catalog {
 
     let pageLayout = "";
 
-    if ((0, _primitives.isName)(obj)) {
+    if (obj instanceof _primitives.Name) {
       switch (obj.name) {
         case "SinglePage":
         case "OneColumn":
@@ -53723,7 +53980,7 @@ class Catalog {
 
     let pageMode = "UseNone";
 
-    if ((0, _primitives.isName)(obj)) {
+    if (obj instanceof _primitives.Name) {
       switch (obj.name) {
         case "UseNone":
         case "UseOutlines":
@@ -53739,47 +53996,34 @@ class Catalog {
   }
 
   get viewerPreferences() {
-    const ViewerPreferencesValidators = {
-      HideToolbar: _util.isBool,
-      HideMenubar: _util.isBool,
-      HideWindowUI: _util.isBool,
-      FitWindow: _util.isBool,
-      CenterWindow: _util.isBool,
-      DisplayDocTitle: _util.isBool,
-      NonFullScreenPageMode: _primitives.isName,
-      Direction: _primitives.isName,
-      ViewArea: _primitives.isName,
-      ViewClip: _primitives.isName,
-      PrintArea: _primitives.isName,
-      PrintClip: _primitives.isName,
-      PrintScaling: _primitives.isName,
-      Duplex: _primitives.isName,
-      PickTrayByPDFSize: _util.isBool,
-      PrintPageRange: Array.isArray,
-      NumCopies: Number.isInteger
-    };
-
     const obj = this._catDict.get("ViewerPreferences");
 
-    let prefs = null;
+    if (!(obj instanceof _primitives.Dict)) {
+      return (0, _util.shadow)(this, "viewerPreferences", null);
+    }
 
-    if ((0, _primitives.isDict)(obj)) {
-      for (const key in ViewerPreferencesValidators) {
-        if (!obj.has(key)) {
-          continue;
-        }
+    let prefs = null;
 
-        const value = obj.get(key);
+    for (const key of obj.getKeys()) {
+      const value = obj.get(key);
+      let prefValue;
 
-        if (!ViewerPreferencesValidators[key](value)) {
-          (0, _util.info)(`Bad value in ViewerPreferences for "${key}".`);
-          continue;
-        }
+      switch (key) {
+        case "HideToolbar":
+        case "HideMenubar":
+        case "HideWindowUI":
+        case "FitWindow":
+        case "CenterWindow":
+        case "DisplayDocTitle":
+        case "PickTrayByPDFSize":
+          if (typeof value === "boolean") {
+            prefValue = value;
+          }
 
-        let prefValue;
+          break;
 
-        switch (key) {
-          case "NonFullScreenPageMode":
+        case "NonFullScreenPageMode":
+          if (value instanceof _primitives.Name) {
             switch (value.name) {
               case "UseNone":
               case "UseOutlines":
@@ -53791,10 +54035,12 @@ class Catalog {
               default:
                 prefValue = "UseNone";
             }
+          }
 
-            break;
+          break;
 
-          case "Direction":
+        case "Direction":
+          if (value instanceof _primitives.Name) {
             switch (value.name) {
               case "L2R":
               case "R2L":
@@ -53804,13 +54050,15 @@ class Catalog {
               default:
                 prefValue = "L2R";
             }
+          }
 
-            break;
+          break;
 
-          case "ViewArea":
-          case "ViewClip":
-          case "PrintArea":
-          case "PrintClip":
+        case "ViewArea":
+        case "ViewClip":
+        case "PrintArea":
+        case "PrintClip":
+          if (value instanceof _primitives.Name) {
             switch (value.name) {
               case "MediaBox":
               case "CropBox":
@@ -53823,10 +54071,12 @@ class Catalog {
               default:
                 prefValue = "CropBox";
             }
+          }
 
-            break;
+          break;
 
-          case "PrintScaling":
+        case "PrintScaling":
+          if (value instanceof _primitives.Name) {
             switch (value.name) {
               case "None":
               case "AppDefault":
@@ -53836,10 +54086,12 @@ class Catalog {
               default:
                 prefValue = "AppDefault";
             }
+          }
 
-            break;
+          break;
 
-          case "Duplex":
+        case "Duplex":
+          if (value instanceof _primitives.Name) {
             switch (value.name) {
               case "Simplex":
               case "DuplexFlipShortEdge":
@@ -53850,16 +54102,12 @@ class Catalog {
               default:
                 prefValue = "None";
             }
+          }
 
-            break;
-
-          case "PrintPageRange":
-            const length = value.length;
-
-            if (length % 2 !== 0) {
-              break;
-            }
+          break;
 
+        case "PrintPageRange":
+          if (Array.isArray(value) && value.length % 2 === 0) {
             const isValid = value.every((page, i, arr) => {
               return Number.isInteger(page) && page > 0 && (i === 0 || page >= arr[i - 1]) && page <= 
this.numPages;
             });
@@ -53867,34 +54115,32 @@ class Catalog {
             if (isValid) {
               prefValue = value;
             }
+          }
 
-            break;
-
-          case "NumCopies":
-            if (value > 0) {
-              prefValue = value;
-            }
+          break;
 
-            break;
+        case "NumCopies":
+          if (Number.isInteger(value) && value > 0) {
+            prefValue = value;
+          }
 
-          default:
-            if (typeof value !== "boolean") {
-              throw new _util.FormatError(`viewerPreferences - expected a boolean value for: ${key}`);
-            }
+          break;
 
-            prefValue = value;
-        }
+        default:
+          (0, _util.warn)(`Ignoring non-standard key in ViewerPreferences: ${key}.`);
+          continue;
+      }
 
-        if (prefValue !== undefined) {
-          if (!prefs) {
-            prefs = Object.create(null);
-          }
+      if (prefValue === undefined) {
+        (0, _util.warn)(`Bad value, for key "${key}", in ViewerPreferences: ${value}.`);
+        continue;
+      }
 
-          prefs[key] = prefValue;
-        } else {
-          (0, _util.info)(`Bad value in ViewerPreferences for "${key}".`);
-        }
+      if (!prefs) {
+        prefs = Object.create(null);
       }
+
+      prefs[key] = prefValue;
     }
 
     return (0, _util.shadow)(this, "viewerPreferences", prefs);
@@ -53905,7 +54151,7 @@ class Catalog {
 
     const openAction = Object.create(null);
 
-    if ((0, _primitives.isDict)(obj)) {
+    if (obj instanceof _primitives.Dict) {
       const destDict = new _primitives.Dict(this.xref);
       destDict.set("A", obj);
       const resultObj = {
@@ -53988,7 +54234,7 @@ class Catalog {
 
       let js = jsDict.get("JS");
 
-      if ((0, _primitives.isStream)(js)) {
+      if (js instanceof _base_stream.BaseStream) {
         js = js.getString();
       } else if (typeof js !== "string") {
         return;
@@ -54062,7 +54308,7 @@ class Catalog {
   }
 
   cleanup(manuallyTriggered = false) {
-    (0, _primitives.clearPrimitiveCaches)();
+    (0, _cleanup_helper.clearGlobalCaches)();
     this.globalImageCache.clear(manuallyTriggered);
     this.pageKidsCountCache.clear();
     this.pageIndexCache.clear();
@@ -54084,8 +54330,7 @@ class Catalog {
     });
   }
 
-  getPageDict(pageIndex) {
-    const capability = (0, _util.createPromiseCapability)();
+  async getPageDict(pageIndex) {
     const nodesToVisit = [this.toplevelPagesDict];
     const visitedNodes = new _primitives.RefSet();
 
@@ -54096,125 +54341,115 @@ class Catalog {
     }
 
     const xref = this.xref,
-          pageKidsCountCache = this.pageKidsCountCache;
+          pageKidsCountCache = this.pageKidsCountCache,
+          pageIndexCache = this.pageIndexCache;
     let currentPageIndex = 0;
 
-    function next() {
-      while (nodesToVisit.length) {
-        const currentNode = nodesToVisit.pop();
+    while (nodesToVisit.length) {
+      const currentNode = nodesToVisit.pop();
 
-        if (currentNode instanceof _primitives.Ref) {
-          const count = pageKidsCountCache.get(currentNode);
+      if (currentNode instanceof _primitives.Ref) {
+        const count = pageKidsCountCache.get(currentNode);
 
-          if (count >= 0 && currentPageIndex + count <= pageIndex) {
-            currentPageIndex += count;
-            continue;
-          }
+        if (count >= 0 && currentPageIndex + count <= pageIndex) {
+          currentPageIndex += count;
+          continue;
+        }
 
-          if (visitedNodes.has(currentNode)) {
-            capability.reject(new _util.FormatError("Pages tree contains circular reference."));
-            return;
-          }
+        if (visitedNodes.has(currentNode)) {
+          throw new _util.FormatError("Pages tree contains circular reference.");
+        }
 
-          visitedNodes.put(currentNode);
-          xref.fetchAsync(currentNode).then(function (obj) {
-            if ((0, _primitives.isDict)(obj, "Page") || (0, _primitives.isDict)(obj) && !obj.has("Kids")) {
-              if (currentNode && !pageKidsCountCache.has(currentNode)) {
-                pageKidsCountCache.put(currentNode, 1);
-              }
+        visitedNodes.put(currentNode);
+        const obj = await xref.fetchAsync(currentNode);
 
-              if (pageIndex === currentPageIndex) {
-                capability.resolve([obj, currentNode]);
-              } else {
-                currentPageIndex++;
-                next();
-              }
+        if (obj instanceof _primitives.Dict) {
+          let type = obj.getRaw("Type");
 
-              return;
-            }
+          if (type instanceof _primitives.Ref) {
+            type = await xref.fetchAsync(type);
+          }
 
-            nodesToVisit.push(obj);
-            next();
-          }, capability.reject);
-          return;
-        }
+          if ((0, _primitives.isName)(type, "Page") || !obj.has("Kids")) {
+            if (!pageKidsCountCache.has(currentNode)) {
+              pageKidsCountCache.put(currentNode, 1);
+            }
 
-        if (!(currentNode instanceof _primitives.Dict)) {
-          capability.reject(new _util.FormatError("Page dictionary kid reference points to wrong type of 
object."));
-          return;
-        }
+            if (!pageIndexCache.has(currentNode)) {
+              pageIndexCache.put(currentNode, currentPageIndex);
+            }
 
-        let count;
+            if (currentPageIndex === pageIndex) {
+              return [obj, currentNode];
+            }
 
-        try {
-          count = currentNode.get("Count");
-        } catch (ex) {
-          if (ex instanceof _core_utils.MissingDataException) {
-            throw ex;
+            currentPageIndex++;
+            continue;
           }
         }
 
-        if (Number.isInteger(count) && count >= 0) {
-          const objId = currentNode.objId;
+        nodesToVisit.push(obj);
+        continue;
+      }
 
-          if (objId && !pageKidsCountCache.has(objId)) {
-            pageKidsCountCache.put(objId, count);
-          }
+      if (!(currentNode instanceof _primitives.Dict)) {
+        throw new _util.FormatError("Page dictionary kid reference points to wrong type of object.");
+      }
 
-          if (currentPageIndex + count <= pageIndex) {
-            currentPageIndex += count;
-            continue;
-          }
-        }
+      const {
+        objId
+      } = currentNode;
+      let count = currentNode.getRaw("Count");
 
-        let kids;
+      if (count instanceof _primitives.Ref) {
+        count = await xref.fetchAsync(count);
+      }
 
-        try {
-          kids = currentNode.get("Kids");
-        } catch (ex) {
-          if (ex instanceof _core_utils.MissingDataException) {
-            throw ex;
-          }
+      if (Number.isInteger(count) && count >= 0) {
+        if (objId && !pageKidsCountCache.has(objId)) {
+          pageKidsCountCache.put(objId, count);
         }
 
-        if (!Array.isArray(kids)) {
-          let type;
+        if (currentPageIndex + count <= pageIndex) {
+          currentPageIndex += count;
+          continue;
+        }
+      }
 
-          try {
-            type = currentNode.get("Type");
-          } catch (ex) {
-            if (ex instanceof _core_utils.MissingDataException) {
-              throw ex;
-            }
-          }
+      let kids = currentNode.getRaw("Kids");
 
-          if ((0, _primitives.isName)(type, "Page") || !currentNode.has("Type") && 
currentNode.has("Contents")) {
-            if (currentPageIndex === pageIndex) {
-              capability.resolve([currentNode, null]);
-              return;
-            }
+      if (kids instanceof _primitives.Ref) {
+        kids = await xref.fetchAsync(kids);
+      }
 
-            currentPageIndex++;
-            continue;
-          }
+      if (!Array.isArray(kids)) {
+        let type = currentNode.getRaw("Type");
 
-          capability.reject(new _util.FormatError("Page dictionary kids object is not an array."));
-          return;
+        if (type instanceof _primitives.Ref) {
+          type = await xref.fetchAsync(type);
         }
 
-        for (let last = kids.length - 1; last >= 0; last--) {
-          nodesToVisit.push(kids[last]);
+        if ((0, _primitives.isName)(type, "Page") || !currentNode.has("Kids")) {
+          if (currentPageIndex === pageIndex) {
+            return [currentNode, null];
+          }
+
+          currentPageIndex++;
+          continue;
         }
+
+        throw new _util.FormatError("Page dictionary kids object is not an array.");
       }
 
-      capability.reject(new Error(`Page index ${pageIndex} not found.`));
+      for (let last = kids.length - 1; last >= 0; last--) {
+        nodesToVisit.push(kids[last]);
+      }
     }
 
-    next();
-    return capability.promise;
+    throw new Error(`Page index ${pageIndex} not found.`);
   }
 
-  getAllPageDicts(recoveryMode = false) {
+  async getAllPageDicts(recoveryMode = false) {
     const queue = [{
       currentNode: this.toplevelPagesDict,
       posInKids: 0
@@ -54227,14 +54462,24 @@ class Catalog {
       visitedNodes.put(pagesRef);
     }
 
-    const map = new Map();
+    const map = new Map(),
+          xref = this.xref,
+          pageIndexCache = this.pageIndexCache;
     let pageIndex = 0;
 
     function addPageDict(pageDict, pageRef) {
+      if (pageRef && !pageIndexCache.has(pageRef)) {
+        pageIndexCache.put(pageRef, pageIndex);
+      }
+
       map.set(pageIndex++, [pageDict, pageRef]);
     }
 
     function addPageError(error) {
+      if (error instanceof _core_utils.XRefEntryException && !recoveryMode) {
+        throw error;
+      }
+
       map.set(pageIndex++, [error, null]);
     }
 
@@ -54244,21 +54489,15 @@ class Catalog {
         currentNode,
         posInKids
       } = queueItem;
-      let kids;
+      let kids = currentNode.getRaw("Kids");
 
-      try {
-        kids = currentNode.get("Kids");
-      } catch (ex) {
-        if (ex instanceof _core_utils.MissingDataException) {
-          throw ex;
-        }
-
-        if (ex instanceof _core_utils.XRefEntryException && !recoveryMode) {
-          throw ex;
+      if (kids instanceof _primitives.Ref) {
+        try {
+          kids = await xref.fetchAsync(kids);
+        } catch (ex) {
+          addPageError(ex);
+          break;
         }
-
-        addPageError(ex);
-        break;
       }
 
       if (!Array.isArray(kids)) {
@@ -54275,27 +54514,19 @@ class Catalog {
       let obj;
 
       if (kidObj instanceof _primitives.Ref) {
-        try {
-          obj = this.xref.fetch(kidObj);
-        } catch (ex) {
-          if (ex instanceof _core_utils.MissingDataException) {
-            throw ex;
-          }
-
-          if (ex instanceof _core_utils.XRefEntryException && !recoveryMode) {
-            throw ex;
-          }
-
-          addPageError(ex);
-          break;
-        }
-
         if (visitedNodes.has(kidObj)) {
           addPageError(new _util.FormatError("Pages tree contains circular reference."));
           break;
         }
 
         visitedNodes.put(kidObj);
+
+        try {
+          obj = await xref.fetchAsync(kidObj);
+        } catch (ex) {
+          addPageError(ex);
+          break;
+        }
       } else {
         obj = kidObj;
       }
@@ -54305,7 +54536,18 @@ class Catalog {
         break;
       }
 
-      if ((0, _primitives.isDict)(obj, "Page") || !obj.has("Kids")) {
+      let type = obj.getRaw("Type");
+
+      if (type instanceof _primitives.Ref) {
+        try {
+          type = await xref.fetchAsync(type);
+        } catch (ex) {
+          addPageError(ex);
+          break;
+        }
+      }
+
+      if ((0, _primitives.isName)(type, "Page") || !obj.has("Kids")) {
         addPageDict(obj, kidObj instanceof _primitives.Ref ? kidObj : null);
       } else {
         queue.push({
@@ -54333,7 +54575,7 @@ class Catalog {
       let total = 0,
           parentRef;
       return xref.fetchAsync(kidRef).then(function (node) {
-        if ((0, _primitives.isRefsEqual)(kidRef, pageRef) && !(0, _primitives.isDict)(node, "Page") && !((0, 
_primitives.isDict)(node) && !node.has("Type") && node.has("Contents"))) {
+        if ((0, _primitives.isRefsEqual)(kidRef, pageRef) && !(0, _primitives.isDict)(node, "Page") && 
!(node instanceof _primitives.Dict && !node.has("Type") && node.has("Contents"))) {
           throw new _util.FormatError("The reference does not point to a /Page dictionary.");
         }
 
@@ -54341,7 +54583,7 @@ class Catalog {
           return null;
         }
 
-        if (!(0, _primitives.isDict)(node)) {
+        if (!(node instanceof _primitives.Dict)) {
           throw new _util.FormatError("Node must be a dictionary.");
         }
 
@@ -54352,7 +54594,7 @@ class Catalog {
           return null;
         }
 
-        if (!(0, _primitives.isDict)(parent)) {
+        if (!(parent instanceof _primitives.Dict)) {
           throw new _util.FormatError("Parent must be a dictionary.");
         }
 
@@ -54368,7 +54610,7 @@ class Catalog {
         for (let i = 0, ii = kids.length; i < ii; i++) {
           const kid = kids[i];
 
-          if (!(0, _primitives.isRef)(kid)) {
+          if (!(kid instanceof _primitives.Ref)) {
             throw new _util.FormatError("Kid must be a reference.");
           }
 
@@ -54378,7 +54620,7 @@ class Catalog {
           }
 
           kidPromises.push(xref.fetchAsync(kid).then(function (obj) {
-            if (!(0, _primitives.isDict)(obj)) {
+            if (!(obj instanceof _primitives.Dict)) {
               throw new _util.FormatError("Kid node must be a dictionary.");
             }
 
@@ -54419,7 +54661,7 @@ class Catalog {
   static parseDestDictionary(params) {
     const destDict = params.destDict;
 
-    if (!(0, _primitives.isDict)(destDict)) {
+    if (!(destDict instanceof _primitives.Dict)) {
       (0, _util.warn)("parseDestDictionary: `destDict` must be a dictionary.");
       return;
     }
@@ -54436,13 +54678,13 @@ class Catalog {
         url,
         dest;
 
-    if (!(0, _primitives.isDict)(action)) {
+    if (!(action instanceof _primitives.Dict)) {
       if (destDict.has("Dest")) {
         action = destDict.get("Dest");
       } else {
         action = destDict.get("AA");
 
-        if ((0, _primitives.isDict)(action)) {
+        if (action instanceof _primitives.Dict) {
           if (action.has("D")) {
             action = action.get("D");
           } else if (action.has("U")) {
@@ -54452,10 +54694,10 @@ class Catalog {
       }
     }
 
-    if ((0, _primitives.isDict)(action)) {
+    if (action instanceof _primitives.Dict) {
       const actionType = action.get("S");
 
-      if (!(0, _primitives.isName)(actionType)) {
+      if (!(actionType instanceof _primitives.Name)) {
         (0, _util.warn)("parseDestDictionary: Invalid type in Action dictionary.");
         return;
       }
@@ -54465,14 +54707,14 @@ class Catalog {
       switch (actionName) {
         case "ResetForm":
           const flags = action.get("Flags");
-          const include = (((0, _util.isNum)(flags) ? flags : 0) & 1) === 0;
+          const include = ((typeof flags === "number" ? flags : 0) & 1) === 0;
           const fields = [];
           const refs = [];
 
           for (const obj of action.get("Fields") || []) {
-            if ((0, _primitives.isRef)(obj)) {
+            if (obj instanceof _primitives.Ref) {
               refs.push(obj.toString());
-            } else if ((0, _util.isString)(obj)) {
+            } else if (typeof obj === "string") {
               fields.push((0, _util.stringToPDFString)(obj));
             }
           }
@@ -54501,23 +54743,23 @@ class Catalog {
         case "GoToR":
           const urlDict = action.get("F");
 
-          if ((0, _primitives.isDict)(urlDict)) {
+          if (urlDict instanceof _primitives.Dict) {
             url = urlDict.get("F") || null;
-          } else if ((0, _util.isString)(urlDict)) {
+          } else if (typeof urlDict === "string") {
             url = urlDict;
           }
 
           let remoteDest = action.get("D");
 
           if (remoteDest) {
-            if ((0, _primitives.isName)(remoteDest)) {
+            if (remoteDest instanceof _primitives.Name) {
               remoteDest = remoteDest.name;
             }
 
-            if ((0, _util.isString)(url)) {
+            if (typeof url === "string") {
               const baseUrl = url.split("#")[0];
 
-              if ((0, _util.isString)(remoteDest)) {
+              if (typeof remoteDest === "string") {
                 url = baseUrl + "#" + remoteDest;
               } else if (Array.isArray(remoteDest)) {
                 url = baseUrl + "#" + JSON.stringify(remoteDest);
@@ -54527,7 +54769,7 @@ class Catalog {
 
           const newWindow = action.get("NewWindow");
 
-          if ((0, _util.isBool)(newWindow)) {
+          if (typeof newWindow === "boolean") {
             resultObj.newWindow = newWindow;
           }
 
@@ -54536,7 +54778,7 @@ class Catalog {
         case "Named":
           const namedAction = action.get("N");
 
-          if ((0, _primitives.isName)(namedAction)) {
+          if (namedAction instanceof _primitives.Name) {
             resultObj.action = namedAction.name;
           }
 
@@ -54546,9 +54788,9 @@ class Catalog {
           const jsAction = action.get("JS");
           let js;
 
-          if ((0, _primitives.isStream)(jsAction)) {
+          if (jsAction instanceof _base_stream.BaseStream) {
             js = jsAction.getString();
-          } else if ((0, _util.isString)(jsAction)) {
+          } else if (typeof jsAction === "string") {
             js = jsAction;
           }
 
@@ -54572,7 +54814,7 @@ class Catalog {
       dest = destDict.get("Dest");
     }
 
-    if ((0, _util.isString)(url)) {
+    if (typeof url === "string") {
       const absoluteUrl = (0, _util.createValidAbsoluteUrl)(url, docBaseUrl, {
         addDefaultProtocol: true,
         tryConvertEncoding: true
@@ -54586,11 +54828,11 @@ class Catalog {
     }
 
     if (dest) {
-      if ((0, _primitives.isName)(dest)) {
+      if (dest instanceof _primitives.Name) {
         dest = dest.name;
       }
 
-      if ((0, _util.isString)(dest) || Array.isArray(dest)) {
+      if (typeof dest === "string" || Array.isArray(dest)) {
         resultObj.dest = dest;
       }
     }
@@ -54611,10 +54853,10 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.NumberTree = exports.NameTree = void 0;
 
-var _util = __w_pdfjs_require__(2);
-
 var _primitives = __w_pdfjs_require__(5);
 
+var _util = __w_pdfjs_require__(2);
+
 class NameOrNumberTree {
   constructor(root, xref, type) {
     if (this.constructor === NameOrNumberTree) {
@@ -54641,7 +54883,7 @@ class NameOrNumberTree {
     while (queue.length > 0) {
       const obj = xref.fetchIfRef(queue.shift());
 
-      if (!(0, _primitives.isDict)(obj)) {
+      if (!(obj instanceof _primitives.Dict)) {
         continue;
       }
 
@@ -54774,12 +55016,34 @@ exports.NumberTree = NumberTree;
 Object.defineProperty(exports, "__esModule", ({
   value: true
 }));
-exports.FileSpec = void 0;
+exports.clearGlobalCaches = clearGlobalCaches;
 
 var _primitives = __w_pdfjs_require__(5);
 
+var _unicode = __w_pdfjs_require__(21);
+
+function clearGlobalCaches() {
+  (0, _primitives.clearPrimitiveCaches)();
+  (0, _unicode.clearUnicodeCaches)();
+}
+
+/***/ }),
+/* 67 */
+/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
+
+
+
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.FileSpec = void 0;
+
 var _util = __w_pdfjs_require__(2);
 
+var _base_stream = __w_pdfjs_require__(9);
+
+var _primitives = __w_pdfjs_require__(5);
+
 function pickPlatformItem(dict) {
   if (dict.has("UF")) {
     return dict.get("UF");
@@ -54798,7 +55062,7 @@ function pickPlatformItem(dict) {
 
 class FileSpec {
   constructor(root, xref) {
-    if (!root || !(0, _primitives.isDict)(root)) {
+    if (!(root instanceof _primitives.Dict)) {
       return;
     }
 
@@ -54846,7 +55110,7 @@ class FileSpec {
     if (this.contentRef) {
       const fileObj = this.xref.fetchIfRef(this.contentRef);
 
-      if (fileObj && (0, _primitives.isStream)(fileObj)) {
+      if (fileObj instanceof _base_stream.BaseStream) {
         content = fileObj.getBytes();
       } else {
         (0, _util.warn)("Embedded file specification points to non-existing/invalid content");
@@ -54870,7 +55134,7 @@ class FileSpec {
 exports.FileSpec = FileSpec;
 
 /***/ }),
-/* 67 */
+/* 68 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -54880,7 +55144,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.MetadataParser = void 0;
 
-var _xml_parser = __w_pdfjs_require__(68);
+var _xml_parser = __w_pdfjs_require__(69);
 
 class MetadataParser {
   constructor(data) {
@@ -55009,7 +55273,7 @@ class MetadataParser {
 exports.MetadataParser = MetadataParser;
 
 /***/ }),
-/* 68 */
+/* 69 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -55019,7 +55283,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.XMLParserErrorCode = exports.XMLParserBase = exports.SimpleXMLParser = exports.SimpleDOMNode = void 
0;
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 const XMLParserErrorCode = {
   NoError: 0,
@@ -55556,7 +55820,7 @@ class SimpleXMLParser extends XMLParserBase {
 exports.SimpleXMLParser = SimpleXMLParser;
 
 /***/ }),
-/* 69 */
+/* 70 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -55593,12 +55857,12 @@ class StructTreeRoot {
   readRoleMap() {
     const roleMapDict = this.dict.get("RoleMap");
 
-    if (!(0, _primitives.isDict)(roleMapDict)) {
+    if (!(roleMapDict instanceof _primitives.Dict)) {
       return;
     }
 
     roleMapDict.forEach((key, value) => {
-      if (!(0, _primitives.isName)(value)) {
+      if (!(value instanceof _primitives.Name)) {
         return;
       }
 
@@ -55620,7 +55884,7 @@ class StructElementNode {
 
   get role() {
     const nameObj = this.dict.get("S");
-    const name = (0, _primitives.isName)(nameObj) ? nameObj.name : "";
+    const name = nameObj instanceof _primitives.Name ? nameObj.name : "";
     const {
       root
     } = this.tree;
@@ -55636,7 +55900,7 @@ class StructElementNode {
     let pageObjId = null;
     const objRef = this.dict.getRaw("Pg");
 
-    if ((0, _primitives.isRef)(objRef)) {
+    if (objRef instanceof _primitives.Ref) {
       pageObjId = objRef.toString();
     }
 
@@ -55674,9 +55938,9 @@ class StructElementNode {
 
     let kidDict = null;
 
-    if ((0, _primitives.isRef)(kid)) {
+    if (kid instanceof _primitives.Ref) {
       kidDict = this.dict.xref.fetch(kid);
-    } else if ((0, _primitives.isDict)(kid)) {
+    } else if (kid instanceof _primitives.Dict) {
       kidDict = kid;
     }
 
@@ -55686,11 +55950,11 @@ class StructElementNode {
 
     const pageRef = kidDict.getRaw("Pg");
 
-    if ((0, _primitives.isRef)(pageRef)) {
+    if (pageRef instanceof _primitives.Ref) {
       pageObjId = pageRef.toString();
     }
 
-    const type = (0, _primitives.isName)(kidDict.get("Type")) ? kidDict.get("Type").name : null;
+    const type = kidDict.get("Type") instanceof _primitives.Name ? kidDict.get("Type").name : null;
 
     if (type === "MCR") {
       if (this.tree.pageDict.objId !== pageObjId) {
@@ -55699,7 +55963,7 @@ class StructElementNode {
 
       return new StructElement({
         type: StructElementType.STREAM_CONTENT,
-        refObjId: (0, _primitives.isRef)(kidDict.getRaw("Stm")) ? kidDict.getRaw("Stm").toString() : null,
+        refObjId: kidDict.getRaw("Stm") instanceof _primitives.Ref ? kidDict.getRaw("Stm").toString() : null,
         pageObjId,
         mcid: kidDict.get("MCID")
       });
@@ -55712,7 +55976,7 @@ class StructElementNode {
 
       return new StructElement({
         type: StructElementType.OBJECT,
-        refObjId: (0, _primitives.isRef)(kidDict.getRaw("Obj")) ? kidDict.getRaw("Obj").toString() : null,
+        refObjId: kidDict.getRaw("Obj") instanceof _primitives.Ref ? kidDict.getRaw("Obj").toString() : null,
         pageObjId
       });
     }
@@ -55778,7 +56042,7 @@ class StructTreePage {
     const map = new Map();
 
     for (const ref of parentArray) {
-      if ((0, _primitives.isRef)(ref)) {
+      if (ref instanceof _primitives.Ref) {
         this.addNode(this.rootDict.xref.fetch(ref), map);
       }
     }
@@ -55835,7 +56099,7 @@ class StructTreePage {
       return false;
     }
 
-    if ((0, _primitives.isDict)(obj)) {
+    if (obj instanceof _primitives.Dict) {
       if (obj.objId !== dict.objId) {
         return false;
       }
@@ -55875,13 +56139,13 @@ class StructTreePage {
       parent.children.push(obj);
       const alt = node.dict.get("Alt");
 
-      if ((0, _util.isString)(alt)) {
+      if (typeof alt === "string") {
         obj.alt = (0, _util.stringToPDFString)(alt);
       }
 
       const lang = node.dict.get("Lang");
 
-      if ((0, _util.isString)(lang)) {
+      if (typeof lang === "string") {
         obj.lang = (0, _util.stringToPDFString)(lang);
       }
 
@@ -55925,7 +56189,7 @@ class StructTreePage {
 exports.StructTreePage = StructTreePage;
 
 /***/ }),
-/* 70 */
+/* 71 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -55937,18 +56201,20 @@ exports.ObjectLoader = void 0;
 
 var _primitives = __w_pdfjs_require__(5);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _base_stream = __w_pdfjs_require__(9);
+
+var _core_utils = __w_pdfjs_require__(8);
 
 var _util = __w_pdfjs_require__(2);
 
 function mayHaveChildren(value) {
-  return value instanceof _primitives.Ref || value instanceof _primitives.Dict || Array.isArray(value) || 
(0, _primitives.isStream)(value);
+  return value instanceof _primitives.Ref || value instanceof _primitives.Dict || value instanceof 
_base_stream.BaseStream || Array.isArray(value);
 }
 
 function addChildren(node, nodesToVisit) {
   if (node instanceof _primitives.Dict) {
     node = node.getRawValues();
-  } else if ((0, _primitives.isStream)(node)) {
+  } else if (node instanceof _base_stream.BaseStream) {
     node = node.dict.getRawValues();
   } else if (!Array.isArray(node)) {
     return;
@@ -56025,7 +56291,7 @@ class ObjectLoader {
         }
       }
 
-      if ((0, _primitives.isStream)(currentNode)) {
+      if (currentNode instanceof _base_stream.BaseStream) {
         const baseStreams = currentNode.getBaseStreams();
 
         if (baseStreams) {
@@ -56073,7 +56339,7 @@ class ObjectLoader {
 exports.ObjectLoader = ObjectLoader;
 
 /***/ }),
-/* 71 */
+/* 72 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -56088,11 +56354,13 @@ var _util = __w_pdfjs_require__(2);
 
 var _primitives = __w_pdfjs_require__(5);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
-var _xml_parser = __w_pdfjs_require__(68);
+var _xml_parser = __w_pdfjs_require__(69);
 
-var _crypto = __w_pdfjs_require__(72);
+var _base_stream = __w_pdfjs_require__(9);
+
+var _crypto = __w_pdfjs_require__(73);
 
 function writeDict(dict, buffer, transform) {
   buffer.push("<<");
@@ -56153,9 +56421,9 @@ function numberToString(value) {
 }
 
 function writeValue(value, buffer, transform) {
-  if ((0, _primitives.isName)(value)) {
+  if (value instanceof _primitives.Name) {
     buffer.push(`/${(0, _core_utils.escapePDFName)(value.name)}`);
-  } else if ((0, _primitives.isRef)(value)) {
+  } else if (value instanceof _primitives.Ref) {
     buffer.push(`${value.num} ${value.gen} R`);
   } else if (Array.isArray(value)) {
     writeArray(value, buffer, transform);
@@ -56169,9 +56437,9 @@ function writeValue(value, buffer, transform) {
     buffer.push(numberToString(value));
   } else if (typeof value === "boolean") {
     buffer.push(value.toString());
-  } else if ((0, _primitives.isDict)(value)) {
+  } else if (value instanceof _primitives.Dict) {
     writeDict(value, buffer, transform);
-  } else if ((0, _primitives.isStream)(value)) {
+  } else if (value instanceof _base_stream.BaseStream) {
     writeStream(value, buffer, transform);
   } else if (value === null) {
     buffer.push("null");
@@ -56427,7 +56695,7 @@ function incrementalUpdate({
 }
 
 /***/ }),
-/* 72 */
+/* 73 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -56443,7 +56711,7 @@ var _util = __w_pdfjs_require__(2);
 
 var _primitives = __w_pdfjs_require__(5);
 
-var _decrypt_stream = __w_pdfjs_require__(73);
+var _decrypt_stream = __w_pdfjs_require__(74);
 
 class ARCFourCipher {
   constructor(key) {
@@ -57852,7 +58120,7 @@ const CipherTransformFactory = function CipherTransformFactoryClosure() {
   }
 
   function buildCipherConstructor(cf, name, num, gen, key) {
-    if (!(0, _primitives.isName)(name)) {
+    if (!(name instanceof _primitives.Name)) {
       throw new _util.FormatError("Invalid crypt filter name.");
     }
 
@@ -57916,7 +58184,7 @@ const CipherTransformFactory = function CipherTransformFactoryClosure() {
           const cfDict = dict.get("CF");
           const streamCryptoName = dict.get("StmF");
 
-          if ((0, _primitives.isDict)(cfDict) && (0, _primitives.isName)(streamCryptoName)) {
+          if (cfDict instanceof _primitives.Dict && streamCryptoName instanceof _primitives.Name) {
             cfDict.suppressEncryption = true;
             const handlerDict = cfDict.get(streamCryptoName.name);
             keyLength = handlerDict && handlerDict.get("Length") || 128;
@@ -57985,7 +58253,7 @@ const CipherTransformFactory = function CipherTransformFactoryClosure() {
       if (algorithm >= 4) {
         const cf = dict.get("CF");
 
-        if ((0, _primitives.isDict)(cf)) {
+        if (cf instanceof _primitives.Dict) {
           cf.suppressEncryption = true;
         }
 
@@ -58018,7 +58286,7 @@ const CipherTransformFactory = function CipherTransformFactoryClosure() {
 exports.CipherTransformFactory = CipherTransformFactory;
 
 /***/ }),
-/* 73 */
+/* 74 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -58077,7 +58345,7 @@ class DecryptStream extends _decode_stream.DecodeStream {
 exports.DecryptStream = DecryptStream;
 
 /***/ }),
-/* 74 */
+/* 75 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -58087,21 +58355,21 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.XFAFactory = void 0;
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
-var _bind = __w_pdfjs_require__(79);
+var _bind = __w_pdfjs_require__(80);
 
-var _data = __w_pdfjs_require__(85);
+var _data = __w_pdfjs_require__(86);
 
-var _fonts = __w_pdfjs_require__(83);
+var _fonts = __w_pdfjs_require__(84);
 
-var _utils = __w_pdfjs_require__(76);
+var _utils = __w_pdfjs_require__(77);
 
 var _util = __w_pdfjs_require__(2);
 
-var _parser = __w_pdfjs_require__(86);
+var _parser = __w_pdfjs_require__(87);
 
-var _xhtml = __w_pdfjs_require__(96);
+var _xhtml = __w_pdfjs_require__(97);
 
 class XFAFactory {
   constructor(data) {
@@ -58273,7 +58541,7 @@ class XFAFactory {
 exports.XFAFactory = XFAFactory;
 
 /***/ }),
-/* 75 */
+/* 76 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -58283,15 +58551,15 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.XmlObject = exports.XFAObjectArray = exports.XFAObject = exports.XFAAttribute = exports.StringObject 
= exports.OptionObject = exports.Option10 = exports.Option01 = exports.IntegerObject = exports.ContentObject 
= exports.$uid = exports.$toStyle = exports.$toString = exports.$toPages = exports.$toHTML = exports.$text = 
exports.$tabIndex = exports.$setValue = exports.$setSetAttributes = exports.$setId = exports.$searchNode = 
exports.$root = exports.$resolvePrototypes = exports.$removeChild = exports.$pushPara = exports.$pushGlyphs = 
exports.$popPara = exports.$onText = exports.$onChildCheck = exports.$onChild = exports.$nsAttributes = 
exports.$nodeName = exports.$namespaceId = exports.$isUsable = exports.$isTransparent = 
exports.$isThereMoreWidth = exports.$isSplittable = exports.$isNsAgnostic = exports.$isDescendent = 
exports.$isDataValue = exports.$isCDATAXml = exports.$isBindable = exports.$insertAt = exports.$indexOf = 
exports.$ids = exports.$hasSettableValue = exports.$glo
 balData = exports.$getTemplateRoot = exports.$getSubformParent = exports.$getRealChildrenByNameIt = 
exports.$getParent = exports.$getNextPage = exports.$getExtra = exports.$getDataValue = 
exports.$getContainedChildren = exports.$getChildrenByNameIt = exports.$getChildrenByName = 
exports.$getChildrenByClass = exports.$getChildren = exports.$getAvailableSpace = exports.$getAttributes = 
exports.$getAttributeIt = exports.$flushHTML = exports.$finalize = exports.$extra = exports.$dump = 
exports.$data = exports.$content = exports.$consumed = exports.$clone = exports.$cleanup = exports.$cleanPage 
= exports.$clean = exports.$childrenToHTML = exports.$appendChild = exports.$addHTML = 
exports.$acceptWhitespace = void 0;
 
-var _utils = __w_pdfjs_require__(76);
+var _utils = __w_pdfjs_require__(77);
 
 var _util = __w_pdfjs_require__(2);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
-var _namespaces = __w_pdfjs_require__(77);
+var _namespaces = __w_pdfjs_require__(78);
 
-var _som = __w_pdfjs_require__(78);
+var _som = __w_pdfjs_require__(79);
 
 const $acceptWhitespace = Symbol();
 exports.$acceptWhitespace = $acceptWhitespace;
@@ -59471,7 +59739,7 @@ class Option10 extends IntegerObject {
 exports.Option10 = Option10;
 
 /***/ }),
-/* 76 */
+/* 77 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -59742,7 +60010,7 @@ class HTMLResult {
 exports.HTMLResult = HTMLResult;
 
 /***/ }),
-/* 77 */
+/* 78 */
 /***/ ((__unused_webpack_module, exports) => {
 
 
@@ -59818,7 +60086,7 @@ const NamespaceIds = {
 exports.NamespaceIds = NamespaceIds;
 
 /***/ }),
-/* 78 */
+/* 79 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -59829,9 +60097,9 @@ Object.defineProperty(exports, "__esModule", ({
 exports.createDataNode = createDataNode;
 exports.searchNode = searchNode;
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
-var _namespaces = __w_pdfjs_require__(77);
+var _namespaces = __w_pdfjs_require__(78);
 
 var _util = __w_pdfjs_require__(2);
 
@@ -60166,7 +60434,7 @@ function createDataNode(root, container, expr) {
 }
 
 /***/ }),
-/* 79 */
+/* 80 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -60176,13 +60444,13 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.Binder = void 0;
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
-var _template = __w_pdfjs_require__(80);
+var _template = __w_pdfjs_require__(81);
 
-var _som = __w_pdfjs_require__(78);
+var _som = __w_pdfjs_require__(79);
 
-var _namespaces = __w_pdfjs_require__(77);
+var _namespaces = __w_pdfjs_require__(78);
 
 var _util = __w_pdfjs_require__(2);
 
@@ -60765,7 +61033,7 @@ class Binder {
 exports.Binder = Binder;
 
 /***/ }),
-/* 80 */
+/* 81 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -60775,23 +61043,23 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.Value = exports.Text = exports.TemplateNamespace = exports.Template = exports.SetProperty = 
exports.Items = exports.Field = exports.BindItems = void 0;
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
-var _namespaces = __w_pdfjs_require__(77);
+var _namespaces = __w_pdfjs_require__(78);
 
-var _layout = __w_pdfjs_require__(81);
+var _layout = __w_pdfjs_require__(82);
 
-var _html_utils = __w_pdfjs_require__(82);
+var _html_utils = __w_pdfjs_require__(83);
 
-var _utils = __w_pdfjs_require__(76);
+var _utils = __w_pdfjs_require__(77);
 
 var _util = __w_pdfjs_require__(2);
 
-var _fonts = __w_pdfjs_require__(83);
+var _fonts = __w_pdfjs_require__(84);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
-var _som = __w_pdfjs_require__(78);
+var _som = __w_pdfjs_require__(79);
 
 const TEMPLATE_NS_ID = _namespaces.NamespaceIds.template.id;
 const SVG_NS = "http://www.w3.org/2000/svg";;
@@ -66687,7 +66955,7 @@ class TemplateNamespace {
 exports.TemplateNamespace = TemplateNamespace;
 
 /***/ }),
-/* 81 */
+/* 82 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -66700,9 +66968,9 @@ exports.checkDimensions = checkDimensions;
 exports.flushHTML = flushHTML;
 exports.getAvailableSpace = getAvailableSpace;
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
-var _html_utils = __w_pdfjs_require__(82);
+var _html_utils = __w_pdfjs_require__(83);
 
 function createLine(node, children) {
   return {
@@ -67039,7 +67307,7 @@ function checkDimensions(node, space) {
 }
 
 /***/ }),
-/* 82 */
+/* 83 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -67062,15 +67330,15 @@ exports.setMinMaxDimensions = setMinMaxDimensions;
 exports.setPara = setPara;
 exports.toStyle = toStyle;
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
 var _util = __w_pdfjs_require__(2);
 
-var _utils = __w_pdfjs_require__(76);
+var _utils = __w_pdfjs_require__(77);
 
-var _fonts = __w_pdfjs_require__(83);
+var _fonts = __w_pdfjs_require__(84);
 
-var _text = __w_pdfjs_require__(84);
+var _text = __w_pdfjs_require__(85);
 
 function measureToString(m) {
   if (typeof m === "string") {
@@ -67723,7 +67991,7 @@ function fixURL(str) {
 }
 
 /***/ }),
-/* 83 */
+/* 84 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -67735,9 +68003,9 @@ exports.FontFinder = void 0;
 exports.getMetrics = getMetrics;
 exports.selectFont = selectFont;
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
-var _utils = __w_pdfjs_require__(76);
+var _utils = __w_pdfjs_require__(77);
 
 var _util = __w_pdfjs_require__(2);
 
@@ -67932,7 +68200,7 @@ function getMetrics(xfaFont, real = false) {
 }
 
 /***/ }),
-/* 84 */
+/* 85 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -67942,7 +68210,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.TextMeasure = void 0;
 
-var _fonts = __w_pdfjs_require__(83);
+var _fonts = __w_pdfjs_require__(84);
 
 const WIDTH_FACTOR = 1.02;
 
@@ -68200,7 +68468,7 @@ class TextMeasure {
 exports.TextMeasure = TextMeasure;
 
 /***/ }),
-/* 85 */
+/* 86 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -68210,7 +68478,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.DataHandler = void 0;
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
 class DataHandler {
   constructor(root, data) {
@@ -68277,7 +68545,7 @@ class DataHandler {
 exports.DataHandler = DataHandler;
 
 /***/ }),
-/* 86 */
+/* 87 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -68287,11 +68555,11 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.XFAParser = void 0;
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
-var _xml_parser = __w_pdfjs_require__(68);
+var _xml_parser = __w_pdfjs_require__(69);
 
-var _builder = __w_pdfjs_require__(87);
+var _builder = __w_pdfjs_require__(88);
 
 var _util = __w_pdfjs_require__(2);
 
@@ -68470,7 +68738,7 @@ class XFAParser extends _xml_parser.XMLParserBase {
 exports.XFAParser = XFAParser;
 
 /***/ }),
-/* 87 */
+/* 88 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -68480,15 +68748,15 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.Builder = void 0;
 
-var _namespaces = __w_pdfjs_require__(77);
+var _namespaces = __w_pdfjs_require__(78);
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
-var _setup = __w_pdfjs_require__(88);
+var _setup = __w_pdfjs_require__(89);
 
-var _template = __w_pdfjs_require__(80);
+var _template = __w_pdfjs_require__(81);
 
-var _unknown = __w_pdfjs_require__(97);
+var _unknown = __w_pdfjs_require__(98);
 
 var _util = __w_pdfjs_require__(2);
 
@@ -68703,7 +68971,7 @@ class Builder {
 exports.Builder = Builder;
 
 /***/ }),
-/* 88 */
+/* 89 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -68713,23 +68981,23 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.NamespaceSetUp = void 0;
 
-var _config = __w_pdfjs_require__(89);
+var _config = __w_pdfjs_require__(90);
 
-var _connection_set = __w_pdfjs_require__(90);
+var _connection_set = __w_pdfjs_require__(91);
 
-var _datasets = __w_pdfjs_require__(91);
+var _datasets = __w_pdfjs_require__(92);
 
-var _locale_set = __w_pdfjs_require__(92);
+var _locale_set = __w_pdfjs_require__(93);
 
-var _signature = __w_pdfjs_require__(93);
+var _signature = __w_pdfjs_require__(94);
 
-var _stylesheet = __w_pdfjs_require__(94);
+var _stylesheet = __w_pdfjs_require__(95);
 
-var _template = __w_pdfjs_require__(80);
+var _template = __w_pdfjs_require__(81);
 
-var _xdp = __w_pdfjs_require__(95);
+var _xdp = __w_pdfjs_require__(96);
 
-var _xhtml = __w_pdfjs_require__(96);
+var _xhtml = __w_pdfjs_require__(97);
 
 const NamespaceSetUp = {
   config: _config.ConfigNamespace,
@@ -68745,7 +69013,7 @@ const NamespaceSetUp = {
 exports.NamespaceSetUp = NamespaceSetUp;
 
 /***/ }),
-/* 89 */
+/* 90 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -68755,11 +69023,11 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.ConfigNamespace = void 0;
 
-var _namespaces = __w_pdfjs_require__(77);
+var _namespaces = __w_pdfjs_require__(78);
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
-var _utils = __w_pdfjs_require__(76);
+var _utils = __w_pdfjs_require__(77);
 
 var _util = __w_pdfjs_require__(2);
 
@@ -70634,7 +70902,7 @@ class ConfigNamespace {
 exports.ConfigNamespace = ConfigNamespace;
 
 /***/ }),
-/* 90 */
+/* 91 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -70644,9 +70912,9 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.ConnectionSetNamespace = void 0;
 
-var _namespaces = __w_pdfjs_require__(77);
+var _namespaces = __w_pdfjs_require__(78);
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
 const CONNECTION_SET_NS_ID = _namespaces.NamespaceIds.connectionSet.id;
 
@@ -70848,7 +71116,7 @@ class ConnectionSetNamespace {
 exports.ConnectionSetNamespace = ConnectionSetNamespace;
 
 /***/ }),
-/* 91 */
+/* 92 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -70858,9 +71126,9 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.DatasetsNamespace = void 0;
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
-var _namespaces = __w_pdfjs_require__(77);
+var _namespaces = __w_pdfjs_require__(78);
 
 const DATASETS_NS_ID = _namespaces.NamespaceIds.datasets.id;
 
@@ -70916,7 +71184,7 @@ class DatasetsNamespace {
 exports.DatasetsNamespace = DatasetsNamespace;
 
 /***/ }),
-/* 92 */
+/* 93 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -70926,11 +71194,11 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.LocaleSetNamespace = void 0;
 
-var _namespaces = __w_pdfjs_require__(77);
+var _namespaces = __w_pdfjs_require__(78);
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
-var _utils = __w_pdfjs_require__(76);
+var _utils = __w_pdfjs_require__(77);
 
 const LOCALE_SET_NS_ID = _namespaces.NamespaceIds.localeSet.id;
 
@@ -71254,7 +71522,7 @@ class LocaleSetNamespace {
 exports.LocaleSetNamespace = LocaleSetNamespace;
 
 /***/ }),
-/* 93 */
+/* 94 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -71264,9 +71532,9 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.SignatureNamespace = void 0;
 
-var _namespaces = __w_pdfjs_require__(77);
+var _namespaces = __w_pdfjs_require__(78);
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
 const SIGNATURE_NS_ID = _namespaces.NamespaceIds.signature.id;
 
@@ -71295,7 +71563,7 @@ class SignatureNamespace {
 exports.SignatureNamespace = SignatureNamespace;
 
 /***/ }),
-/* 94 */
+/* 95 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -71305,9 +71573,9 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.StylesheetNamespace = void 0;
 
-var _namespaces = __w_pdfjs_require__(77);
+var _namespaces = __w_pdfjs_require__(78);
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
 const STYLESHEET_NS_ID = _namespaces.NamespaceIds.stylesheet.id;
 
@@ -71336,7 +71604,7 @@ class StylesheetNamespace {
 exports.StylesheetNamespace = StylesheetNamespace;
 
 /***/ }),
-/* 95 */
+/* 96 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -71346,9 +71614,9 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.XdpNamespace = void 0;
 
-var _namespaces = __w_pdfjs_require__(77);
+var _namespaces = __w_pdfjs_require__(78);
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
 const XDP_NS_ID = _namespaces.NamespaceIds.xdp.id;
 
@@ -71390,7 +71658,7 @@ class XdpNamespace {
 exports.XdpNamespace = XdpNamespace;
 
 /***/ }),
-/* 96 */
+/* 97 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -71400,13 +71668,13 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.XhtmlNamespace = void 0;
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
-var _namespaces = __w_pdfjs_require__(77);
+var _namespaces = __w_pdfjs_require__(78);
 
-var _html_utils = __w_pdfjs_require__(82);
+var _html_utils = __w_pdfjs_require__(83);
 
-var _utils = __w_pdfjs_require__(76);
+var _utils = __w_pdfjs_require__(77);
 
 const XHTML_NS_ID = _namespaces.NamespaceIds.xhtml.id;
 const $richText = Symbol();
@@ -71925,7 +72193,7 @@ class XhtmlNamespace {
 exports.XhtmlNamespace = XhtmlNamespace;
 
 /***/ }),
-/* 97 */
+/* 98 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -71935,9 +72203,9 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.UnknownNamespace = void 0;
 
-var _namespaces = __w_pdfjs_require__(77);
+var _namespaces = __w_pdfjs_require__(78);
 
-var _xfa_object = __w_pdfjs_require__(75);
+var _xfa_object = __w_pdfjs_require__(76);
 
 class UnknownNamespace {
   constructor(nsId) {
@@ -71953,7 +72221,7 @@ class UnknownNamespace {
 exports.UnknownNamespace = UnknownNamespace;
 
 /***/ }),
-/* 98 */
+/* 99 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -71967,13 +72235,13 @@ var _util = __w_pdfjs_require__(2);
 
 var _primitives = __w_pdfjs_require__(5);
 
-var _core_utils = __w_pdfjs_require__(9);
+var _core_utils = __w_pdfjs_require__(8);
 
 var _parser = __w_pdfjs_require__(27);
 
-var _base_stream = __w_pdfjs_require__(6);
+var _base_stream = __w_pdfjs_require__(9);
 
-var _crypto = __w_pdfjs_require__(72);
+var _crypto = __w_pdfjs_require__(73);
 
 class XRef {
   constructor(stream, pdfManager) {
@@ -72839,7 +73107,7 @@ class XRef {
 exports.XRef = XRef;
 
 /***/ }),
-/* 99 */
+/* 100 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -72870,8 +73138,7 @@ const StreamKind = {
 
 function wrapReason(reason) {
   if (!(reason instanceof Error || typeof reason === "object" && reason !== null)) {
-    (0, _util.warn)('wrapReason: Expected "reason" to be a (possibly cloned) Error.');
-    return reason;
+    (0, _util.unreachable)('wrapReason: Expected "reason" to be a (possibly cloned) Error.');
   }
 
   switch (reason.name) {
@@ -73326,7 +73593,7 @@ class MessageHandler {
 exports.MessageHandler = MessageHandler;
 
 /***/ }),
-/* 100 */
+/* 101 */
 /***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {
 
 
@@ -73550,8 +73817,8 @@ Object.defineProperty(exports, "WorkerMessageHandler", ({
 
 var _worker = __w_pdfjs_require__(1);
 
-const pdfjsVersion = '2.12.313';
-const pdfjsBuild = 'a2ae56f39';
+const pdfjsVersion = '2.13.216';
+const pdfjsBuild = '399a0ec60';
 })();
 
 /******/       return __webpack_exports__;
diff --git a/third-party/pdfjs/epiphany-pdfjs-changes.patch b/third-party/pdfjs/epiphany-pdfjs-changes.patch
index e6ad67746..0c0230420 100644
--- a/third-party/pdfjs/epiphany-pdfjs-changes.patch
+++ b/third-party/pdfjs/epiphany-pdfjs-changes.patch
@@ -1,5 +1,5 @@
 diff --git a/third-party/pdfjs/web/viewer.css b/third-party/pdfjs/web/viewer.css
-index c5f0bcb1e..f8fc94ad1 100644
+index 6633fd9b5..a4cbbf183 100644
 --- a/third-party/pdfjs/web/viewer.css
 +++ b/third-party/pdfjs/web/viewer.css
 @@ -1,4 +1,5 @@
@@ -25,7 +25,7 @@ index c5f0bcb1e..f8fc94ad1 100644
    min-width: 16px;
    text-align: right;
 diff --git a/third-party/pdfjs/web/viewer.html b/third-party/pdfjs/web/viewer.html
-index efbd58391..bb2068cd1 100644
+index 273ccdc33..3ae8ef9e1 100644
 --- a/third-party/pdfjs/web/viewer.html
 +++ b/third-party/pdfjs/web/viewer.html
 @@ -1,6 +1,7 @@
@@ -52,7 +52,7 @@ index efbd58391..bb2068cd1 100644
      <link rel="stylesheet" href="viewer.css">
  
  
-@@ -135,7 +136,7 @@ See https://github.com/adobe-type-tools/cmap-resources
+@@ -139,7 +140,7 @@ See https://github.com/adobe-type-tools/cmap-resources
                <span data-l10n-id="download_label">Download</span>
              </button>
  
@@ -61,7 +61,7 @@ index efbd58391..bb2068cd1 100644
                <span data-l10n-id="bookmark_label">Current View</span>
              </a>
  
-@@ -240,7 +241,7 @@ See https://github.com/adobe-type-tools/cmap-resources
+@@ -244,7 +245,7 @@ See https://github.com/adobe-type-tools/cmap-resources
                  <button id="download" class="toolbarButton download hiddenMediumView" title="Download" 
tabindex="34" data-l10n-id="download">
                    <span data-l10n-id="download_label">Download</span>
                  </button>
@@ -71,18 +71,18 @@ index efbd58391..bb2068cd1 100644
                  </a>
  
 diff --git a/third-party/pdfjs/web/viewer.js b/third-party/pdfjs/web/viewer.js
-index 74f538450..c11421eaf 100644
+index ce6799743..ad6184ab7 100644
 --- a/third-party/pdfjs/web/viewer.js
 +++ b/third-party/pdfjs/web/viewer.js
 @@ -3,6 +3,7 @@
   * Javascript code in this page
   *
-  * Copyright 2021 Mozilla Foundation
+  * Copyright 2022 Mozilla Foundation
 + * Modifications made for Epiphany by Jan-Michael Brummer <jan brummer tabos org>
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
-@@ -2242,8 +2243,7 @@ function webViewerInitialized() {
+@@ -2229,8 +2230,7 @@ function webViewerInitialized() {
    let file;
    const queryString = document.location.search.substring(1);
    const params = (0, _ui_utils.parseQueryString)(queryString);
@@ -92,7 +92,7 @@ index 74f538450..c11421eaf 100644
    const fileInput = document.createElement("input");
    fileInput.id = appConfig.openFileInputName;
    fileInput.className = "fileInput";
-@@ -2251,12 +2251,8 @@ function webViewerInitialized() {
+@@ -2238,12 +2238,8 @@ function webViewerInitialized() {
    fileInput.oncontextmenu = _ui_utils.noContextMenuHandler;
    document.body.appendChild(fileInput);
  
@@ -107,7 +107,7 @@ index 74f538450..c11421eaf 100644
  
    fileInput.addEventListener("change", function (evt) {
      const files = evt.target.files;
-@@ -2318,8 +2314,18 @@ function webViewerInitialized() {
+@@ -2305,8 +2301,18 @@ function webViewerInitialized() {
      }
    }, true);
  
@@ -127,7 +127,7 @@ index 74f538450..c11421eaf 100644
    } catch (reason) {
      PDFViewerApplication.l10n.get("loading_error").then(msg => {
        PDFViewerApplication._documentError(msg, reason);
-@@ -6209,6 +6215,8 @@ class PDFHistory {
+@@ -6792,6 +6798,8 @@ class PDFHistory {
        }
      }
  
@@ -136,7 +136,7 @@ index 74f538450..c11421eaf 100644
      if (shouldReplace) {
        window.history.replaceState(newState, "", newUrl);
      } else {
-@@ -15661,4 +15669,4 @@ if (document.readyState === "interactive" || document.readyState === "complete")
+@@ -15745,4 +15753,4 @@ if (document.readyState === "interactive" || document.readyState === "complete")
  
  /******/ })()
  ;
diff --git a/third-party/pdfjs/web/locale/dsb/viewer.properties 
b/third-party/pdfjs/web/locale/dsb/viewer.properties
index 00fe87333..1a0e9ab6f 100644
--- a/third-party/pdfjs/web/locale/dsb/viewer.properties
+++ b/third-party/pdfjs/web/locale/dsb/viewer.properties
@@ -64,7 +64,7 @@ cursor_hand_tool_label=Rucny rěd
 scroll_page.title=Kulanje boka wužywaś
 scroll_page_label=Kulanje boka
 scroll_vertical.title=Wertikalne suwanje wužywaś
-scroll_vertical_label=Wertikalnje suwanje
+scroll_vertical_label=Wertikalne suwanje
 scroll_horizontal.title=Horicontalne suwanje wužywaś
 scroll_horizontal_label=Horicontalne suwanje
 scroll_wrapped.title=Pózlažke suwanje wužywaś
diff --git a/third-party/pdfjs/web/locale/en-US/viewer.properties 
b/third-party/pdfjs/web/locale/en-US/viewer.properties
index dc54ed39d..2eb5a8d92 100644
--- a/third-party/pdfjs/web/locale/en-US/viewer.properties
+++ b/third-party/pdfjs/web/locale/en-US/viewer.properties
@@ -168,9 +168,10 @@ find_previous.title=Find the previous occurrence of the phrase
 find_previous_label=Previous
 find_next.title=Find the next occurrence of the phrase
 find_next_label=Next
-find_highlight=Highlight all
-find_match_case_label=Match case
-find_entire_word_label=Whole words
+find_highlight=Highlight All
+find_match_case_label=Match Case
+find_match_diacritics_label=Match Diacritics
+find_entire_word_label=Whole Words
 find_reached_top=Reached top of document, continued from bottom
 find_reached_bottom=Reached end of document, continued from top
 # LOCALIZATION NOTE (find_match_count): The supported plural forms are
diff --git a/third-party/pdfjs/web/locale/ga-IE/viewer.properties 
b/third-party/pdfjs/web/locale/ga-IE/viewer.properties
index 723ddd0b5..e82e55b14 100644
--- a/third-party/pdfjs/web/locale/ga-IE/viewer.properties
+++ b/third-party/pdfjs/web/locale/ga-IE/viewer.properties
@@ -61,6 +61,8 @@ cursor_text_select_tool_label=Uirlis Roghnaithe Téacs
 cursor_hand_tool.title=Cumasaigh an Uirlis Láimhe
 cursor_hand_tool_label=Uirlis Láimhe
 
+
+
 # Document properties dialog box
 document_properties.title=Airíonna na Cáipéise…
 document_properties_label=Airíonna na Cáipéise…
@@ -85,6 +87,14 @@ document_properties_creator=Cruthaitheoir:
 document_properties_producer=Cruthaitheoir an PDF:
 document_properties_version=Leagan PDF:
 document_properties_page_count=Líon Leathanach:
+# LOCALIZATION NOTE (document_properties_page_size_dimension_string):
+# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by
+# the size, respectively their unit of measurement and orientation, of the (current) page.
+# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string):
+# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by
+# the size, respectively their unit of measurement, name, and orientation, of the (current) page.
+# LOCALIZATION NOTE (document_properties_linearized): The linearization status of
+# the document; usually called "Fast Web View" in English locales of Adobe software.
 document_properties_close=Dún
 
 print_progress_message=Cáipéis á hullmhú le priontáil…
@@ -107,6 +117,7 @@ thumbs_label=Mionsamhlacha
 findbar.title=Aimsigh sa Cháipéis
 findbar_label=Aimsigh
 
+# LOCALIZATION NOTE (page_landmark): "{{page}}" will be replaced by the page number.
 # Thumbnails panel item (tooltip and alt text for images)
 # LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page
 # number.
@@ -124,8 +135,18 @@ find_next.title=Aimsigh an chéad sampla eile den nath sin
 find_next_label=Ar aghaidh
 find_highlight=Aibhsigh uile
 find_match_case_label=Cásíogair
+find_entire_word_label=Focail iomlána
 find_reached_top=Ag barr na cáipéise, ag leanúint ón mbun
 find_reached_bottom=Ag bun na cáipéise, ag leanúint ón mbarr
+# LOCALIZATION NOTE (find_match_count): The supported plural forms are
+# [one|two|few|many|other], with [other] as the default value.
+# "{{current}}" and "{{total}}" will be replaced by a number representing the
+# index of the currently active find result, respectively a number representing
+# the total number of matches in the document.
+find_match_count={[ plural(total) ]}
+# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are
+# [zero|one|two|few|many|other], with [other] as the default value.
+# "{{limit}}" will be replaced by a numerical value.
 find_not_found=Frása gan aimsiú
 
 # Error panel labels
@@ -156,11 +177,15 @@ page_scale_actual=Fíormhéid
 # numerical scale value.
 page_scale_percent={{scale}}%
 
+# Loading indicator messages
 loading_error=Tharla earráid agus an cháipéis PDF á lódáil.
 invalid_file_error=Comhad neamhbhailí nó truaillithe PDF.
 missing_file_error=Comhad PDF ar iarraidh.
 unexpected_response_error=Freagra ón bhfreastalaí nach rabhthas ag súil leis.
 
+# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be
+# replaced by the modification date, and time, of the annotation.
+
 # LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip.
 # "{{type}}" will be replaced with an annotation type from a list defined in
 # the PDF spec (32000-1:2008 Table 169 – Annotation types).
diff --git a/third-party/pdfjs/web/locale/hr/viewer.properties 
b/third-party/pdfjs/web/locale/hr/viewer.properties
index 395a97522..1ccf441cb 100644
--- a/third-party/pdfjs/web/locale/hr/viewer.properties
+++ b/third-party/pdfjs/web/locale/hr/viewer.properties
@@ -76,8 +76,8 @@ spread_even.title=Izradi duplerice koje počinju s parnim stranicama
 spread_even_label=Parne duplerice
 
 # Document properties dialog box
-document_properties.title=Svojstva dokumenta...
-document_properties_label=Svojstva dokumenta...
+document_properties.title=Svojstva dokumenta …
+document_properties_label=Svojstva dokumenta …
 document_properties_file_name=Naziv datoteke:
 document_properties_file_size=Veličina datoteke:
 # LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}"
diff --git a/third-party/pdfjs/web/locale/hsb/viewer.properties 
b/third-party/pdfjs/web/locale/hsb/viewer.properties
index d797ac702..24ce8a60b 100644
--- a/third-party/pdfjs/web/locale/hsb/viewer.properties
+++ b/third-party/pdfjs/web/locale/hsb/viewer.properties
@@ -64,7 +64,7 @@ cursor_hand_tool_label=Ručny nastroj
 scroll_page.title=Kulenje strony wužiwać
 scroll_page_label=Kulenje strony
 scroll_vertical.title=Wertikalne suwanje wužiwać
-scroll_vertical_label=Wertikalnje suwanje
+scroll_vertical_label=Wertikalne suwanje
 scroll_horizontal.title=Horicontalne suwanje wužiwać
 scroll_horizontal_label=Horicontalne suwanje
 scroll_wrapped.title=Postupne suwanje wužiwać
diff --git a/third-party/pdfjs/web/locale/hye/viewer.properties 
b/third-party/pdfjs/web/locale/hye/viewer.properties
index fb7bd7a70..6af5982b2 100644
--- a/third-party/pdfjs/web/locale/hye/viewer.properties
+++ b/third-party/pdfjs/web/locale/hye/viewer.properties
@@ -61,6 +61,8 @@ cursor_text_select_tool_label=Գրուածք ընտրելու գործիք
 cursor_hand_tool.title=Միացնել ձեռքի գործիքը
 cursor_hand_tool_label=Ձեռքի գործիք
 
+scroll_page.title=Աւգտագործել էջի ոլորում
+scroll_page_label=Էջի ոլորում
 scroll_vertical.title=Աւգտագործել ուղղահայեաց ոլորում
 scroll_vertical_label=Ուղղահայեաց ոլորում
 scroll_horizontal.title=Աւգտագործել հորիզոնական ոլորում
@@ -149,6 +151,8 @@ findbar.title=Գտնել փաստաթղթում
 findbar_label=Որոնում
 
 additional_layers=Լրացուցիչ շերտեր
+# LOCALIZATION NOTE (page_landmark): "{{page}}" will be replaced by the page number.
+page_landmark=Էջ {{page}}
 # Thumbnails panel item (tooltip and alt text for images)
 # LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page
 # number.
@@ -174,7 +178,7 @@ find_reached_bottom=Հասել էք փաստաթղթի վերջին, շարու
 # "{{current}}" and "{{total}}" will be replaced by a number representing the
 # index of the currently active find result, respectively a number representing
 # the total number of matches in the document.
-find_match_count={[ հոգնակի(ընդհանուր) ]}
+find_match_count={[ plural(total) ]}
 find_match_count[one]={{current}} {{total}}-ի համընկնումից
 find_match_count[two]={{current}} {{total}}-ի համընկնումներից
 find_match_count[few]={{current}} {{total}}-ի համընկնումներից
@@ -183,7 +187,7 @@ find_match_count[other]={{current}} {{total}}-ի համընկնումներից
 # LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are
 # [zero|one|two|few|many|other], with [other] as the default value.
 # "{{limit}}" will be replaced by a numerical value.
-find_match_count_limit={[ հոգնակի (սահմանը) ]}
+find_match_count_limit={[ plural(limit) ]}
 find_match_count_limit[zero]=Աւելին քան {{limit}} համընկնումները
 find_match_count_limit[one]=Աւելին քան {{limit}} համընկնումը
 find_match_count_limit[two]=Աւելին քան {{limit}} համընկնումները
@@ -220,6 +224,8 @@ page_scale_actual=Իրական չափը
 # numerical scale value.
 page_scale_percent={{scale}}%
 
+# Loading indicator messages
+loading=Բեռնում…
 loading_error=PDF նիշքը բացելիս սխալ է տեղի ունեցել։
 invalid_file_error=Սխալ կամ վնասուած PDF նիշք։
 missing_file_error=PDF նիշքը բացակաիւմ է։
diff --git a/third-party/pdfjs/web/locale/is/viewer.properties 
b/third-party/pdfjs/web/locale/is/viewer.properties
index fdff9f814..f1a7b3ff4 100644
--- a/third-party/pdfjs/web/locale/is/viewer.properties
+++ b/third-party/pdfjs/web/locale/is/viewer.properties
@@ -28,10 +28,10 @@ of_pages=af {{pagesCount}}
 # respectively a number representing the total number of pages in the document.
 page_of_pages=({{pageNumber}} af {{pagesCount}})
 
-zoom_out.title=Minnka
-zoom_out_label=Minnka
-zoom_in.title=Stækka
-zoom_in_label=Stækka
+zoom_out.title=Minnka aðdrátt
+zoom_out_label=Minnka aðdrátt
+zoom_in.title=Auka aðdrátt
+zoom_in_label=Auka aðdrátt
 zoom.title=Aðdráttur
 presentation_mode.title=Skipta yfir á kynningarham
 presentation_mode_label=Kynningarhamur
@@ -61,10 +61,14 @@ cursor_text_select_tool_label=Textavalsáhald
 cursor_hand_tool.title=Virkja handarverkfæri
 cursor_hand_tool_label=Handarverkfæri
 
+scroll_page.title=Nota síðuskrun
+scroll_page_label=Síðuskrun
 scroll_vertical.title=Nota lóðrétt skrun
 scroll_vertical_label=Lóðrétt skrun
 scroll_horizontal.title=Nota lárétt skrun
 scroll_horizontal_label=Lárétt skrun
+scroll_wrapped.title=Nota línuskipt síðuskrun
+scroll_wrapped_label=Línuskipt síðuskrun
 
 spread_none.title=Ekki taka þátt í dreifingu síðna
 spread_none_label=Engin dreifing
@@ -116,6 +120,7 @@ document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}}
 document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, 
{{orientation}})
 # LOCALIZATION NOTE (document_properties_linearized): The linearization status of
 # the document; usually called "Fast Web View" in English locales of Adobe software.
+document_properties_linearized=Fljótleg vefskoðun:
 document_properties_linearized_yes=Já
 document_properties_linearized_no=Nei
 document_properties_close=Loka
@@ -129,17 +134,25 @@ print_progress_close=Hætta við
 # Tooltips and alt text for side panel toolbar buttons
 # (the _label strings are alt text for the buttons, the .title strings are
 # tooltips)
-toggle_sidebar.title=Víxla hliðslá
-toggle_sidebar_label=Víxla hliðslá
+toggle_sidebar.title=Víxla hliðarspjaldi af/á
+toggle_sidebar_notification2.title=Víxla hliðarslá (skjal inniheldur yfirlit/viðhengi/lög)
+toggle_sidebar_label=Víxla hliðarspjaldi af/á
 document_outline.title=Sýna yfirlit skjals (tvísmelltu til að opna/loka öllum hlutum)
 document_outline_label=Efnisskipan skjals
 attachments.title=Sýna viðhengi
 attachments_label=Viðhengi
+layers.title=Birta lög (tvísmelltu til að endurstilla öll lög í sjálfgefna stöðu)
+layers_label=Lög
 thumbs.title=Sýna smámyndir
 thumbs_label=Smámyndir
+current_outline_item.title=Finna núverandi atriði efnisskipunar
+current_outline_item_label=Núverandi atriði efnisskipunar
 findbar.title=Leita í skjali
 findbar_label=Leita
 
+additional_layers=Viðbótarlög
+# LOCALIZATION NOTE (page_landmark): "{{page}}" will be replaced by the page number.
+page_landmark=Síða {{page}}
 # Thumbnails panel item (tooltip and alt text for images)
 # LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page
 # number.
@@ -211,11 +224,17 @@ page_scale_actual=Raunstærð
 # numerical scale value.
 page_scale_percent={{scale}}%
 
+# Loading indicator messages
+loading=Hleður…
 loading_error=Villa kom upp við að hlaða inn PDF.
 invalid_file_error=Ógild eða skemmd PDF skrá.
 missing_file_error=Vantar PDF skrá.
 unexpected_response_error=Óvænt svar frá netþjóni.
 
+# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be
+# replaced by the modification date, and time, of the annotation.
+annotation_date_string={{date}}, {{time}}
+
 # LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip.
 # "{{type}}" will be replaced with an annotation type from a list defined in
 # the PDF spec (32000-1:2008 Table 169 – Annotation types).
diff --git a/third-party/pdfjs/web/locale/it/viewer.properties 
b/third-party/pdfjs/web/locale/it/viewer.properties
index fa8bc0d2e..6db5f1264 100644
--- a/third-party/pdfjs/web/locale/it/viewer.properties
+++ b/third-party/pdfjs/web/locale/it/viewer.properties
@@ -140,6 +140,7 @@ find_next_label = Successivo
 find_highlight = Evidenzia
 find_match_case_label = Maiuscole/minuscole
 find_entire_word_label = Parole intere
+find_match_diacritics_label = Segni diacritici
 find_reached_top = Raggiunto l’inizio della pagina, continua dalla fine
 find_reached_bottom = Raggiunta la fine della pagina, continua dall’inizio
 find_match_count = {[ plural(total) ]}
diff --git a/third-party/pdfjs/web/locale/ko/viewer.properties 
b/third-party/pdfjs/web/locale/ko/viewer.properties
index 19720e59b..e9c949400 100644
--- a/third-party/pdfjs/web/locale/ko/viewer.properties
+++ b/third-party/pdfjs/web/locale/ko/viewer.properties
@@ -41,7 +41,7 @@ print.title=인쇄
 print_label=인쇄
 download.title=다운로드
 download_label=다운로드
-bookmark.title=현재 보기 (복사 또는 새 창에 열기)
+bookmark.title=현재 보기 (복사 또는 새 창에서 열기)
 bookmark_label=현재 보기
 
 # Secondary toolbar and context menu
diff --git a/third-party/pdfjs/web/locale/sat/viewer.properties 
b/third-party/pdfjs/web/locale/sat/viewer.properties
index 3f38d5ab1..53d75f20f 100644
--- a/third-party/pdfjs/web/locale/sat/viewer.properties
+++ b/third-party/pdfjs/web/locale/sat/viewer.properties
@@ -14,7 +14,7 @@
 
 # Main toolbar buttons (tooltips and alt text for images)
 previous.title=पा़हिलाक् साहटा
-next.title=इना़ तायोम साहटा
+next.title=ᱤᱱᱟᱹ ᱛᱟᱭᱚᱢ ᱥᱟᱦᱴᱟ
 
 # LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input.
 # LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number
@@ -128,7 +128,7 @@ rendering_error=साहटा एम जोहोक मित् भुल 
 page_scale_width=साहटा ओसार
 page_scale_fit=साहटा खाप
 page_scale_auto=आच् आच् ते हुडिञ ला़टु तेयार
-page_scale_actual=ठिक माराङ तेत्
+page_scale_actual=ᱴᱷᱤᱠ ᱢᱟᱨᱟᱝ ᱛᱮᱫ
 # LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a
 # numerical scale value.
 
diff --git a/third-party/pdfjs/web/locale/szl/viewer.properties 
b/third-party/pdfjs/web/locale/szl/viewer.properties
index 5980b6cc8..1af405d5b 100644
--- a/third-party/pdfjs/web/locale/szl/viewer.properties
+++ b/third-party/pdfjs/web/locale/szl/viewer.properties
@@ -189,7 +189,7 @@ find_match_count_limit[two]=Wiyncyj jak {{limit}}, co pasujōm
 find_match_count_limit[few]=Wiyncyj jak {{limit}}, co pasujōm
 find_match_count_limit[many]=Wiyncyj jak {{limit}}, co pasujōm
 find_match_count_limit[other]=Wiyncyj jak {{limit}}, co pasujōm
-find_not_found=Fraza niy ma znodniynto
+find_not_found=Fraza niy znaleziōno
 
 # Error panel labels
 error_more_info=Wiyncyj informacyji
@@ -242,5 +242,3 @@ password_cancel=Pociep
 printing_not_supported=Pozōr: Ta przeglōndarka niy cołkiym ôbsuguje durk.
 printing_not_ready=Pozōr: Tyn PDF niy ma za tela zaladowany do durku.
 web_fonts_disabled=Necowe fōnty sōm zastawiōne: niy idzie użyć wkludzōnych fōntōw PDF.
-# LOCALIZATION NOTE (unsupported_feature_signatures): Should contain the same
-# exact string as in the `chrome.properties` file.
diff --git a/third-party/pdfjs/web/locale/tg/viewer.properties 
b/third-party/pdfjs/web/locale/tg/viewer.properties
index 95967e32f..24ab96ed2 100644
--- a/third-party/pdfjs/web/locale/tg/viewer.properties
+++ b/third-party/pdfjs/web/locale/tg/viewer.properties
@@ -67,6 +67,8 @@ document_properties_page_size_name_legal=Ҳуқуқӣ
 document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, 
{{orientation}})
 # LOCALIZATION NOTE (document_properties_linearized): The linearization status of
 # the document; usually called "Fast Web View" in English locales of Adobe software.
+document_properties_linearized_yes=Ҳа
+document_properties_close=Пӯшидан
 
 print_progress_message=Омодасозии ҳуҷҷат барои чоп…
 # LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by
@@ -79,7 +81,6 @@ print_progress_close=Бекор кардан
 # tooltips)
 toggle_sidebar.title=Фаъол кардани навори ҷонибӣ
 
-# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number.
 # LOCALIZATION NOTE (page_landmark): "{{page}}" will be replaced by the page number.
 # Thumbnails panel item (tooltip and alt text for images)
 # LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page
@@ -105,6 +106,7 @@ find_match_count_limit[other]=Зиёда аз {{limit}} мувофиқат
 
 # Error panel labels
 error_more_info=Маълумоти бештар
+error_close=Пӯшидан
 # LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be
 # replaced by the PDF.JS version and build ID.
 # LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an
@@ -121,8 +123,6 @@ page_scale_auto=Андозаи худкор
 # LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a
 # numerical scale value.
 
-# Loading indicator messages
-
 # Loading indicator messages
 invalid_file_error=Файли PDF нодуруст ё вайроншуда мебошад.
 missing_file_error=Файли PDF ғоиб аст.
@@ -137,6 +137,3 @@ missing_file_error=Файли PDF ғоиб аст.
 password_label=Барои кушодани ин файли PDF ниҳонвожаро ворид кунед.
 password_cancel=Бекор кардан
 
-# LOCALIZATION NOTE (unsupported_feature_signatures): Should contain the same
-# exact string as in the `chrome.properties` file.
-
diff --git a/third-party/pdfjs/web/viewer.css b/third-party/pdfjs/web/viewer.css
index f8fc94ad1..a4cbbf183 100644
--- a/third-party/pdfjs/web/viewer.css
+++ b/third-party/pdfjs/web/viewer.css
@@ -963,8 +963,6 @@
 html {
   height: 100%;
   width: 100%;
-  /* Font size is needed to make the activity bar the correct size. */
-  font-size: 10px;
 }
 
 body {
@@ -1320,7 +1318,7 @@ html[dir="rtl"] #outerContainer.sidebarOpen #loadingBar {
 .findbar.wrapContainers > div {
   clear: both;
 }
-.findbar.wrapContainers > div#findbarMessageContainer {
+.findbar.wrapContainers > div.findbarMessageContainer {
   height: auto;
 }
 html[dir="ltr"] .findbar {
@@ -1379,7 +1377,7 @@ html[dir="rtl"] .findbar .splitToolbarButton > .findNext {
 }
 
 .findbar label:hover,
-.findbar input:focus + label {
+.findbar input:focus-visible + label {
   color: var(--toggled-btn-color);
   background-color: var(--button-hover-color);
 }
@@ -1511,6 +1509,8 @@ html[dir="ltr"] .doorHangerRight:before {
 #findMsg {
   color: rgba(251, 0, 0, 1);
 }
+
+#findResultsCount:empty,
 #findMsg:empty {
   display: none;
 }
@@ -1573,12 +1573,12 @@ html[dir="rtl"] .splitToolbarButton > .toolbarButton {
 }
 
 .overlayButton:hover,
-.overlayButton:focus {
+.overlayButton:focus-visible {
   background-color: var(--overlay-button-hover-bg-color);
 }
 
 .overlayButton:hover > span,
-.overlayButton:focus > span {
+.overlayButton:focus-visible > span {
   color: var(--overlay-button-hover-color);
 }
 
@@ -1600,10 +1600,10 @@ html[dir="rtl"] .splitToolbarButton > .toolbarButton {
 }
 
 .splitToolbarButton > .toolbarButton:hover,
-.splitToolbarButton > .toolbarButton:focus,
+.splitToolbarButton > .toolbarButton:focus-visible,
 .dropdownToolbarButton:hover,
 .toolbarButton.textButton:hover,
-.toolbarButton.textButton:focus {
+.toolbarButton.textButton:focus-visible {
   background-color: var(--button-hover-color);
   z-index: 199;
 }
@@ -1669,11 +1669,11 @@ html[dir="rtl"] #toolbarViewerLeft > .toolbarButton:first-child {
   margin-right: 2px;
 }
 .toolbarButton:hover,
-.toolbarButton:focus {
+.toolbarButton:focus-visible {
   background-color: var(--button-hover-color);
 }
 .secondaryToolbarButton:hover,
-.secondaryToolbarButton:focus {
+.secondaryToolbarButton:focus-visible {
   background-color: var(--doorhanger-hover-bg-color);
   color: var(--doorhanger-hover-color);
 }
@@ -1738,7 +1738,7 @@ html[dir="rtl"] .dropdownToolbarButton > select {
   padding-right: 4px;
 }
 .dropdownToolbarButton > select:hover,
-.dropdownToolbarButton > select:focus {
+.dropdownToolbarButton > select:focus-visible {
   background-color: var(--button-hover-color);
   color: var(--toggled-btn-color);
 }
@@ -1780,7 +1780,7 @@ html[dir="rtl"] .dropdownToolbarButton > select {
 }
 
 .dropdownToolbarButton:hover::after,
-.dropdownToolbarButton:focus::after,
+.dropdownToolbarButton:focus-visible::after,
 .dropdownToolbarButton:active::after {
   background-color: var(--toolbar-icon-hover-bg-color);
 }
@@ -1792,9 +1792,9 @@ html[dir="rtl"] .dropdownToolbarButton > select {
 }
 
 .toolbarButton:hover::before,
-.toolbarButton:focus::before,
+.toolbarButton:focus-visible::before,
 .secondaryToolbarButton:hover::before,
-.secondaryToolbarButton:focus::before {
+.secondaryToolbarButton:focus-visible::before {
   background-color: var(--toolbar-icon-hover-bg-color);
 }
 
diff --git a/third-party/pdfjs/web/viewer.html b/third-party/pdfjs/web/viewer.html
index bb2068cd1..3ae8ef9e1 100644
--- a/third-party/pdfjs/web/viewer.html
+++ b/third-party/pdfjs/web/viewer.html
@@ -103,17 +103,21 @@ See https://github.com/adobe-type-tools/cmap-resources
 
           <div id="findbarOptionsOneContainer">
             <input type="checkbox" id="findHighlightAll" class="toolbarField" tabindex="94">
-            <label for="findHighlightAll" class="toolbarLabel" data-l10n-id="find_highlight">Highlight 
all</label>
+            <label for="findHighlightAll" class="toolbarLabel" data-l10n-id="find_highlight">Highlight 
All</label>
             <input type="checkbox" id="findMatchCase" class="toolbarField" tabindex="95">
-            <label for="findMatchCase" class="toolbarLabel" data-l10n-id="find_match_case_label">Match 
case</label>
+            <label for="findMatchCase" class="toolbarLabel" data-l10n-id="find_match_case_label">Match 
Case</label>
           </div>
           <div id="findbarOptionsTwoContainer">
-            <input type="checkbox" id="findEntireWord" class="toolbarField" tabindex="96">
-            <label for="findEntireWord" class="toolbarLabel" data-l10n-id="find_entire_word_label">Whole 
words</label>
-            <span id="findResultsCount" class="toolbarLabel hidden"></span>
+            <input type="checkbox" id="findMatchDiacritics" class="toolbarField" tabindex="96">
+            <label for="findMatchDiacritics" class="toolbarLabel" 
data-l10n-id="find_match_diacritics_label">Match Diacritics</label>
+            <input type="checkbox" id="findEntireWord" class="toolbarField" tabindex="97">
+            <label for="findEntireWord" class="toolbarLabel" data-l10n-id="find_entire_word_label">Whole 
Words</label>
           </div>
 
-          <div id="findbarMessageContainer">
+          <div class="findbarMessageContainer">
+            <span id="findResultsCount" class="toolbarLabel"></span>
+          </div>
+          <div class="findbarMessageContainer">
             <span id="findMsg" class="toolbarLabel"></span>
           </div>
         </div>  <!-- findbar -->
diff --git a/third-party/pdfjs/web/viewer.js b/third-party/pdfjs/web/viewer.js
index c11421eaf..ad6184ab7 100644
--- a/third-party/pdfjs/web/viewer.js
+++ b/third-party/pdfjs/web/viewer.js
@@ -2,7 +2,7 @@
  * @licstart The following is the entire license notice for the
  * Javascript code in this page
  *
- * Copyright 2021 Mozilla Foundation
+ * Copyright 2022 Mozilla Foundation
  * Modifications made for Epiphany by Jan-Michael Brummer <jan brummer tabos org>
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -37,18 +37,11 @@ exports.compatibilityParams = exports.OptionKind = exports.AppOptions = void 0;
 const compatibilityParams = Object.create(null);
 exports.compatibilityParams = compatibilityParams;
 {
-  const userAgent = typeof navigator !== "undefined" && navigator.userAgent || "";
-  const platform = typeof navigator !== "undefined" && navigator.platform || "";
-  const maxTouchPoints = typeof navigator !== "undefined" && navigator.maxTouchPoints || 1;
+  const userAgent = navigator.userAgent || "";
+  const platform = navigator.platform || "";
+  const maxTouchPoints = navigator.maxTouchPoints || 1;
   const isAndroid = /Android/.test(userAgent);
   const isIOS = /\b(iPad|iPhone|iPod)(?=;)/.test(userAgent) || platform === "MacIntel" && maxTouchPoints > 1;
-  const isIOSChrome = /CriOS/.test(userAgent);
-
-  (function checkOnBlobSupport() {
-    if (isIOSChrome) {
-      compatibilityParams.disableCreateObjectURL = true;
-    }
-  })();
 
   (function checkCanvasSizeLimitation() {
     if (isIOS || isAndroid) {
@@ -236,7 +229,7 @@ const defaultOptions = {
     kind: OptionKind.VIEWER
   };
   defaultOptions.locale = {
-    value: typeof navigator !== "undefined" ? navigator.language : "en-US",
+    value: navigator.language || "en-US",
     kind: OptionKind.VIEWER
   };
   defaultOptions.sandboxBundleSrc = {
@@ -342,23 +335,23 @@ var _pdfjsLib = __webpack_require__(5);
 
 var _pdf_cursor_tools = __webpack_require__(6);
 
-var _overlay_manager = __webpack_require__(8);
+var _pdf_link_service = __webpack_require__(8);
 
-var _password_prompt = __webpack_require__(9);
+var _overlay_manager = __webpack_require__(9);
 
-var _pdf_attachment_viewer = __webpack_require__(10);
+var _password_prompt = __webpack_require__(10);
 
-var _pdf_document_properties = __webpack_require__(12);
+var _pdf_attachment_viewer = __webpack_require__(11);
 
-var _pdf_find_bar = __webpack_require__(13);
+var _pdf_document_properties = __webpack_require__(13);
 
-var _pdf_find_controller = __webpack_require__(14);
+var _pdf_find_bar = __webpack_require__(14);
 
-var _pdf_history = __webpack_require__(16);
+var _pdf_find_controller = __webpack_require__(15);
 
-var _pdf_layer_viewer = __webpack_require__(17);
+var _pdf_history = __webpack_require__(17);
 
-var _pdf_link_service = __webpack_require__(18);
+var _pdf_layer_viewer = __webpack_require__(18);
 
 var _pdf_outline_viewer = __webpack_require__(19);
 
@@ -508,8 +501,8 @@ const PDFViewerApplication = {
 
     await this._initializeL10n();
 
-    if (this.isViewerEmbedded && _app_options.AppOptions.get("externalLinkTarget") === 
_pdfjsLib.LinkTarget.NONE) {
-      _app_options.AppOptions.set("externalLinkTarget", _pdfjsLib.LinkTarget.TOP);
+    if (this.isViewerEmbedded && _app_options.AppOptions.get("externalLinkTarget") === 
_pdf_link_service.LinkTarget.NONE) {
+      _app_options.AppOptions.set("externalLinkTarget", _pdf_link_service.LinkTarget.TOP);
     }
 
     await this._initializeViewerComponents();
@@ -671,16 +664,7 @@ const PDFViewerApplication = {
       appConfig,
       externalServices
     } = this;
-    let eventBus;
-
-    if (appConfig.eventBus) {
-      eventBus = appConfig.eventBus;
-    } else if (externalServices.isInAutomation) {
-      eventBus = new _event_utils.AutomationEventBus();
-    } else {
-      eventBus = new _event_utils.EventBus();
-    }
-
+    const eventBus = externalServices.isInAutomation ? new _event_utils.AutomationEventBus() : new 
_event_utils.EventBus();
     this.eventBus = eventBus;
     this.overlayManager = new _overlay_manager.OverlayManager();
     const pdfRenderingQueue = new _pdf_rendering_queue.PDFRenderingQueue();
@@ -849,7 +833,7 @@ const PDFViewerApplication = {
   },
 
   get supportsFullscreen() {
-    return (0, _pdfjsLib.shadow)(this, "supportsFullscreen", document.fullscreenEnabled || 
document.mozFullScreenEnabled || document.webkitFullscreenEnabled);
+    return (0, _pdfjsLib.shadow)(this, "supportsFullscreen", document.fullscreenEnabled);
   },
 
   get supportsIntegratedFind() {
@@ -1173,6 +1157,12 @@ const PDFViewerApplication = {
     this._unblockDocumentLoadEvent();
 
     this._otherError(message, moreInfo);
+
+    this.eventBus.dispatch("documenterror", {
+      source: this,
+      message,
+      reason: moreInfo?.message ?? null
+    });
   },
 
   _otherError(message, moreInfo = null) {
@@ -2183,12 +2173,9 @@ let validateFileURL;
         return;
       }
 
-      const {
-        origin,
-        protocol
-      } = new URL(file, window.location.href);
+      const fileOrigin = new URL(file, window.location.href).origin;
 
-      if (origin !== viewerOrigin && protocol !== "blob:") {
+      if (fileOrigin !== viewerOrigin) {
         throw new Error("file origin does not match viewer's");
       }
     } catch (ex) {
@@ -2511,29 +2498,16 @@ let webViewerFileInputChange, webViewerOpenFile;
     }
 
     const file = evt.fileInput.files[0];
+    let url = URL.createObjectURL(file);
 
-    if (!_app_options.compatibilityParams.disableCreateObjectURL) {
-      let url = URL.createObjectURL(file);
-
-      if (file.name) {
-        url = {
-          url,
-          originalUrl: file.name
-        };
-      }
-
-      PDFViewerApplication.open(url);
-    } else {
-      PDFViewerApplication.setTitleUsingUrl(file.name);
-      const fileReader = new FileReader();
-
-      fileReader.onload = function webViewerChangeFileReaderOnload(event) {
-        const buffer = event.target.result;
-        PDFViewerApplication.open(new Uint8Array(buffer));
+    if (file.name) {
+      url = {
+        url,
+        originalUrl: file.name
       };
-
-      fileReader.readAsArrayBuffer(file);
     }
+
+    PDFViewerApplication.open(url);
   };
 
   webViewerOpenFile = function (evt) {
@@ -2643,7 +2617,8 @@ function webViewerFindFromUrlHash(evt) {
     caseSensitive: false,
     entireWord: false,
     highlightAll: true,
-    findPrevious: false
+    findPrevious: false,
+    matchDiacritics: true
   });
 }
 
@@ -2733,11 +2708,12 @@ function webViewerWheel(evt) {
       return;
     }
 
-    const previousScale = pdfViewer.currentScale;
+    const deltaMode = evt.deltaMode;
     const delta = (0, _ui_utils.normalizeWheelEventDirection)(evt);
+    const previousScale = pdfViewer.currentScale;
     let ticks = 0;
 
-    if (evt.deltaMode === WheelEvent.DOM_DELTA_LINE || evt.deltaMode === WheelEvent.DOM_DELTA_PAGE) {
+    if (deltaMode === WheelEvent.DOM_DELTA_LINE || deltaMode === WheelEvent.DOM_DELTA_PAGE) {
       if (Math.abs(delta) >= 1) {
         ticks = Math.sign(delta);
       } else {
@@ -3114,14 +3090,13 @@ exports.PDFPrintServiceFactory = PDFPrintServiceFactory;
 Object.defineProperty(exports, "__esModule", ({
   value: true
 }));
-exports.animationStarted = exports.VERTICAL_PADDING = exports.UNKNOWN_SCALE = exports.TextLayerMode = 
exports.SpreadMode = exports.SidebarView = exports.ScrollMode = exports.SCROLLBAR_PADDING = 
exports.RenderingStates = exports.RendererType = exports.ProgressBar = exports.PresentationModeState = 
exports.MIN_SCALE = exports.MAX_SCALE = exports.MAX_AUTO_SCALE = exports.DEFAULT_SCALE_VALUE = 
exports.DEFAULT_SCALE_DELTA = exports.DEFAULT_SCALE = exports.AutoPrintRegExp = void 0;
+exports.animationStarted = exports.VERTICAL_PADDING = exports.UNKNOWN_SCALE = exports.TextLayerMode = 
exports.SpreadMode = exports.SidebarView = exports.ScrollMode = exports.SCROLLBAR_PADDING = 
exports.RenderingStates = exports.RendererType = exports.ProgressBar = exports.PresentationModeState = 
exports.OutputScale = exports.MIN_SCALE = exports.MAX_SCALE = exports.MAX_AUTO_SCALE = 
exports.DEFAULT_SCALE_VALUE = exports.DEFAULT_SCALE_DELTA = exports.DEFAULT_SCALE = exports.AutoPrintRegExp = 
void 0;
 exports.apiPageLayoutToViewerModes = apiPageLayoutToViewerModes;
 exports.apiPageModeToSidebarView = apiPageModeToSidebarView;
 exports.approximateFraction = approximateFraction;
 exports.backtrackBeforeAllVisibleElements = backtrackBeforeAllVisibleElements;
 exports.binarySearchFirstItem = binarySearchFirstItem;
 exports.getActiveOrFocusedElement = getActiveOrFocusedElement;
-exports.getOutputScale = getOutputScale;
 exports.getPageSizeInches = getPageSizeInches;
 exports.getVisibleElements = getVisibleElements;
 exports.isPortraitOrientation = isPortraitOrientation;
@@ -3132,6 +3107,7 @@ exports.noContextMenuHandler = noContextMenuHandler;
 exports.normalizeWheelEventDelta = normalizeWheelEventDelta;
 exports.normalizeWheelEventDirection = normalizeWheelEventDirection;
 exports.parseQueryString = parseQueryString;
+exports.removeNullCharacters = removeNullCharacters;
 exports.roundToDivide = roundToDivide;
 exports.scrollIntoView = scrollIntoView;
 exports.watchScroll = watchScroll;
@@ -3206,17 +3182,21 @@ exports.SpreadMode = SpreadMode;
 const AutoPrintRegExp = /\bprint\s*\(/;
 exports.AutoPrintRegExp = AutoPrintRegExp;
 
-function getOutputScale(ctx) {
-  const devicePixelRatio = window.devicePixelRatio || 1;
-  const backingStoreRatio = ctx.webkitBackingStorePixelRatio || ctx.mozBackingStorePixelRatio || 
ctx.backingStorePixelRatio || 1;
-  const pixelRatio = devicePixelRatio / backingStoreRatio;
-  return {
-    sx: pixelRatio,
-    sy: pixelRatio,
-    scaled: pixelRatio !== 1
-  };
+class OutputScale {
+  constructor() {
+    const pixelRatio = window.devicePixelRatio || 1;
+    this.sx = pixelRatio;
+    this.sy = pixelRatio;
+  }
+
+  get scaled() {
+    return this.sx !== 1 || this.sy !== 1;
+  }
+
 }
 
+exports.OutputScale = OutputScale;
+
 function scrollIntoView(element, spot, scrollMatches = false) {
   let parent = element.offsetParent;
 
@@ -3302,8 +3282,24 @@ function parseQueryString(query) {
   return params;
 }
 
-function binarySearchFirstItem(items, condition) {
-  let minIndex = 0;
+const NullCharactersRegExp = /\x00/g;
+const InvisibleCharactersRegExp = /[\x01-\x1F]/g;
+
+function removeNullCharacters(str, replaceInvisible = false) {
+  if (typeof str !== "string") {
+    console.error(`The argument must be a string.`);
+    return str;
+  }
+
+  if (replaceInvisible) {
+    str = str.replace(InvisibleCharactersRegExp, " ");
+  }
+
+  return str.replace(NullCharactersRegExp, "");
+}
+
+function binarySearchFirstItem(items, condition, start = 0) {
+  let minIndex = start;
   let maxIndex = items.length - 1;
 
   if (maxIndex < 0 || !condition(items[maxIndex])) {
@@ -4141,748 +4137,724 @@ exports.GrabToPan = GrabToPan;
 
 /***/ }),
 /* 8 */
-/***/ ((__unused_webpack_module, exports) => {
+/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
 
 
 Object.defineProperty(exports, "__esModule", ({
   value: true
 }));
-exports.OverlayManager = void 0;
+exports.SimpleLinkService = exports.PDFLinkService = exports.LinkTarget = void 0;
 
-class OverlayManager {
-  constructor() {
-    this._overlays = {};
-    this._active = null;
-    this._keyDownBound = this._keyDown.bind(this);
-  }
+var _ui_utils = __webpack_require__(3);
 
-  get active() {
-    return this._active;
+const DEFAULT_LINK_REL = "noopener noreferrer nofollow";
+const LinkTarget = {
+  NONE: 0,
+  SELF: 1,
+  BLANK: 2,
+  PARENT: 3,
+  TOP: 4
+};
+exports.LinkTarget = LinkTarget;
+
+function addLinkAttributes(link, {
+  url,
+  target,
+  rel,
+  enabled = true
+} = {}) {
+  if (!url || typeof url !== "string") {
+    throw new Error('A valid "url" parameter must provided.');
   }
 
-  async register(name, element, callerCloseMethod = null, canForceClose = false) {
-    let container;
+  const urlNullRemoved = (0, _ui_utils.removeNullCharacters)(url);
 
-    if (!name || !element || !(container = element.parentNode)) {
-      throw new Error("Not enough parameters.");
-    } else if (this._overlays[name]) {
-      throw new Error("The overlay is already registered.");
-    }
+  if (enabled) {
+    link.href = link.title = urlNullRemoved;
+  } else {
+    link.href = "";
+    link.title = `Disabled: ${urlNullRemoved}`;
 
-    this._overlays[name] = {
-      element,
-      container,
-      callerCloseMethod,
-      canForceClose
+    link.onclick = () => {
+      return false;
     };
   }
 
-  async unregister(name) {
-    if (!this._overlays[name]) {
-      throw new Error("The overlay does not exist.");
-    } else if (this._active === name) {
-      throw new Error("The overlay cannot be removed while it is active.");
-    }
-
-    delete this._overlays[name];
-  }
+  let targetStr = "";
 
-  async open(name) {
-    if (!this._overlays[name]) {
-      throw new Error("The overlay does not exist.");
-    } else if (this._active) {
-      if (this._overlays[name].canForceClose) {
-        this._closeThroughCaller();
-      } else if (this._active === name) {
-        throw new Error("The overlay is already active.");
-      } else {
-        throw new Error("Another overlay is currently active.");
-      }
-    }
+  switch (target) {
+    case LinkTarget.NONE:
+      break;
 
-    this._active = name;
+    case LinkTarget.SELF:
+      targetStr = "_self";
+      break;
 
-    this._overlays[this._active].element.classList.remove("hidden");
+    case LinkTarget.BLANK:
+      targetStr = "_blank";
+      break;
 
-    this._overlays[this._active].container.classList.remove("hidden");
+    case LinkTarget.PARENT:
+      targetStr = "_parent";
+      break;
 
-    window.addEventListener("keydown", this._keyDownBound);
+    case LinkTarget.TOP:
+      targetStr = "_top";
+      break;
   }
 
-  async close(name) {
-    if (!this._overlays[name]) {
-      throw new Error("The overlay does not exist.");
-    } else if (!this._active) {
-      throw new Error("The overlay is currently not active.");
-    } else if (this._active !== name) {
-      throw new Error("Another overlay is currently active.");
-    }
-
-    this._overlays[this._active].container.classList.add("hidden");
+  link.target = targetStr;
+  link.rel = typeof rel === "string" ? rel : DEFAULT_LINK_REL;
+}
 
-    this._overlays[this._active].element.classList.add("hidden");
+class PDFLinkService {
+  #pagesRefCache = new Map();
 
-    this._active = null;
-    window.removeEventListener("keydown", this._keyDownBound);
+  constructor({
+    eventBus,
+    externalLinkTarget = null,
+    externalLinkRel = null,
+    ignoreDestinationZoom = false
+  } = {}) {
+    this.eventBus = eventBus;
+    this.externalLinkTarget = externalLinkTarget;
+    this.externalLinkRel = externalLinkRel;
+    this.externalLinkEnabled = true;
+    this._ignoreDestinationZoom = ignoreDestinationZoom;
+    this.baseUrl = null;
+    this.pdfDocument = null;
+    this.pdfViewer = null;
+    this.pdfHistory = null;
   }
 
-  _keyDown(evt) {
-    if (this._active && evt.keyCode === 27) {
-      this._closeThroughCaller();
-
-      evt.preventDefault();
-    }
+  setDocument(pdfDocument, baseUrl = null) {
+    this.baseUrl = baseUrl;
+    this.pdfDocument = pdfDocument;
+    this.#pagesRefCache.clear();
   }
 
-  _closeThroughCaller() {
-    if (this._overlays[this._active].callerCloseMethod) {
-      this._overlays[this._active].callerCloseMethod();
-    }
+  setViewer(pdfViewer) {
+    this.pdfViewer = pdfViewer;
+  }
 
-    if (this._active) {
-      this.close(this._active);
-    }
+  setHistory(pdfHistory) {
+    this.pdfHistory = pdfHistory;
   }
 
-}
+  get pagesCount() {
+    return this.pdfDocument ? this.pdfDocument.numPages : 0;
+  }
 
-exports.OverlayManager = OverlayManager;
+  get page() {
+    return this.pdfViewer.currentPageNumber;
+  }
 
-/***/ }),
-/* 9 */
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
+  set page(value) {
+    this.pdfViewer.currentPageNumber = value;
+  }
 
+  get rotation() {
+    return this.pdfViewer.pagesRotation;
+  }
 
+  set rotation(value) {
+    this.pdfViewer.pagesRotation = value;
+  }
 
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.PasswordPrompt = void 0;
+  #goToDestinationHelper(rawDest, namedDest = null, explicitDest) {
+    const destRef = explicitDest[0];
+    let pageNumber;
 
-var _pdfjsLib = __webpack_require__(5);
+    if (typeof destRef === "object" && destRef !== null) {
+      pageNumber = this._cachedPageNumber(destRef);
 
-class PasswordPrompt {
-  constructor(options, overlayManager, l10n, isViewerEmbedded = false) {
-    this.overlayName = options.overlayName;
-    this.container = options.container;
-    this.label = options.label;
-    this.input = options.input;
-    this.submitButton = options.submitButton;
-    this.cancelButton = options.cancelButton;
-    this.overlayManager = overlayManager;
-    this.l10n = l10n;
-    this._isViewerEmbedded = isViewerEmbedded;
-    this.updateCallback = null;
-    this.reason = null;
-    this.submitButton.addEventListener("click", this.verify.bind(this));
-    this.cancelButton.addEventListener("click", this.close.bind(this));
-    this.input.addEventListener("keydown", e => {
-      if (e.keyCode === 13) {
-        this.verify();
+      if (!pageNumber) {
+        this.pdfDocument.getPageIndex(destRef).then(pageIndex => {
+          this.cachePageRef(pageIndex + 1, destRef);
+          this.#goToDestinationHelper(rawDest, namedDest, explicitDest);
+        }).catch(() => {
+          console.error(`PDFLinkService.#goToDestinationHelper: "${destRef}" is not ` + `a valid page 
reference, for dest="${rawDest}".`);
+        });
+        return;
       }
-    });
-    this.overlayManager.register(this.overlayName, this.container, this.close.bind(this), true);
-  }
-
-  async open() {
-    await this.overlayManager.open(this.overlayName);
-    const passwordIncorrect = this.reason === _pdfjsLib.PasswordResponses.INCORRECT_PASSWORD;
+    } else if (Number.isInteger(destRef)) {
+      pageNumber = destRef + 1;
+    } else {
+      console.error(`PDFLinkService.#goToDestinationHelper: "${destRef}" is not ` + `a valid destination 
reference, for dest="${rawDest}".`);
+      return;
+    }
 
-    if (!this._isViewerEmbedded || passwordIncorrect) {
-      this.input.focus();
+    if (!pageNumber || pageNumber < 1 || pageNumber > this.pagesCount) {
+      console.error(`PDFLinkService.#goToDestinationHelper: "${pageNumber}" is not ` + `a valid page number, 
for dest="${rawDest}".`);
+      return;
     }
 
-    this.label.textContent = await this.l10n.get(`password_${passwordIncorrect ? "invalid" : "label"}`);
-  }
+    if (this.pdfHistory) {
+      this.pdfHistory.pushCurrentPosition();
+      this.pdfHistory.push({
+        namedDest,
+        explicitDest,
+        pageNumber
+      });
+    }
 
-  close() {
-    this.overlayManager.close(this.overlayName).then(() => {
-      this.input.value = "";
+    this.pdfViewer.scrollPageIntoView({
+      pageNumber,
+      destArray: explicitDest,
+      ignoreDestinationZoom: this._ignoreDestinationZoom
     });
   }
 
-  verify() {
-    const password = this.input.value;
-
-    if (password?.length > 0) {
-      this.close();
-      this.updateCallback(password);
+  async goToDestination(dest) {
+    if (!this.pdfDocument) {
+      return;
     }
-  }
 
-  setUpdateCallback(updateCallback, reason) {
-    this.updateCallback = updateCallback;
-    this.reason = reason;
-  }
+    let namedDest, explicitDest;
 
-}
+    if (typeof dest === "string") {
+      namedDest = dest;
+      explicitDest = await this.pdfDocument.getDestination(dest);
+    } else {
+      namedDest = null;
+      explicitDest = await dest;
+    }
 
-exports.PasswordPrompt = PasswordPrompt;
+    if (!Array.isArray(explicitDest)) {
+      console.error(`PDFLinkService.goToDestination: "${explicitDest}" is not ` + `a valid destination 
array, for dest="${dest}".`);
+      return;
+    }
 
-/***/ }),
-/* 10 */
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
-
-
-
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.PDFAttachmentViewer = void 0;
-
-var _pdfjsLib = __webpack_require__(5);
-
-var _base_tree_viewer = __webpack_require__(11);
-
-class PDFAttachmentViewer extends _base_tree_viewer.BaseTreeViewer {
-  constructor(options) {
-    super(options);
-    this.downloadManager = options.downloadManager;
-
-    this.eventBus._on("fileattachmentannotation", this._appendAttachment.bind(this));
+    this.#goToDestinationHelper(dest, namedDest, explicitDest);
   }
 
-  reset(keepRenderedCapability = false) {
-    super.reset();
-    this._attachments = null;
-
-    if (!keepRenderedCapability) {
-      this._renderedCapability = (0, _pdfjsLib.createPromiseCapability)();
-    }
-
-    if (this._pendingDispatchEvent) {
-      clearTimeout(this._pendingDispatchEvent);
+  goToPage(val) {
+    if (!this.pdfDocument) {
+      return;
     }
 
-    this._pendingDispatchEvent = null;
-  }
-
-  _dispatchEvent(attachmentsCount) {
-    this._renderedCapability.resolve();
+    const pageNumber = typeof val === "string" && this.pdfViewer.pageLabelToPageNumber(val) || val | 0;
 
-    if (this._pendingDispatchEvent) {
-      clearTimeout(this._pendingDispatchEvent);
-      this._pendingDispatchEvent = null;
+    if (!(Number.isInteger(pageNumber) && pageNumber > 0 && pageNumber <= this.pagesCount)) {
+      console.error(`PDFLinkService.goToPage: "${val}" is not a valid page.`);
+      return;
     }
 
-    if (attachmentsCount === 0) {
-      this._pendingDispatchEvent = setTimeout(() => {
-        this.eventBus.dispatch("attachmentsloaded", {
-          source: this,
-          attachmentsCount: 0
-        });
-        this._pendingDispatchEvent = null;
-      });
-      return;
+    if (this.pdfHistory) {
+      this.pdfHistory.pushCurrentPosition();
+      this.pdfHistory.pushPage(pageNumber);
     }
 
-    this.eventBus.dispatch("attachmentsloaded", {
-      source: this,
-      attachmentsCount
+    this.pdfViewer.scrollPageIntoView({
+      pageNumber
     });
   }
 
-  _bindLink(element, {
-    content,
-    filename
-  }) {
-    element.onclick = () => {
-      this.downloadManager.openOrDownloadData(element, content, filename);
-      return false;
-    };
+  addLinkAttributes(link, url, newWindow = false) {
+    addLinkAttributes(link, {
+      url,
+      target: newWindow ? LinkTarget.BLANK : this.externalLinkTarget,
+      rel: this.externalLinkRel,
+      enabled: this.externalLinkEnabled
+    });
   }
 
-  render({
-    attachments,
-    keepRenderedCapability = false
-  }) {
-    if (this._attachments) {
-      this.reset(keepRenderedCapability);
+  getDestinationHash(dest) {
+    if (typeof dest === "string") {
+      if (dest.length > 0) {
+        return this.getAnchorUrl("#" + escape(dest));
+      }
+    } else if (Array.isArray(dest)) {
+      const str = JSON.stringify(dest);
+
+      if (str.length > 0) {
+        return this.getAnchorUrl("#" + escape(str));
+      }
     }
 
-    this._attachments = attachments || null;
+    return this.getAnchorUrl("");
+  }
 
-    if (!attachments) {
-      this._dispatchEvent(0);
+  getAnchorUrl(anchor) {
+    return (this.baseUrl || "") + anchor;
+  }
 
+  setHash(hash) {
+    if (!this.pdfDocument) {
       return;
     }
 
-    const names = Object.keys(attachments).sort(function (a, b) {
-      return a.toLowerCase().localeCompare(b.toLowerCase());
-    });
-    const fragment = document.createDocumentFragment();
-    let attachmentsCount = 0;
-
-    for (const name of names) {
-      const item = attachments[name];
-      const content = item.content,
-            filename = (0, _pdfjsLib.getFilenameFromUrl)(item.filename);
-      const div = document.createElement("div");
-      div.className = "treeItem";
-      const element = document.createElement("a");
-
-      this._bindLink(element, {
-        content,
-        filename
-      });
+    let pageNumber, dest;
 
-      element.textContent = this._normalizeTextContent(filename);
-      div.appendChild(element);
-      fragment.appendChild(div);
-      attachmentsCount++;
-    }
+    if (hash.includes("=")) {
+      const params = (0, _ui_utils.parseQueryString)(hash);
 
-    this._finishRendering(fragment, attachmentsCount);
-  }
+      if (params.has("search")) {
+        this.eventBus.dispatch("findfromurlhash", {
+          source: this,
+          query: params.get("search").replace(/"/g, ""),
+          phraseSearch: params.get("phrase") === "true"
+        });
+      }
 
-  _appendAttachment({
-    id,
-    filename,
-    content
-  }) {
-    const renderedPromise = this._renderedCapability.promise;
-    renderedPromise.then(() => {
-      if (renderedPromise !== this._renderedCapability.promise) {
-        return;
+      if (params.has("page")) {
+        pageNumber = params.get("page") | 0 || 1;
       }
 
-      let attachments = this._attachments;
+      if (params.has("zoom")) {
+        const zoomArgs = params.get("zoom").split(",");
+        const zoomArg = zoomArgs[0];
+        const zoomArgNumber = parseFloat(zoomArg);
 
-      if (!attachments) {
-        attachments = Object.create(null);
-      } else {
-        for (const name in attachments) {
-          if (id === name) {
-            return;
+        if (!zoomArg.includes("Fit")) {
+          dest = [null, {
+            name: "XYZ"
+          }, zoomArgs.length > 1 ? zoomArgs[1] | 0 : null, zoomArgs.length > 2 ? zoomArgs[2] | 0 : null, 
zoomArgNumber ? zoomArgNumber / 100 : zoomArg];
+        } else {
+          if (zoomArg === "Fit" || zoomArg === "FitB") {
+            dest = [null, {
+              name: zoomArg
+            }];
+          } else if (zoomArg === "FitH" || zoomArg === "FitBH" || zoomArg === "FitV" || zoomArg === "FitBV") 
{
+            dest = [null, {
+              name: zoomArg
+            }, zoomArgs.length > 1 ? zoomArgs[1] | 0 : null];
+          } else if (zoomArg === "FitR") {
+            if (zoomArgs.length !== 5) {
+              console.error('PDFLinkService.setHash: Not enough parameters for "FitR".');
+            } else {
+              dest = [null, {
+                name: zoomArg
+              }, zoomArgs[1] | 0, zoomArgs[2] | 0, zoomArgs[3] | 0, zoomArgs[4] | 0];
+            }
+          } else {
+            console.error(`PDFLinkService.setHash: "${zoomArg}" is not a valid zoom value.`);
           }
         }
       }
 
-      attachments[id] = {
-        filename,
-        content
-      };
-      this.render({
-        attachments,
-        keepRenderedCapability: true
-      });
-    });
-  }
+      if (dest) {
+        this.pdfViewer.scrollPageIntoView({
+          pageNumber: pageNumber || this.page,
+          destArray: dest,
+          allowNegativeOffset: true
+        });
+      } else if (pageNumber) {
+        this.page = pageNumber;
+      }
 
-}
+      if (params.has("pagemode")) {
+        this.eventBus.dispatch("pagemode", {
+          source: this,
+          mode: params.get("pagemode")
+        });
+      }
 
-exports.PDFAttachmentViewer = PDFAttachmentViewer;
+      if (params.has("nameddest")) {
+        this.goToDestination(params.get("nameddest"));
+      }
+    } else {
+      dest = unescape(hash);
 
-/***/ }),
-/* 11 */
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
+      try {
+        dest = JSON.parse(dest);
 
+        if (!Array.isArray(dest)) {
+          dest = dest.toString();
+        }
+      } catch (ex) {}
 
+      if (typeof dest === "string" || PDFLinkService.#isValidExplicitDestination(dest)) {
+        this.goToDestination(dest);
+        return;
+      }
 
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.BaseTreeViewer = void 0;
+      console.error(`PDFLinkService.setHash: "${unescape(hash)}" is not a valid destination.`);
+    }
+  }
 
-var _pdfjsLib = __webpack_require__(5);
+  executeNamedAction(action) {
+    switch (action) {
+      case "GoBack":
+        this.pdfHistory?.back();
+        break;
 
-const TREEITEM_OFFSET_TOP = -100;
-const TREEITEM_SELECTED_CLASS = "selected";
+      case "GoForward":
+        this.pdfHistory?.forward();
+        break;
 
-class BaseTreeViewer {
-  constructor(options) {
-    if (this.constructor === BaseTreeViewer) {
-      throw new Error("Cannot initialize BaseTreeViewer.");
-    }
+      case "NextPage":
+        this.pdfViewer.nextPage();
+        break;
 
-    this.container = options.container;
-    this.eventBus = options.eventBus;
-    this.reset();
-  }
+      case "PrevPage":
+        this.pdfViewer.previousPage();
+        break;
 
-  reset() {
-    this._pdfDocument = null;
-    this._lastToggleIsShow = true;
-    this._currentTreeItem = null;
-    this.container.textContent = "";
-    this.container.classList.remove("treeWithDeepNesting");
+      case "LastPage":
+        this.page = this.pagesCount;
+        break;
+
+      case "FirstPage":
+        this.page = 1;
+        break;
+
+      default:
+        break;
+    }
+
+    this.eventBus.dispatch("namedaction", {
+      source: this,
+      action
+    });
   }
 
-  _dispatchEvent(count) {
-    throw new Error("Not implemented: _dispatchEvent");
+  cachePageRef(pageNum, pageRef) {
+    if (!pageRef) {
+      return;
+    }
+
+    const refStr = pageRef.gen === 0 ? `${pageRef.num}R` : `${pageRef.num}R${pageRef.gen}`;
+    this.#pagesRefCache.set(refStr, pageNum);
   }
 
-  _bindLink(element, params) {
-    throw new Error("Not implemented: _bindLink");
+  _cachedPageNumber(pageRef) {
+    if (!pageRef) {
+      return null;
+    }
+
+    const refStr = pageRef.gen === 0 ? `${pageRef.num}R` : `${pageRef.num}R${pageRef.gen}`;
+    return this.#pagesRefCache.get(refStr) || null;
   }
 
-  _normalizeTextContent(str) {
-    return (0, _pdfjsLib.removeNullCharacters)(str, true) || "\u2013";
+  isPageVisible(pageNumber) {
+    return this.pdfViewer.isPageVisible(pageNumber);
   }
 
-  _addToggleButton(div, hidden = false) {
-    const toggler = document.createElement("div");
-    toggler.className = "treeItemToggler";
+  isPageCached(pageNumber) {
+    return this.pdfViewer.isPageCached(pageNumber);
+  }
 
-    if (hidden) {
-      toggler.classList.add("treeItemsHidden");
+  static #isValidExplicitDestination(dest) {
+    if (!Array.isArray(dest)) {
+      return false;
     }
 
-    toggler.onclick = evt => {
-      evt.stopPropagation();
-      toggler.classList.toggle("treeItemsHidden");
+    const destLength = dest.length;
 
-      if (evt.shiftKey) {
-        const shouldShowAll = !toggler.classList.contains("treeItemsHidden");
+    if (destLength < 2) {
+      return false;
+    }
 
-        this._toggleTreeItem(div, shouldShowAll);
-      }
-    };
+    const page = dest[0];
 
-    div.insertBefore(toggler, div.firstChild);
-  }
+    if (!(typeof page === "object" && Number.isInteger(page.num) && Number.isInteger(page.gen)) && 
!(Number.isInteger(page) && page >= 0)) {
+      return false;
+    }
 
-  _toggleTreeItem(root, show = false) {
-    this._lastToggleIsShow = show;
+    const zoom = dest[1];
 
-    for (const toggler of root.querySelectorAll(".treeItemToggler")) {
-      toggler.classList.toggle("treeItemsHidden", !show);
+    if (!(typeof zoom === "object" && typeof zoom.name === "string")) {
+      return false;
     }
-  }
 
-  _toggleAllTreeItems() {
-    this._toggleTreeItem(this.container, !this._lastToggleIsShow);
-  }
+    let allowNull = true;
 
-  _finishRendering(fragment, count, hasAnyNesting = false) {
-    if (hasAnyNesting) {
-      this.container.classList.add("treeWithDeepNesting");
-      this._lastToggleIsShow = !fragment.querySelector(".treeItemsHidden");
-    }
+    switch (zoom.name) {
+      case "XYZ":
+        if (destLength !== 5) {
+          return false;
+        }
 
-    this.container.appendChild(fragment);
+        break;
 
-    this._dispatchEvent(count);
-  }
+      case "Fit":
+      case "FitB":
+        return destLength === 2;
 
-  render(params) {
-    throw new Error("Not implemented: render");
-  }
+      case "FitH":
+      case "FitBH":
+      case "FitV":
+      case "FitBV":
+        if (destLength !== 3) {
+          return false;
+        }
 
-  _updateCurrentTreeItem(treeItem = null) {
-    if (this._currentTreeItem) {
-      this._currentTreeItem.classList.remove(TREEITEM_SELECTED_CLASS);
+        break;
 
-      this._currentTreeItem = null;
-    }
+      case "FitR":
+        if (destLength !== 6) {
+          return false;
+        }
 
-    if (treeItem) {
-      treeItem.classList.add(TREEITEM_SELECTED_CLASS);
-      this._currentTreeItem = treeItem;
-    }
-  }
+        allowNull = false;
+        break;
 
-  _scrollToCurrentTreeItem(treeItem) {
-    if (!treeItem) {
-      return;
+      default:
+        return false;
     }
 
-    let currentNode = treeItem.parentNode;
+    for (let i = 2; i < destLength; i++) {
+      const param = dest[i];
 
-    while (currentNode && currentNode !== this.container) {
-      if (currentNode.classList.contains("treeItem")) {
-        const toggler = currentNode.firstElementChild;
-        toggler?.classList.remove("treeItemsHidden");
+      if (!(typeof param === "number" || allowNull && param === null)) {
+        return false;
       }
-
-      currentNode = currentNode.parentNode;
     }
 
-    this._updateCurrentTreeItem(treeItem);
-
-    this.container.scrollTo(treeItem.offsetLeft, treeItem.offsetTop + TREEITEM_OFFSET_TOP);
+    return true;
   }
 
 }
 
-exports.BaseTreeViewer = BaseTreeViewer;
+exports.PDFLinkService = PDFLinkService;
 
-/***/ }),
-/* 12 */
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
+class SimpleLinkService {
+  constructor() {
+    this.externalLinkEnabled = true;
+  }
 
+  get pagesCount() {
+    return 0;
+  }
 
+  get page() {
+    return 0;
+  }
 
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.PDFDocumentProperties = void 0;
+  set page(value) {}
 
-var _pdfjsLib = __webpack_require__(5);
+  get rotation() {
+    return 0;
+  }
 
-var _ui_utils = __webpack_require__(3);
+  set rotation(value) {}
 
-const DEFAULT_FIELD_CONTENT = "-";
-const NON_METRIC_LOCALES = ["en-us", "en-lr", "my"];
-const US_PAGE_NAMES = {
-  "8.5x11": "Letter",
-  "8.5x14": "Legal"
-};
-const METRIC_PAGE_NAMES = {
-  "297x420": "A3",
-  "210x297": "A4"
-};
+  async goToDestination(dest) {}
 
-function getPageName(size, isPortrait, pageNames) {
-  const width = isPortrait ? size.width : size.height;
-  const height = isPortrait ? size.height : size.width;
-  return pageNames[`${width}x${height}`];
-}
+  goToPage(val) {}
 
-class PDFDocumentProperties {
-  constructor({
-    overlayName,
-    fields,
-    container,
-    closeButton
-  }, overlayManager, eventBus, l10n) {
-    this.overlayName = overlayName;
-    this.fields = fields;
-    this.container = container;
-    this.overlayManager = overlayManager;
-    this.l10n = l10n;
+  addLinkAttributes(link, url, newWindow = false) {
+    addLinkAttributes(link, {
+      url,
+      enabled: this.externalLinkEnabled
+    });
+  }
 
-    this._reset();
+  getDestinationHash(dest) {
+    return "#";
+  }
 
-    closeButton.addEventListener("click", this.close.bind(this));
-    this.overlayManager.register(this.overlayName, this.container, this.close.bind(this));
+  getAnchorUrl(hash) {
+    return "#";
+  }
 
-    eventBus._on("pagechanging", evt => {
-      this._currentPageNumber = evt.pageNumber;
-    });
+  setHash(hash) {}
 
-    eventBus._on("rotationchanging", evt => {
-      this._pagesRotation = evt.pagesRotation;
-    });
+  executeNamedAction(action) {}
 
-    this._isNonMetricLocale = true;
-    l10n.getLanguage().then(locale => {
-      this._isNonMetricLocale = NON_METRIC_LOCALES.includes(locale);
-    });
+  cachePageRef(pageNum, pageRef) {}
+
+  isPageVisible(pageNumber) {
+    return true;
   }
 
-  async open() {
-    const freezeFieldData = data => {
-      Object.defineProperty(this, "fieldData", {
-        value: Object.freeze(data),
-        writable: false,
-        enumerable: true,
-        configurable: true
-      });
-    };
+  isPageCached(pageNumber) {
+    return true;
+  }
 
-    await Promise.all([this.overlayManager.open(this.overlayName), this._dataAvailableCapability.promise]);
-    const currentPageNumber = this._currentPageNumber;
-    const pagesRotation = this._pagesRotation;
+}
 
-    if (this.fieldData && currentPageNumber === this.fieldData._currentPageNumber && pagesRotation === 
this.fieldData._pagesRotation) {
-      this._updateUI();
+exports.SimpleLinkService = SimpleLinkService;
 
-      return;
-    }
+/***/ }),
+/* 9 */
+/***/ ((__unused_webpack_module, exports) => {
 
-    const {
-      info,
-      contentDispositionFilename,
-      contentLength
-    } = await this.pdfDocument.getMetadata();
-    const [fileName, fileSize, creationDate, modificationDate, pageSize, isLinearized] = await 
Promise.all([contentDispositionFilename || (0, _pdfjsLib.getPdfFilenameFromUrl)(this.url), 
this._parseFileSize(contentLength), this._parseDate(info.CreationDate), this._parseDate(info.ModDate), 
this.pdfDocument.getPage(currentPageNumber).then(pdfPage => {
-      return this._parsePageSize((0, _ui_utils.getPageSizeInches)(pdfPage), pagesRotation);
-    }), this._parseLinearization(info.IsLinearized)]);
-    freezeFieldData({
-      fileName,
-      fileSize,
-      title: info.Title,
-      author: info.Author,
-      subject: info.Subject,
-      keywords: info.Keywords,
-      creationDate,
-      modificationDate,
-      creator: info.Creator,
-      producer: info.Producer,
-      version: info.PDFFormatVersion,
-      pageCount: this.pdfDocument.numPages,
-      pageSize,
-      linearized: isLinearized,
-      _currentPageNumber: currentPageNumber,
-      _pagesRotation: pagesRotation
-    });
-
-    this._updateUI();
-
-    const {
-      length
-    } = await this.pdfDocument.getDownloadInfo();
 
-    if (contentLength === length) {
-      return;
-    }
 
-    const data = Object.assign(Object.create(null), this.fieldData);
-    data.fileSize = await this._parseFileSize(length);
-    freezeFieldData(data);
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.OverlayManager = void 0;
 
-    this._updateUI();
+class OverlayManager {
+  constructor() {
+    this._overlays = {};
+    this._active = null;
+    this._keyDownBound = this._keyDown.bind(this);
   }
 
-  close() {
-    this.overlayManager.close(this.overlayName);
+  get active() {
+    return this._active;
   }
 
-  setDocument(pdfDocument, url = null) {
-    if (this.pdfDocument) {
-      this._reset();
-
-      this._updateUI(true);
-    }
+  async register(name, element, callerCloseMethod = null, canForceClose = false) {
+    let container;
 
-    if (!pdfDocument) {
-      return;
+    if (!name || !element || !(container = element.parentNode)) {
+      throw new Error("Not enough parameters.");
+    } else if (this._overlays[name]) {
+      throw new Error("The overlay is already registered.");
     }
 
-    this.pdfDocument = pdfDocument;
-    this.url = url;
-
-    this._dataAvailableCapability.resolve();
+    this._overlays[name] = {
+      element,
+      container,
+      callerCloseMethod,
+      canForceClose
+    };
   }
 
-  _reset() {
-    this.pdfDocument = null;
-    this.url = null;
-    delete this.fieldData;
-    this._dataAvailableCapability = (0, _pdfjsLib.createPromiseCapability)();
-    this._currentPageNumber = 1;
-    this._pagesRotation = 0;
+  async unregister(name) {
+    if (!this._overlays[name]) {
+      throw new Error("The overlay does not exist.");
+    } else if (this._active === name) {
+      throw new Error("The overlay cannot be removed while it is active.");
+    }
+
+    delete this._overlays[name];
   }
 
-  _updateUI(reset = false) {
-    if (reset || !this.fieldData) {
-      for (const id in this.fields) {
-        this.fields[id].textContent = DEFAULT_FIELD_CONTENT;
+  async open(name) {
+    if (!this._overlays[name]) {
+      throw new Error("The overlay does not exist.");
+    } else if (this._active) {
+      if (this._overlays[name].canForceClose) {
+        this._closeThroughCaller();
+      } else if (this._active === name) {
+        throw new Error("The overlay is already active.");
+      } else {
+        throw new Error("Another overlay is currently active.");
       }
-
-      return;
     }
 
-    if (this.overlayManager.active !== this.overlayName) {
-      return;
-    }
+    this._active = name;
 
-    for (const id in this.fields) {
-      const content = this.fieldData[id];
-      this.fields[id].textContent = content || content === 0 ? content : DEFAULT_FIELD_CONTENT;
+    this._overlays[this._active].element.classList.remove("hidden");
+
+    this._overlays[this._active].container.classList.remove("hidden");
+
+    window.addEventListener("keydown", this._keyDownBound);
+  }
+
+  async close(name) {
+    if (!this._overlays[name]) {
+      throw new Error("The overlay does not exist.");
+    } else if (!this._active) {
+      throw new Error("The overlay is currently not active.");
+    } else if (this._active !== name) {
+      throw new Error("Another overlay is currently active.");
     }
+
+    this._overlays[this._active].container.classList.add("hidden");
+
+    this._overlays[this._active].element.classList.add("hidden");
+
+    this._active = null;
+    window.removeEventListener("keydown", this._keyDownBound);
   }
 
-  async _parseFileSize(fileSize = 0) {
-    const kb = fileSize / 1024,
-          mb = kb / 1024;
+  _keyDown(evt) {
+    if (this._active && evt.keyCode === 27) {
+      this._closeThroughCaller();
 
-    if (!kb) {
-      return undefined;
+      evt.preventDefault();
     }
-
-    return this.l10n.get(`document_properties_${mb >= 1 ? "mb" : "kb"}`, {
-      size_mb: mb >= 1 && (+mb.toPrecision(3)).toLocaleString(),
-      size_kb: mb < 1 && (+kb.toPrecision(3)).toLocaleString(),
-      size_b: fileSize.toLocaleString()
-    });
   }
 
-  async _parsePageSize(pageSizeInches, pagesRotation) {
-    if (!pageSizeInches) {
-      return undefined;
+  _closeThroughCaller() {
+    if (this._overlays[this._active].callerCloseMethod) {
+      this._overlays[this._active].callerCloseMethod();
     }
 
-    if (pagesRotation % 180 !== 0) {
-      pageSizeInches = {
-        width: pageSizeInches.height,
-        height: pageSizeInches.width
-      };
+    if (this._active) {
+      this.close(this._active);
     }
+  }
 
-    const isPortrait = (0, _ui_utils.isPortraitOrientation)(pageSizeInches);
-    let sizeInches = {
-      width: Math.round(pageSizeInches.width * 100) / 100,
-      height: Math.round(pageSizeInches.height * 100) / 100
-    };
-    let sizeMillimeters = {
-      width: Math.round(pageSizeInches.width * 25.4 * 10) / 10,
-      height: Math.round(pageSizeInches.height * 25.4 * 10) / 10
-    };
-    let rawName = getPageName(sizeInches, isPortrait, US_PAGE_NAMES) || getPageName(sizeMillimeters, 
isPortrait, METRIC_PAGE_NAMES);
+}
 
-    if (!rawName && !(Number.isInteger(sizeMillimeters.width) && Number.isInteger(sizeMillimeters.height))) {
-      const exactMillimeters = {
-        width: pageSizeInches.width * 25.4,
-        height: pageSizeInches.height * 25.4
-      };
-      const intMillimeters = {
-        width: Math.round(sizeMillimeters.width),
-        height: Math.round(sizeMillimeters.height)
-      };
+exports.OverlayManager = OverlayManager;
 
-      if (Math.abs(exactMillimeters.width - intMillimeters.width) < 0.1 && Math.abs(exactMillimeters.height 
- intMillimeters.height) < 0.1) {
-        rawName = getPageName(intMillimeters, isPortrait, METRIC_PAGE_NAMES);
+/***/ }),
+/* 10 */
+/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
-        if (rawName) {
-          sizeInches = {
-            width: Math.round(intMillimeters.width / 25.4 * 100) / 100,
-            height: Math.round(intMillimeters.height / 25.4 * 100) / 100
-          };
-          sizeMillimeters = intMillimeters;
-        }
+
+
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.PasswordPrompt = void 0;
+
+var _pdfjsLib = __webpack_require__(5);
+
+class PasswordPrompt {
+  constructor(options, overlayManager, l10n, isViewerEmbedded = false) {
+    this.overlayName = options.overlayName;
+    this.container = options.container;
+    this.label = options.label;
+    this.input = options.input;
+    this.submitButton = options.submitButton;
+    this.cancelButton = options.cancelButton;
+    this.overlayManager = overlayManager;
+    this.l10n = l10n;
+    this._isViewerEmbedded = isViewerEmbedded;
+    this.updateCallback = null;
+    this.reason = null;
+    this.submitButton.addEventListener("click", this.#verify.bind(this));
+    this.cancelButton.addEventListener("click", this.#cancel.bind(this));
+    this.input.addEventListener("keydown", e => {
+      if (e.keyCode === 13) {
+        this.#verify();
       }
+    });
+    this.overlayManager.register(this.overlayName, this.container, this.#cancel.bind(this), true);
+  }
+
+  async open() {
+    await this.overlayManager.open(this.overlayName);
+    const passwordIncorrect = this.reason === _pdfjsLib.PasswordResponses.INCORRECT_PASSWORD;
+
+    if (!this._isViewerEmbedded || passwordIncorrect) {
+      this.input.focus();
     }
 
-    const [{
-      width,
-      height
-    }, unit, name, orientation] = await Promise.all([this._isNonMetricLocale ? sizeInches : sizeMillimeters, 
this.l10n.get(`document_properties_page_size_unit_${this._isNonMetricLocale ? "inches" : "millimeters"}`), 
rawName && this.l10n.get(`document_properties_page_size_name_${rawName.toLowerCase()}`), 
this.l10n.get(`document_properties_page_size_orientation_${isPortrait ? "portrait" : "landscape"}`)]);
-    return this.l10n.get(`document_properties_page_size_dimension_${name ? "name_" : ""}string`, {
-      width: width.toLocaleString(),
-      height: height.toLocaleString(),
-      unit,
-      name,
-      orientation
-    });
+    this.label.textContent = await this.l10n.get(`password_${passwordIncorrect ? "invalid" : "label"}`);
   }
 
-  async _parseDate(inputDate) {
-    const dateObject = _pdfjsLib.PDFDateString.toDateObject(inputDate);
+  async close() {
+    await this.overlayManager.close(this.overlayName);
+    this.input.value = "";
+  }
 
-    if (!dateObject) {
-      return undefined;
+  #verify() {
+    const password = this.input.value;
+
+    if (password?.length > 0) {
+      this.close();
+      this.updateCallback(password);
     }
+  }
 
-    return this.l10n.get("document_properties_date_string", {
-      date: dateObject.toLocaleDateString(),
-      time: dateObject.toLocaleTimeString()
-    });
+  #cancel() {
+    this.close();
+    this.updateCallback(new Error("PasswordPrompt cancelled."));
   }
 
-  _parseLinearization(isLinearized) {
-    return this.l10n.get(`document_properties_linearized_${isLinearized ? "yes" : "no"}`);
+  setUpdateCallback(updateCallback, reason) {
+    this.updateCallback = updateCallback;
+    this.reason = reason;
   }
 
 }
 
-exports.PDFDocumentProperties = PDFDocumentProperties;
+exports.PasswordPrompt = PasswordPrompt;
 
 /***/ }),
-/* 13 */
+/* 11 */
 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
 
@@ -4890,200 +4862,154 @@ exports.PDFDocumentProperties = PDFDocumentProperties;
 Object.defineProperty(exports, "__esModule", ({
   value: true
 }));
-exports.PDFFindBar = void 0;
+exports.PDFAttachmentViewer = void 0;
 
-var _pdf_find_controller = __webpack_require__(14);
+var _pdfjsLib = __webpack_require__(5);
 
-const MATCHES_COUNT_LIMIT = 1000;
+var _base_tree_viewer = __webpack_require__(12);
 
-class PDFFindBar {
-  constructor(options, eventBus, l10n) {
-    this.opened = false;
-    this.bar = options.bar;
-    this.toggleButton = options.toggleButton;
-    this.findField = options.findField;
-    this.highlightAll = options.highlightAllCheckbox;
-    this.caseSensitive = options.caseSensitiveCheckbox;
-    this.entireWord = options.entireWordCheckbox;
-    this.findMsg = options.findMsg;
-    this.findResultsCount = options.findResultsCount;
-    this.findPreviousButton = options.findPreviousButton;
-    this.findNextButton = options.findNextButton;
-    this.eventBus = eventBus;
-    this.l10n = l10n;
-    this.toggleButton.addEventListener("click", () => {
-      this.toggle();
-    });
-    this.findField.addEventListener("input", () => {
-      this.dispatchEvent("");
-    });
-    this.bar.addEventListener("keydown", e => {
-      switch (e.keyCode) {
-        case 13:
-          if (e.target === this.findField) {
-            this.dispatchEvent("again", e.shiftKey);
-          }
-
-          break;
-
-        case 27:
-          this.close();
-          break;
-      }
-    });
-    this.findPreviousButton.addEventListener("click", () => {
-      this.dispatchEvent("again", true);
-    });
-    this.findNextButton.addEventListener("click", () => {
-      this.dispatchEvent("again", false);
-    });
-    this.highlightAll.addEventListener("click", () => {
-      this.dispatchEvent("highlightallchange");
-    });
-    this.caseSensitive.addEventListener("click", () => {
-      this.dispatchEvent("casesensitivitychange");
-    });
-    this.entireWord.addEventListener("click", () => {
-      this.dispatchEvent("entirewordchange");
-    });
-
-    this.eventBus._on("resize", this._adjustWidth.bind(this));
-  }
-
-  reset() {
-    this.updateUIState();
-  }
+class PDFAttachmentViewer extends _base_tree_viewer.BaseTreeViewer {
+  constructor(options) {
+    super(options);
+    this.downloadManager = options.downloadManager;
 
-  dispatchEvent(type, findPrev = false) {
-    this.eventBus.dispatch("find", {
-      source: this,
-      type,
-      query: this.findField.value,
-      phraseSearch: true,
-      caseSensitive: this.caseSensitive.checked,
-      entireWord: this.entireWord.checked,
-      highlightAll: this.highlightAll.checked,
-      findPrevious: findPrev
-    });
+    this.eventBus._on("fileattachmentannotation", this._appendAttachment.bind(this));
   }
 
-  updateUIState(state, previous, matchesCount) {
-    let findMsg = Promise.resolve("");
-    let status = "";
-
-    switch (state) {
-      case _pdf_find_controller.FindState.FOUND:
-        break;
-
-      case _pdf_find_controller.FindState.PENDING:
-        status = "pending";
-        break;
-
-      case _pdf_find_controller.FindState.NOT_FOUND:
-        findMsg = this.l10n.get("find_not_found");
-        status = "notFound";
-        break;
+  reset(keepRenderedCapability = false) {
+    super.reset();
+    this._attachments = null;
 
-      case _pdf_find_controller.FindState.WRAPPED:
-        findMsg = this.l10n.get(`find_reached_${previous ? "top" : "bottom"}`);
-        break;
+    if (!keepRenderedCapability) {
+      this._renderedCapability = (0, _pdfjsLib.createPromiseCapability)();
     }
 
-    this.findField.setAttribute("data-status", status);
-    findMsg.then(msg => {
-      this.findMsg.textContent = msg;
+    if (this._pendingDispatchEvent) {
+      clearTimeout(this._pendingDispatchEvent);
+    }
 
-      this._adjustWidth();
-    });
-    this.updateResultsCount(matchesCount);
+    this._pendingDispatchEvent = null;
   }
 
-  updateResultsCount({
-    current = 0,
-    total = 0
-  } = {}) {
-    const limit = MATCHES_COUNT_LIMIT;
-    let matchCountMsg = Promise.resolve("");
+  _dispatchEvent(attachmentsCount) {
+    this._renderedCapability.resolve();
 
-    if (total > 0) {
-      if (total > limit) {
-        let key = "find_match_count_limit";
-        matchCountMsg = this.l10n.get(key, {
-          limit
-        });
-      } else {
-        let key = "find_match_count";
-        matchCountMsg = this.l10n.get(key, {
-          current,
-          total
-        });
-      }
+    if (this._pendingDispatchEvent) {
+      clearTimeout(this._pendingDispatchEvent);
+      this._pendingDispatchEvent = null;
     }
 
-    matchCountMsg.then(msg => {
-      this.findResultsCount.textContent = msg;
-      this.findResultsCount.classList.toggle("hidden", !total);
+    if (attachmentsCount === 0) {
+      this._pendingDispatchEvent = setTimeout(() => {
+        this.eventBus.dispatch("attachmentsloaded", {
+          source: this,
+          attachmentsCount: 0
+        });
+        this._pendingDispatchEvent = null;
+      });
+      return;
+    }
 
-      this._adjustWidth();
+    this.eventBus.dispatch("attachmentsloaded", {
+      source: this,
+      attachmentsCount
     });
   }
 
-  open() {
-    if (!this.opened) {
-      this.opened = true;
-      this.toggleButton.classList.add("toggled");
-      this.toggleButton.setAttribute("aria-expanded", "true");
-      this.bar.classList.remove("hidden");
+  _bindLink(element, {
+    content,
+    filename
+  }) {
+    element.onclick = () => {
+      this.downloadManager.openOrDownloadData(element, content, filename);
+      return false;
+    };
+  }
+
+  render({
+    attachments,
+    keepRenderedCapability = false
+  }) {
+    if (this._attachments) {
+      this.reset(keepRenderedCapability);
     }
 
-    this.findField.select();
-    this.findField.focus();
+    this._attachments = attachments || null;
 
-    this._adjustWidth();
-  }
+    if (!attachments) {
+      this._dispatchEvent(0);
 
-  close() {
-    if (!this.opened) {
       return;
     }
 
-    this.opened = false;
-    this.toggleButton.classList.remove("toggled");
-    this.toggleButton.setAttribute("aria-expanded", "false");
-    this.bar.classList.add("hidden");
-    this.eventBus.dispatch("findbarclose", {
-      source: this
+    const names = Object.keys(attachments).sort(function (a, b) {
+      return a.toLowerCase().localeCompare(b.toLowerCase());
     });
-  }
+    const fragment = document.createDocumentFragment();
+    let attachmentsCount = 0;
 
-  toggle() {
-    if (this.opened) {
-      this.close();
-    } else {
-      this.open();
+    for (const name of names) {
+      const item = attachments[name];
+      const content = item.content,
+            filename = (0, _pdfjsLib.getFilenameFromUrl)(item.filename);
+      const div = document.createElement("div");
+      div.className = "treeItem";
+      const element = document.createElement("a");
+
+      this._bindLink(element, {
+        content,
+        filename
+      });
+
+      element.textContent = this._normalizeTextContent(filename);
+      div.appendChild(element);
+      fragment.appendChild(div);
+      attachmentsCount++;
     }
+
+    this._finishRendering(fragment, attachmentsCount);
   }
 
-  _adjustWidth() {
-    if (!this.opened) {
-      return;
-    }
+  _appendAttachment({
+    id,
+    filename,
+    content
+  }) {
+    const renderedPromise = this._renderedCapability.promise;
+    renderedPromise.then(() => {
+      if (renderedPromise !== this._renderedCapability.promise) {
+        return;
+      }
 
-    this.bar.classList.remove("wrapContainers");
-    const findbarHeight = this.bar.clientHeight;
-    const inputContainerHeight = this.bar.firstElementChild.clientHeight;
+      let attachments = this._attachments;
 
-    if (findbarHeight > inputContainerHeight) {
-      this.bar.classList.add("wrapContainers");
-    }
+      if (!attachments) {
+        attachments = Object.create(null);
+      } else {
+        for (const name in attachments) {
+          if (id === name) {
+            return;
+          }
+        }
+      }
+
+      attachments[id] = {
+        filename,
+        content
+      };
+      this.render({
+        attachments,
+        keepRenderedCapability: true
+      });
+    });
   }
 
 }
 
-exports.PDFFindBar = PDFFindBar;
+exports.PDFAttachmentViewer = PDFAttachmentViewer;
 
 /***/ }),
-/* 14 */
+/* 12 */
 /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
 
@@ -5091,2109 +5017,2291 @@ exports.PDFFindBar = PDFFindBar;
 Object.defineProperty(exports, "__esModule", ({
   value: true
 }));
-exports.PDFFindController = exports.FindState = void 0;
+exports.BaseTreeViewer = void 0;
 
-var _pdfjsLib = __webpack_require__(5);
+var _ui_utils = __webpack_require__(3);
 
-var _pdf_find_utils = __webpack_require__(15);
-
-var _ui_utils = __webpack_require__(3);
+const TREEITEM_OFFSET_TOP = -100;
+const TREEITEM_SELECTED_CLASS = "selected";
 
-const FindState = {
-  FOUND: 0,
-  NOT_FOUND: 1,
-  WRAPPED: 2,
-  PENDING: 3
-};
-exports.FindState = FindState;
-const FIND_TIMEOUT = 250;
-const MATCH_SCROLL_OFFSET_TOP = -50;
-const MATCH_SCROLL_OFFSET_LEFT = -400;
-const CHARACTERS_TO_NORMALIZE = {
-  "\u2010": "-",
-  "\u2018": "'",
-  "\u2019": "'",
-  "\u201A": "'",
-  "\u201B": "'",
-  "\u201C": '"',
-  "\u201D": '"',
-  "\u201E": '"',
-  "\u201F": '"',
-  "\u00BC": "1/4",
-  "\u00BD": "1/2",
-  "\u00BE": "3/4"
-};
-let normalizationRegex = null;
+class BaseTreeViewer {
+  constructor(options) {
+    if (this.constructor === BaseTreeViewer) {
+      throw new Error("Cannot initialize BaseTreeViewer.");
+    }
 
-function normalize(text) {
-  if (!normalizationRegex) {
-    const replace = Object.keys(CHARACTERS_TO_NORMALIZE).join("");
-    normalizationRegex = new RegExp(`[${replace}]`, "g");
+    this.container = options.container;
+    this.eventBus = options.eventBus;
+    this.reset();
   }
 
-  let diffs = null;
-  const normalizedText = text.replace(normalizationRegex, function (ch, index) {
-    const normalizedCh = CHARACTERS_TO_NORMALIZE[ch],
-          diff = normalizedCh.length - ch.length;
-
-    if (diff !== 0) {
-      (diffs ||= []).push([index, diff]);
-    }
-
-    return normalizedCh;
-  });
-  return [normalizedText, diffs];
-}
+  reset() {
+    this._pdfDocument = null;
+    this._lastToggleIsShow = true;
+    this._currentTreeItem = null;
+    this.container.textContent = "";
+    this.container.classList.remove("treeWithDeepNesting");
+  }
 
-function getOriginalIndex(matchIndex, diffs = null) {
-  if (!diffs) {
-    return matchIndex;
+  _dispatchEvent(count) {
+    throw new Error("Not implemented: _dispatchEvent");
   }
 
-  let totalDiff = 0;
+  _bindLink(element, params) {
+    throw new Error("Not implemented: _bindLink");
+  }
 
-  for (const [index, diff] of diffs) {
-    const currentIndex = index + totalDiff;
+  _normalizeTextContent(str) {
+    return (0, _ui_utils.removeNullCharacters)(str, true) || "\u2013";
+  }
 
-    if (currentIndex >= matchIndex) {
-      break;
-    }
+  _addToggleButton(div, hidden = false) {
+    const toggler = document.createElement("div");
+    toggler.className = "treeItemToggler";
 
-    if (currentIndex + diff > matchIndex) {
-      totalDiff += matchIndex - currentIndex;
-      break;
+    if (hidden) {
+      toggler.classList.add("treeItemsHidden");
     }
 
-    totalDiff += diff;
-  }
-
-  return matchIndex - totalDiff;
-}
-
-class PDFFindController {
-  constructor({
-    linkService,
-    eventBus
-  }) {
-    this._linkService = linkService;
-    this._eventBus = eventBus;
+    toggler.onclick = evt => {
+      evt.stopPropagation();
+      toggler.classList.toggle("treeItemsHidden");
 
-    this._reset();
+      if (evt.shiftKey) {
+        const shouldShowAll = !toggler.classList.contains("treeItemsHidden");
 
-    eventBus._on("find", this._onFind.bind(this));
+        this._toggleTreeItem(div, shouldShowAll);
+      }
+    };
 
-    eventBus._on("findbarclose", this._onFindBarClose.bind(this));
+    div.insertBefore(toggler, div.firstChild);
+  }
 
-    this.executeCommand = (cmd, state) => {
-      console.error("Deprecated method `PDFFindController.executeCommand` called, " + 'please dispatch a 
"find"-event using the EventBus instead.');
-      const eventState = Object.assign(Object.create(null), state, {
-        type: cmd.substring("find".length)
-      });
+  _toggleTreeItem(root, show = false) {
+    this._lastToggleIsShow = show;
 
-      this._onFind(eventState);
-    };
+    for (const toggler of root.querySelectorAll(".treeItemToggler")) {
+      toggler.classList.toggle("treeItemsHidden", !show);
+    }
   }
 
-  get highlightMatches() {
-    return this._highlightMatches;
+  _toggleAllTreeItems() {
+    this._toggleTreeItem(this.container, !this._lastToggleIsShow);
   }
 
-  get pageMatches() {
-    return this._pageMatches;
-  }
+  _finishRendering(fragment, count, hasAnyNesting = false) {
+    if (hasAnyNesting) {
+      this.container.classList.add("treeWithDeepNesting");
+      this._lastToggleIsShow = !fragment.querySelector(".treeItemsHidden");
+    }
 
-  get pageMatchesLength() {
-    return this._pageMatchesLength;
-  }
+    this.container.appendChild(fragment);
 
-  get selected() {
-    return this._selected;
+    this._dispatchEvent(count);
   }
 
-  get state() {
-    return this._state;
+  render(params) {
+    throw new Error("Not implemented: render");
   }
 
-  setDocument(pdfDocument) {
-    if (this._pdfDocument) {
-      this._reset();
-    }
+  _updateCurrentTreeItem(treeItem = null) {
+    if (this._currentTreeItem) {
+      this._currentTreeItem.classList.remove(TREEITEM_SELECTED_CLASS);
 
-    if (!pdfDocument) {
-      return;
+      this._currentTreeItem = null;
     }
 
-    this._pdfDocument = pdfDocument;
-
-    this._firstPageCapability.resolve();
+    if (treeItem) {
+      treeItem.classList.add(TREEITEM_SELECTED_CLASS);
+      this._currentTreeItem = treeItem;
+    }
   }
 
-  _onFind(state) {
-    if (!state) {
+  _scrollToCurrentTreeItem(treeItem) {
+    if (!treeItem) {
       return;
     }
 
-    const pdfDocument = this._pdfDocument;
-    const {
-      type
-    } = state;
+    let currentNode = treeItem.parentNode;
 
-    if (this._state === null || this._shouldDirtyMatch(state)) {
-      this._dirtyMatch = true;
+    while (currentNode && currentNode !== this.container) {
+      if (currentNode.classList.contains("treeItem")) {
+        const toggler = currentNode.firstElementChild;
+        toggler?.classList.remove("treeItemsHidden");
+      }
+
+      currentNode = currentNode.parentNode;
     }
 
-    this._state = state;
+    this._updateCurrentTreeItem(treeItem);
 
-    if (type !== "highlightallchange") {
-      this._updateUIState(FindState.PENDING);
-    }
+    this.container.scrollTo(treeItem.offsetLeft, treeItem.offsetTop + TREEITEM_OFFSET_TOP);
+  }
 
-    this._firstPageCapability.promise.then(() => {
-      if (!this._pdfDocument || pdfDocument && this._pdfDocument !== pdfDocument) {
-        return;
-      }
+}
 
-      this._extractText();
+exports.BaseTreeViewer = BaseTreeViewer;
 
-      const findbarClosed = !this._highlightMatches;
-      const pendingTimeout = !!this._findTimeout;
+/***/ }),
+/* 13 */
+/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
-      if (this._findTimeout) {
-        clearTimeout(this._findTimeout);
-        this._findTimeout = null;
-      }
 
-      if (!type) {
-        this._findTimeout = setTimeout(() => {
-          this._nextMatch();
 
-          this._findTimeout = null;
-        }, FIND_TIMEOUT);
-      } else if (this._dirtyMatch) {
-        this._nextMatch();
-      } else if (type === "again") {
-        this._nextMatch();
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.PDFDocumentProperties = void 0;
 
-        if (findbarClosed && this._state.highlightAll) {
-          this._updateAllPages();
-        }
-      } else if (type === "highlightallchange") {
-        if (pendingTimeout) {
-          this._nextMatch();
-        } else {
-          this._highlightMatches = true;
-        }
+var _pdfjsLib = __webpack_require__(5);
 
-        this._updateAllPages();
-      } else {
-        this._nextMatch();
-      }
-    });
-  }
+var _ui_utils = __webpack_require__(3);
 
-  scrollMatchIntoView({
-    element = null,
-    selectedLeft = 0,
-    pageIndex = -1,
-    matchIndex = -1
-  }) {
-    if (!this._scrollMatches || !element) {
-      return;
-    } else if (matchIndex === -1 || matchIndex !== this._selected.matchIdx) {
-      return;
-    } else if (pageIndex === -1 || pageIndex !== this._selected.pageIdx) {
-      return;
-    }
+const DEFAULT_FIELD_CONTENT = "-";
+const NON_METRIC_LOCALES = ["en-us", "en-lr", "my"];
+const US_PAGE_NAMES = {
+  "8.5x11": "Letter",
+  "8.5x14": "Legal"
+};
+const METRIC_PAGE_NAMES = {
+  "297x420": "A3",
+  "210x297": "A4"
+};
 
-    this._scrollMatches = false;
-    const spot = {
-      top: MATCH_SCROLL_OFFSET_TOP,
-      left: selectedLeft + MATCH_SCROLL_OFFSET_LEFT
-    };
-    (0, _ui_utils.scrollIntoView)(element, spot, true);
-  }
+function getPageName(size, isPortrait, pageNames) {
+  const width = isPortrait ? size.width : size.height;
+  const height = isPortrait ? size.height : size.width;
+  return pageNames[`${width}x${height}`];
+}
 
-  _reset() {
-    this._highlightMatches = false;
-    this._scrollMatches = false;
-    this._pdfDocument = null;
-    this._pageMatches = [];
-    this._pageMatchesLength = [];
-    this._state = null;
-    this._selected = {
-      pageIdx: -1,
-      matchIdx: -1
-    };
-    this._offset = {
-      pageIdx: null,
-      matchIdx: null,
-      wrapped: false
-    };
-    this._extractTextPromises = [];
-    this._pageContents = [];
-    this._pageDiffs = [];
-    this._matchesCountTotal = 0;
-    this._pagesToSearch = null;
-    this._pendingFindMatches = new Set();
-    this._resumePageIdx = null;
-    this._dirtyMatch = false;
-    clearTimeout(this._findTimeout);
-    this._findTimeout = null;
-    this._firstPageCapability = (0, _pdfjsLib.createPromiseCapability)();
-  }
-
-  get _query() {
-    if (this._state.query !== this._rawQuery) {
-      this._rawQuery = this._state.query;
-      [this._normalizedQuery] = normalize(this._state.query);
-    }
-
-    return this._normalizedQuery;
-  }
-
-  _shouldDirtyMatch(state) {
-    if (state.query !== this._state.query) {
-      return true;
-    }
+class PDFDocumentProperties {
+  constructor({
+    overlayName,
+    fields,
+    container,
+    closeButton
+  }, overlayManager, eventBus, l10n) {
+    this.overlayName = overlayName;
+    this.fields = fields;
+    this.container = container;
+    this.overlayManager = overlayManager;
+    this.l10n = l10n;
 
-    switch (state.type) {
-      case "again":
-        const pageNumber = this._selected.pageIdx + 1;
-        const linkService = this._linkService;
+    this._reset();
 
-        if (pageNumber >= 1 && pageNumber <= linkService.pagesCount && pageNumber !== linkService.page && 
!linkService.isPageVisible(pageNumber)) {
-          return true;
-        }
+    closeButton.addEventListener("click", this.close.bind(this));
+    this.overlayManager.register(this.overlayName, this.container, this.close.bind(this));
 
-        return false;
+    eventBus._on("pagechanging", evt => {
+      this._currentPageNumber = evt.pageNumber;
+    });
 
-      case "highlightallchange":
-        return false;
-    }
+    eventBus._on("rotationchanging", evt => {
+      this._pagesRotation = evt.pagesRotation;
+    });
 
-    return true;
+    this._isNonMetricLocale = true;
+    l10n.getLanguage().then(locale => {
+      this._isNonMetricLocale = NON_METRIC_LOCALES.includes(locale);
+    });
   }
 
-  _prepareMatches(matchesWithLength, matches, matchesLength) {
-    function isSubTerm(currentIndex) {
-      const currentElem = matchesWithLength[currentIndex];
-      const nextElem = matchesWithLength[currentIndex + 1];
-
-      if (currentIndex < matchesWithLength.length - 1 && currentElem.match === nextElem.match) {
-        currentElem.skipped = true;
-        return true;
-      }
-
-      for (let i = currentIndex - 1; i >= 0; i--) {
-        const prevElem = matchesWithLength[i];
-
-        if (prevElem.skipped) {
-          continue;
-        }
+  async open() {
+    const freezeFieldData = data => {
+      Object.defineProperty(this, "fieldData", {
+        value: Object.freeze(data),
+        writable: false,
+        enumerable: true,
+        configurable: true
+      });
+    };
 
-        if (prevElem.match + prevElem.matchLength < currentElem.match) {
-          break;
-        }
+    await Promise.all([this.overlayManager.open(this.overlayName), this._dataAvailableCapability.promise]);
+    const currentPageNumber = this._currentPageNumber;
+    const pagesRotation = this._pagesRotation;
 
-        if (prevElem.match + prevElem.matchLength >= currentElem.match + currentElem.matchLength) {
-          currentElem.skipped = true;
-          return true;
-        }
-      }
+    if (this.fieldData && currentPageNumber === this.fieldData._currentPageNumber && pagesRotation === 
this.fieldData._pagesRotation) {
+      this._updateUI();
 
-      return false;
+      return;
     }
 
-    matchesWithLength.sort(function (a, b) {
-      return a.match === b.match ? a.matchLength - b.matchLength : a.match - b.match;
+    const {
+      info,
+      contentDispositionFilename,
+      contentLength
+    } = await this.pdfDocument.getMetadata();
+    const [fileName, fileSize, creationDate, modificationDate, pageSize, isLinearized] = await 
Promise.all([contentDispositionFilename || (0, _pdfjsLib.getPdfFilenameFromUrl)(this.url), 
this._parseFileSize(contentLength), this._parseDate(info.CreationDate), this._parseDate(info.ModDate), 
this.pdfDocument.getPage(currentPageNumber).then(pdfPage => {
+      return this._parsePageSize((0, _ui_utils.getPageSizeInches)(pdfPage), pagesRotation);
+    }), this._parseLinearization(info.IsLinearized)]);
+    freezeFieldData({
+      fileName,
+      fileSize,
+      title: info.Title,
+      author: info.Author,
+      subject: info.Subject,
+      keywords: info.Keywords,
+      creationDate,
+      modificationDate,
+      creator: info.Creator,
+      producer: info.Producer,
+      version: info.PDFFormatVersion,
+      pageCount: this.pdfDocument.numPages,
+      pageSize,
+      linearized: isLinearized,
+      _currentPageNumber: currentPageNumber,
+      _pagesRotation: pagesRotation
     });
 
-    for (let i = 0, len = matchesWithLength.length; i < len; i++) {
-      if (isSubTerm(i)) {
-        continue;
-      }
-
-      matches.push(matchesWithLength[i].match);
-      matchesLength.push(matchesWithLength[i].matchLength);
-    }
-  }
+    this._updateUI();
 
-  _isEntireWord(content, startIdx, length) {
-    if (startIdx > 0) {
-      const first = content.charCodeAt(startIdx);
-      const limit = content.charCodeAt(startIdx - 1);
+    const {
+      length
+    } = await this.pdfDocument.getDownloadInfo();
 
-      if ((0, _pdf_find_utils.getCharacterType)(first) === (0, _pdf_find_utils.getCharacterType)(limit)) {
-        return false;
-      }
+    if (contentLength === length) {
+      return;
     }
 
-    const endIdx = startIdx + length - 1;
-
-    if (endIdx < content.length - 1) {
-      const last = content.charCodeAt(endIdx);
-      const limit = content.charCodeAt(endIdx + 1);
-
-      if ((0, _pdf_find_utils.getCharacterType)(last) === (0, _pdf_find_utils.getCharacterType)(limit)) {
-        return false;
-      }
-    }
+    const data = Object.assign(Object.create(null), this.fieldData);
+    data.fileSize = await this._parseFileSize(length);
+    freezeFieldData(data);
 
-    return true;
+    this._updateUI();
   }
 
-  _calculatePhraseMatch(query, pageIndex, pageContent, pageDiffs, entireWord) {
-    const matches = [],
-          matchesLength = [];
-    const queryLen = query.length;
-    let matchIdx = -queryLen;
-
-    while (true) {
-      matchIdx = pageContent.indexOf(query, matchIdx + queryLen);
-
-      if (matchIdx === -1) {
-        break;
-      }
-
-      if (entireWord && !this._isEntireWord(pageContent, matchIdx, queryLen)) {
-        continue;
-      }
-
-      const originalMatchIdx = getOriginalIndex(matchIdx, pageDiffs),
-            matchEnd = matchIdx + queryLen - 1,
-            originalQueryLen = getOriginalIndex(matchEnd, pageDiffs) - originalMatchIdx + 1;
-      matches.push(originalMatchIdx);
-      matchesLength.push(originalQueryLen);
-    }
-
-    this._pageMatches[pageIndex] = matches;
-    this._pageMatchesLength[pageIndex] = matchesLength;
+  close() {
+    this.overlayManager.close(this.overlayName);
   }
 
-  _calculateWordMatch(query, pageIndex, pageContent, pageDiffs, entireWord) {
-    const matchesWithLength = [];
-    const queryArray = query.match(/\S+/g);
-
-    for (let i = 0, len = queryArray.length; i < len; i++) {
-      const subquery = queryArray[i];
-      const subqueryLen = subquery.length;
-      let matchIdx = -subqueryLen;
-
-      while (true) {
-        matchIdx = pageContent.indexOf(subquery, matchIdx + subqueryLen);
-
-        if (matchIdx === -1) {
-          break;
-        }
+  setDocument(pdfDocument, url = null) {
+    if (this.pdfDocument) {
+      this._reset();
 
-        if (entireWord && !this._isEntireWord(pageContent, matchIdx, subqueryLen)) {
-          continue;
-        }
+      this._updateUI(true);
+    }
 
-        const originalMatchIdx = getOriginalIndex(matchIdx, pageDiffs),
-              matchEnd = matchIdx + subqueryLen - 1,
-              originalQueryLen = getOriginalIndex(matchEnd, pageDiffs) - originalMatchIdx + 1;
-        matchesWithLength.push({
-          match: originalMatchIdx,
-          matchLength: originalQueryLen,
-          skipped: false
-        });
-      }
+    if (!pdfDocument) {
+      return;
     }
 
-    this._pageMatchesLength[pageIndex] = [];
-    this._pageMatches[pageIndex] = [];
+    this.pdfDocument = pdfDocument;
+    this.url = url;
 
-    this._prepareMatches(matchesWithLength, this._pageMatches[pageIndex], 
this._pageMatchesLength[pageIndex]);
+    this._dataAvailableCapability.resolve();
   }
 
-  _calculateMatch(pageIndex) {
-    let pageContent = this._pageContents[pageIndex];
-    const pageDiffs = this._pageDiffs[pageIndex];
-    let query = this._query;
-    const {
-      caseSensitive,
-      entireWord,
-      phraseSearch
-    } = this._state;
+  _reset() {
+    this.pdfDocument = null;
+    this.url = null;
+    delete this.fieldData;
+    this._dataAvailableCapability = (0, _pdfjsLib.createPromiseCapability)();
+    this._currentPageNumber = 1;
+    this._pagesRotation = 0;
+  }
 
-    if (query.length === 0) {
-      return;
-    }
+  _updateUI(reset = false) {
+    if (reset || !this.fieldData) {
+      for (const id in this.fields) {
+        this.fields[id].textContent = DEFAULT_FIELD_CONTENT;
+      }
 
-    if (!caseSensitive) {
-      pageContent = pageContent.toLowerCase();
-      query = query.toLowerCase();
+      return;
     }
 
-    if (phraseSearch) {
-      this._calculatePhraseMatch(query, pageIndex, pageContent, pageDiffs, entireWord);
-    } else {
-      this._calculateWordMatch(query, pageIndex, pageContent, pageDiffs, entireWord);
+    if (this.overlayManager.active !== this.overlayName) {
+      return;
     }
 
-    if (this._state.highlightAll) {
-      this._updatePage(pageIndex);
+    for (const id in this.fields) {
+      const content = this.fieldData[id];
+      this.fields[id].textContent = content || content === 0 ? content : DEFAULT_FIELD_CONTENT;
     }
+  }
 
-    if (this._resumePageIdx === pageIndex) {
-      this._resumePageIdx = null;
+  async _parseFileSize(fileSize = 0) {
+    const kb = fileSize / 1024,
+          mb = kb / 1024;
 
-      this._nextPageMatch();
+    if (!kb) {
+      return undefined;
     }
 
-    const pageMatchesCount = this._pageMatches[pageIndex].length;
-
-    if (pageMatchesCount > 0) {
-      this._matchesCountTotal += pageMatchesCount;
-
-      this._updateUIResultsCount();
-    }
+    return this.l10n.get(`document_properties_${mb >= 1 ? "mb" : "kb"}`, {
+      size_mb: mb >= 1 && (+mb.toPrecision(3)).toLocaleString(),
+      size_kb: mb < 1 && (+kb.toPrecision(3)).toLocaleString(),
+      size_b: fileSize.toLocaleString()
+    });
   }
 
-  _extractText() {
-    if (this._extractTextPromises.length > 0) {
-      return;
+  async _parsePageSize(pageSizeInches, pagesRotation) {
+    if (!pageSizeInches) {
+      return undefined;
     }
 
-    let promise = Promise.resolve();
+    if (pagesRotation % 180 !== 0) {
+      pageSizeInches = {
+        width: pageSizeInches.height,
+        height: pageSizeInches.width
+      };
+    }
 
-    for (let i = 0, ii = this._linkService.pagesCount; i < ii; i++) {
-      const extractTextCapability = (0, _pdfjsLib.createPromiseCapability)();
-      this._extractTextPromises[i] = extractTextCapability.promise;
-      promise = promise.then(() => {
-        return this._pdfDocument.getPage(i + 1).then(pdfPage => {
-          return pdfPage.getTextContent({
-            normalizeWhitespace: true
-          });
-        }).then(textContent => {
-          const textItems = textContent.items;
-          const strBuf = [];
+    const isPortrait = (0, _ui_utils.isPortraitOrientation)(pageSizeInches);
+    let sizeInches = {
+      width: Math.round(pageSizeInches.width * 100) / 100,
+      height: Math.round(pageSizeInches.height * 100) / 100
+    };
+    let sizeMillimeters = {
+      width: Math.round(pageSizeInches.width * 25.4 * 10) / 10,
+      height: Math.round(pageSizeInches.height * 25.4 * 10) / 10
+    };
+    let rawName = getPageName(sizeInches, isPortrait, US_PAGE_NAMES) || getPageName(sizeMillimeters, 
isPortrait, METRIC_PAGE_NAMES);
 
-          for (let j = 0, jj = textItems.length; j < jj; j++) {
-            strBuf.push(textItems[j].str);
-          }
+    if (!rawName && !(Number.isInteger(sizeMillimeters.width) && Number.isInteger(sizeMillimeters.height))) {
+      const exactMillimeters = {
+        width: pageSizeInches.width * 25.4,
+        height: pageSizeInches.height * 25.4
+      };
+      const intMillimeters = {
+        width: Math.round(sizeMillimeters.width),
+        height: Math.round(sizeMillimeters.height)
+      };
 
-          [this._pageContents[i], this._pageDiffs[i]] = normalize(strBuf.join(""));
-          extractTextCapability.resolve(i);
-        }, reason => {
-          console.error(`Unable to get text content for page ${i + 1}`, reason);
-          this._pageContents[i] = "";
-          this._pageDiffs[i] = null;
-          extractTextCapability.resolve(i);
-        });
-      });
-    }
-  }
+      if (Math.abs(exactMillimeters.width - intMillimeters.width) < 0.1 && Math.abs(exactMillimeters.height 
- intMillimeters.height) < 0.1) {
+        rawName = getPageName(intMillimeters, isPortrait, METRIC_PAGE_NAMES);
 
-  _updatePage(index) {
-    if (this._scrollMatches && this._selected.pageIdx === index) {
-      this._linkService.page = index + 1;
+        if (rawName) {
+          sizeInches = {
+            width: Math.round(intMillimeters.width / 25.4 * 100) / 100,
+            height: Math.round(intMillimeters.height / 25.4 * 100) / 100
+          };
+          sizeMillimeters = intMillimeters;
+        }
+      }
     }
 
-    this._eventBus.dispatch("updatetextlayermatches", {
-      source: this,
-      pageIndex: index
-    });
-  }
-
-  _updateAllPages() {
-    this._eventBus.dispatch("updatetextlayermatches", {
-      source: this,
-      pageIndex: -1
+    const [{
+      width,
+      height
+    }, unit, name, orientation] = await Promise.all([this._isNonMetricLocale ? sizeInches : sizeMillimeters, 
this.l10n.get(`document_properties_page_size_unit_${this._isNonMetricLocale ? "inches" : "millimeters"}`), 
rawName && this.l10n.get(`document_properties_page_size_name_${rawName.toLowerCase()}`), 
this.l10n.get(`document_properties_page_size_orientation_${isPortrait ? "portrait" : "landscape"}`)]);
+    return this.l10n.get(`document_properties_page_size_dimension_${name ? "name_" : ""}string`, {
+      width: width.toLocaleString(),
+      height: height.toLocaleString(),
+      unit,
+      name,
+      orientation
     });
   }
 
-  _nextMatch() {
-    const previous = this._state.findPrevious;
-    const currentPageIndex = this._linkService.page - 1;
-    const numPages = this._linkService.pagesCount;
-    this._highlightMatches = true;
+  async _parseDate(inputDate) {
+    const dateObject = _pdfjsLib.PDFDateString.toDateObject(inputDate);
 
-    if (this._dirtyMatch) {
-      this._dirtyMatch = false;
-      this._selected.pageIdx = this._selected.matchIdx = -1;
-      this._offset.pageIdx = currentPageIndex;
-      this._offset.matchIdx = null;
-      this._offset.wrapped = false;
-      this._resumePageIdx = null;
-      this._pageMatches.length = 0;
-      this._pageMatchesLength.length = 0;
-      this._matchesCountTotal = 0;
+    if (!dateObject) {
+      return undefined;
+    }
 
-      this._updateAllPages();
+    return this.l10n.get("document_properties_date_string", {
+      date: dateObject.toLocaleDateString(),
+      time: dateObject.toLocaleTimeString()
+    });
+  }
 
-      for (let i = 0; i < numPages; i++) {
-        if (this._pendingFindMatches.has(i)) {
-          continue;
-        }
+  _parseLinearization(isLinearized) {
+    return this.l10n.get(`document_properties_linearized_${isLinearized ? "yes" : "no"}`);
+  }
 
-        this._pendingFindMatches.add(i);
+}
 
-        this._extractTextPromises[i].then(pageIdx => {
-          this._pendingFindMatches.delete(pageIdx);
+exports.PDFDocumentProperties = PDFDocumentProperties;
 
-          this._calculateMatch(pageIdx);
-        });
-      }
-    }
+/***/ }),
+/* 14 */
+/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
-    if (this._query === "") {
-      this._updateUIState(FindState.FOUND);
 
-      return;
-    }
 
-    if (this._resumePageIdx) {
-      return;
-    }
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.PDFFindBar = void 0;
 
-    const offset = this._offset;
-    this._pagesToSearch = numPages;
+var _pdf_find_controller = __webpack_require__(15);
 
-    if (offset.matchIdx !== null) {
-      const numPageMatches = this._pageMatches[offset.pageIdx].length;
+const MATCHES_COUNT_LIMIT = 1000;
 
-      if (!previous && offset.matchIdx + 1 < numPageMatches || previous && offset.matchIdx > 0) {
-        offset.matchIdx = previous ? offset.matchIdx - 1 : offset.matchIdx + 1;
+class PDFFindBar {
+  constructor(options, eventBus, l10n) {
+    this.opened = false;
+    this.bar = options.bar;
+    this.toggleButton = options.toggleButton;
+    this.findField = options.findField;
+    this.highlightAll = options.highlightAllCheckbox;
+    this.caseSensitive = options.caseSensitiveCheckbox;
+    this.matchDiacritics = options.matchDiacriticsCheckbox;
+    this.entireWord = options.entireWordCheckbox;
+    this.findMsg = options.findMsg;
+    this.findResultsCount = options.findResultsCount;
+    this.findPreviousButton = options.findPreviousButton;
+    this.findNextButton = options.findNextButton;
+    this.eventBus = eventBus;
+    this.l10n = l10n;
+    this.toggleButton.addEventListener("click", () => {
+      this.toggle();
+    });
+    this.findField.addEventListener("input", () => {
+      this.dispatchEvent("");
+    });
+    this.bar.addEventListener("keydown", e => {
+      switch (e.keyCode) {
+        case 13:
+          if (e.target === this.findField) {
+            this.dispatchEvent("again", e.shiftKey);
+          }
 
-        this._updateMatch(true);
+          break;
 
-        return;
+        case 27:
+          this.close();
+          break;
       }
+    });
+    this.findPreviousButton.addEventListener("click", () => {
+      this.dispatchEvent("again", true);
+    });
+    this.findNextButton.addEventListener("click", () => {
+      this.dispatchEvent("again", false);
+    });
+    this.highlightAll.addEventListener("click", () => {
+      this.dispatchEvent("highlightallchange");
+    });
+    this.caseSensitive.addEventListener("click", () => {
+      this.dispatchEvent("casesensitivitychange");
+    });
+    this.entireWord.addEventListener("click", () => {
+      this.dispatchEvent("entirewordchange");
+    });
+    this.matchDiacritics.addEventListener("click", () => {
+      this.dispatchEvent("diacriticmatchingchange");
+    });
 
-      this._advanceOffsetPage(previous);
-    }
-
-    this._nextPageMatch();
+    this.eventBus._on("resize", this._adjustWidth.bind(this));
   }
 
-  _matchesReady(matches) {
-    const offset = this._offset;
-    const numMatches = matches.length;
-    const previous = this._state.findPrevious;
-
-    if (numMatches) {
-      offset.matchIdx = previous ? numMatches - 1 : 0;
+  reset() {
+    this.updateUIState();
+  }
 
-      this._updateMatch(true);
+  dispatchEvent(type, findPrev = false) {
+    this.eventBus.dispatch("find", {
+      source: this,
+      type,
+      query: this.findField.value,
+      phraseSearch: true,
+      caseSensitive: this.caseSensitive.checked,
+      entireWord: this.entireWord.checked,
+      highlightAll: this.highlightAll.checked,
+      findPrevious: findPrev,
+      matchDiacritics: this.matchDiacritics.checked
+    });
+  }
 
-      return true;
-    }
+  updateUIState(state, previous, matchesCount) {
+    let findMsg = Promise.resolve("");
+    let status = "";
 
-    this._advanceOffsetPage(previous);
+    switch (state) {
+      case _pdf_find_controller.FindState.FOUND:
+        break;
 
-    if (offset.wrapped) {
-      offset.matchIdx = null;
+      case _pdf_find_controller.FindState.PENDING:
+        status = "pending";
+        break;
 
-      if (this._pagesToSearch < 0) {
-        this._updateMatch(false);
+      case _pdf_find_controller.FindState.NOT_FOUND:
+        findMsg = this.l10n.get("find_not_found");
+        status = "notFound";
+        break;
 
-        return true;
-      }
+      case _pdf_find_controller.FindState.WRAPPED:
+        findMsg = this.l10n.get(`find_reached_${previous ? "top" : "bottom"}`);
+        break;
     }
 
-    return false;
+    this.findField.setAttribute("data-status", status);
+    findMsg.then(msg => {
+      this.findMsg.textContent = msg;
+
+      this._adjustWidth();
+    });
+    this.updateResultsCount(matchesCount);
   }
 
-  _nextPageMatch() {
-    if (this._resumePageIdx !== null) {
-      console.error("There can only be one pending page.");
-    }
+  updateResultsCount({
+    current = 0,
+    total = 0
+  } = {}) {
+    const limit = MATCHES_COUNT_LIMIT;
+    let matchCountMsg = Promise.resolve("");
 
-    let matches = null;
+    if (total > 0) {
+      if (total > limit) {
+        let key = "find_match_count_limit";
+        matchCountMsg = this.l10n.get(key, {
+          limit
+        });
+      } else {
+        let key = "find_match_count";
+        matchCountMsg = this.l10n.get(key, {
+          current,
+          total
+        });
+      }
+    }
 
-    do {
-      const pageIdx = this._offset.pageIdx;
-      matches = this._pageMatches[pageIdx];
+    matchCountMsg.then(msg => {
+      this.findResultsCount.textContent = msg;
 
-      if (!matches) {
-        this._resumePageIdx = pageIdx;
-        break;
-      }
-    } while (!this._matchesReady(matches));
+      this._adjustWidth();
+    });
   }
 
-  _advanceOffsetPage(previous) {
-    const offset = this._offset;
-    const numPages = this._linkService.pagesCount;
-    offset.pageIdx = previous ? offset.pageIdx - 1 : offset.pageIdx + 1;
-    offset.matchIdx = null;
-    this._pagesToSearch--;
-
-    if (offset.pageIdx >= numPages || offset.pageIdx < 0) {
-      offset.pageIdx = previous ? numPages - 1 : 0;
-      offset.wrapped = true;
+  open() {
+    if (!this.opened) {
+      this.opened = true;
+      this.toggleButton.classList.add("toggled");
+      this.toggleButton.setAttribute("aria-expanded", "true");
+      this.bar.classList.remove("hidden");
     }
+
+    this.findField.select();
+    this.findField.focus();
+
+    this._adjustWidth();
   }
 
-  _updateMatch(found = false) {
-    let state = FindState.NOT_FOUND;
-    const wrapped = this._offset.wrapped;
-    this._offset.wrapped = false;
+  close() {
+    if (!this.opened) {
+      return;
+    }
 
-    if (found) {
-      const previousPage = this._selected.pageIdx;
-      this._selected.pageIdx = this._offset.pageIdx;
-      this._selected.matchIdx = this._offset.matchIdx;
-      state = wrapped ? FindState.WRAPPED : FindState.FOUND;
+    this.opened = false;
+    this.toggleButton.classList.remove("toggled");
+    this.toggleButton.setAttribute("aria-expanded", "false");
+    this.bar.classList.add("hidden");
+    this.eventBus.dispatch("findbarclose", {
+      source: this
+    });
+  }
 
-      if (previousPage !== -1 && previousPage !== this._selected.pageIdx) {
-        this._updatePage(previousPage);
-      }
+  toggle() {
+    if (this.opened) {
+      this.close();
+    } else {
+      this.open();
     }
+  }
 
-    this._updateUIState(state, this._state.findPrevious);
+  _adjustWidth() {
+    if (!this.opened) {
+      return;
+    }
 
-    if (this._selected.pageIdx !== -1) {
-      this._scrollMatches = true;
+    this.bar.classList.remove("wrapContainers");
+    const findbarHeight = this.bar.clientHeight;
+    const inputContainerHeight = this.bar.firstElementChild.clientHeight;
 
-      this._updatePage(this._selected.pageIdx);
+    if (findbarHeight > inputContainerHeight) {
+      this.bar.classList.add("wrapContainers");
     }
   }
 
-  _onFindBarClose(evt) {
-    const pdfDocument = this._pdfDocument;
+}
 
-    this._firstPageCapability.promise.then(() => {
-      if (!this._pdfDocument || pdfDocument && this._pdfDocument !== pdfDocument) {
-        return;
-      }
+exports.PDFFindBar = PDFFindBar;
 
-      if (this._findTimeout) {
-        clearTimeout(this._findTimeout);
-        this._findTimeout = null;
-      }
+/***/ }),
+/* 15 */
+/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
-      if (this._resumePageIdx) {
-        this._resumePageIdx = null;
-        this._dirtyMatch = true;
-      }
 
-      this._updateUIState(FindState.FOUND);
 
-      this._highlightMatches = false;
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.PDFFindController = exports.FindState = void 0;
 
-      this._updateAllPages();
-    });
+var _ui_utils = __webpack_require__(3);
+
+var _pdfjsLib = __webpack_require__(5);
+
+var _pdf_find_utils = __webpack_require__(16);
+
+const FindState = {
+  FOUND: 0,
+  NOT_FOUND: 1,
+  WRAPPED: 2,
+  PENDING: 3
+};
+exports.FindState = FindState;
+const FIND_TIMEOUT = 250;
+const MATCH_SCROLL_OFFSET_TOP = -50;
+const MATCH_SCROLL_OFFSET_LEFT = -400;
+const CHARACTERS_TO_NORMALIZE = {
+  "\u2010": "-",
+  "\u2018": "'",
+  "\u2019": "'",
+  "\u201A": "'",
+  "\u201B": "'",
+  "\u201C": '"',
+  "\u201D": '"',
+  "\u201E": '"',
+  "\u201F": '"',
+  "\u00BC": "1/4",
+  "\u00BD": "1/2",
+  "\u00BE": "3/4"
+};
+const DIACRITICS_EXCEPTION = new Set([0x3099, 0x309a, 0x094d, 0x09cd, 0x0a4d, 0x0acd, 0x0b4d, 0x0bcd, 
0x0c4d, 0x0ccd, 0x0d3b, 0x0d3c, 0x0d4d, 0x0dca, 0x0e3a, 0x0eba, 0x0f84, 0x1039, 0x103a, 0x1714, 0x1734, 
0x17d2, 0x1a60, 0x1b44, 0x1baa, 0x1bab, 0x1bf2, 0x1bf3, 0x2d7f, 0xa806, 0xa82c, 0xa8c4, 0xa953, 0xa9c0, 
0xaaf6, 0xabed, 0x0c56, 0x0f71, 0x0f72, 0x0f7a, 0x0f7b, 0x0f7c, 0x0f7d, 0x0f80, 0x0f74]);
+const DIACRITICS_EXCEPTION_STR = [...DIACRITICS_EXCEPTION.values()].map(x => 
String.fromCharCode(x)).join("");
+const DIACRITICS_REG_EXP = /\p{M}+/gu;
+const SPECIAL_CHARS_REG_EXP = /([.*+?^${}()|[\]\\])|(\p{P})|(\s+)|(\p{M})|(\p{L})/gu;
+const NOT_DIACRITIC_FROM_END_REG_EXP = /([^\p{M}])\p{M}*$/u;
+const NOT_DIACRITIC_FROM_START_REG_EXP = /^\p{M}*([^\p{M}])/u;
+let normalizationRegex = null;
+
+function normalize(text) {
+  if (!normalizationRegex) {
+    const replace = Object.keys(CHARACTERS_TO_NORMALIZE).join("");
+    normalizationRegex = new RegExp(`([${replace}])|(\\p{M}+(?:-\\n)?)|(\\S-\\n)|(\\n)`, "gum");
   }
 
-  _requestMatchesCount() {
-    const {
-      pageIdx,
-      matchIdx
-    } = this._selected;
-    let current = 0,
-        total = this._matchesCountTotal;
+  const rawDiacriticsPositions = [];
+  let m;
 
-    if (matchIdx !== -1) {
-      for (let i = 0; i < pageIdx; i++) {
-        current += this._pageMatches[i]?.length || 0;
+  while ((m = DIACRITICS_REG_EXP.exec(text)) !== null) {
+    rawDiacriticsPositions.push([m[0].length, m.index]);
+  }
+
+  let normalized = text.normalize("NFD");
+  const positions = [[0, 0]];
+  let k = 0;
+  let shift = 0;
+  let shiftOrigin = 0;
+  let eol = 0;
+  let hasDiacritics = false;
+  normalized = normalized.replace(normalizationRegex, (match, p1, p2, p3, p4, i) => {
+    i -= shiftOrigin;
+
+    if (p1) {
+      const replacement = CHARACTERS_TO_NORMALIZE[match];
+      const jj = replacement.length;
+
+      for (let j = 1; j < jj; j++) {
+        positions.push([i - shift + j, shift - j]);
       }
 
-      current += matchIdx + 1;
+      shift -= jj - 1;
+      return replacement;
     }
 
-    if (current < 1 || current > total) {
-      current = total = 0;
-    }
+    if (p2) {
+      const hasTrailingDashEOL = p2.endsWith("\n");
+      const len = hasTrailingDashEOL ? p2.length - 2 : p2.length;
+      hasDiacritics = true;
+      let jj = len;
 
-    return {
-      current,
-      total
-    };
-  }
+      if (i + eol === rawDiacriticsPositions[k]?.[1]) {
+        jj -= rawDiacriticsPositions[k][0];
+        ++k;
+      }
 
-  _updateUIResultsCount() {
-    this._eventBus.dispatch("updatefindmatchescount", {
-      source: this,
-      matchesCount: this._requestMatchesCount()
-    });
-  }
+      for (let j = 1; j < jj + 1; j++) {
+        positions.push([i - 1 - shift + j, shift - j]);
+      }
 
-  _updateUIState(state, previous = false) {
-    this._eventBus.dispatch("updatefindcontrolstate", {
-      source: this,
-      state,
-      previous,
-      matchesCount: this._requestMatchesCount(),
-      rawQuery: this._state?.query ?? null
-    });
-  }
+      shift -= jj;
+      shiftOrigin += jj;
 
+      if (hasTrailingDashEOL) {
+        i += len - 1;
+        positions.push([i - shift + 1, 1 + shift]);
+        shift += 1;
+        shiftOrigin += 1;
+        eol += 1;
+        return p2.slice(0, len);
+      }
+
+      return p2;
+    }
+
+    if (p3) {
+      positions.push([i - shift + 1, 1 + shift]);
+      shift += 1;
+      shiftOrigin += 1;
+      eol += 1;
+      return p3.charAt(0);
+    }
+
+    positions.push([i - shift + 1, shift - 1]);
+    shift -= 1;
+    shiftOrigin += 1;
+    eol += 1;
+    return " ";
+  });
+  positions.push([normalized.length, shift]);
+  return [normalized, positions, hasDiacritics];
 }
 
-exports.PDFFindController = PDFFindController;
+function getOriginalIndex(diffs, pos, len) {
+  if (!diffs) {
+    return [pos, len];
+  }
 
-/***/ }),
-/* 15 */
-/***/ ((__unused_webpack_module, exports) => {
+  const start = pos;
+  const end = pos + len;
+  let i = (0, _ui_utils.binarySearchFirstItem)(diffs, x => x[0] >= start);
 
+  if (diffs[i][0] > start) {
+    --i;
+  }
 
+  let j = (0, _ui_utils.binarySearchFirstItem)(diffs, x => x[0] >= end, i);
 
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.CharacterType = void 0;
-exports.getCharacterType = getCharacterType;
-const CharacterType = {
-  SPACE: 0,
-  ALPHA_LETTER: 1,
-  PUNCT: 2,
-  HAN_LETTER: 3,
-  KATAKANA_LETTER: 4,
-  HIRAGANA_LETTER: 5,
-  HALFWIDTH_KATAKANA_LETTER: 6,
-  THAI_LETTER: 7
-};
-exports.CharacterType = CharacterType;
+  if (diffs[j][0] > end) {
+    --j;
+  }
 
-function isAlphabeticalScript(charCode) {
-  return charCode < 0x2e80;
+  return [start + diffs[i][1], len + diffs[j][1] - diffs[i][1]];
 }
 
-function isAscii(charCode) {
-  return (charCode & 0xff80) === 0;
-}
+class PDFFindController {
+  constructor({
+    linkService,
+    eventBus
+  }) {
+    this._linkService = linkService;
+    this._eventBus = eventBus;
 
-function isAsciiAlpha(charCode) {
-  return charCode >= 0x61 && charCode <= 0x7a || charCode >= 0x41 && charCode <= 0x5a;
-}
+    this._reset();
 
-function isAsciiDigit(charCode) {
-  return charCode >= 0x30 && charCode <= 0x39;
-}
+    eventBus._on("find", this._onFind.bind(this));
 
-function isAsciiSpace(charCode) {
-  return charCode === 0x20 || charCode === 0x09 || charCode === 0x0d || charCode === 0x0a;
-}
+    eventBus._on("findbarclose", this._onFindBarClose.bind(this));
 
-function isHan(charCode) {
-  return charCode >= 0x3400 && charCode <= 0x9fff || charCode >= 0xf900 && charCode <= 0xfaff;
-}
+    this.executeCommand = (cmd, state) => {
+      console.error("Deprecated method `PDFFindController.executeCommand` called, " + 'please dispatch a 
"find"-event using the EventBus instead.');
+      const eventState = Object.assign(Object.create(null), state, {
+        type: cmd.substring("find".length)
+      });
 
-function isKatakana(charCode) {
-  return charCode >= 0x30a0 && charCode <= 0x30ff;
-}
+      this._onFind(eventState);
+    };
+  }
 
-function isHiragana(charCode) {
-  return charCode >= 0x3040 && charCode <= 0x309f;
-}
+  get highlightMatches() {
+    return this._highlightMatches;
+  }
 
-function isHalfwidthKatakana(charCode) {
-  return charCode >= 0xff60 && charCode <= 0xff9f;
-}
+  get pageMatches() {
+    return this._pageMatches;
+  }
 
-function isThai(charCode) {
-  return (charCode & 0xff80) === 0x0e00;
-}
+  get pageMatchesLength() {
+    return this._pageMatchesLength;
+  }
 
-function getCharacterType(charCode) {
-  if (isAlphabeticalScript(charCode)) {
-    if (isAscii(charCode)) {
-      if (isAsciiSpace(charCode)) {
-        return CharacterType.SPACE;
-      } else if (isAsciiAlpha(charCode) || isAsciiDigit(charCode) || charCode === 0x5f) {
-        return CharacterType.ALPHA_LETTER;
-      }
+  get selected() {
+    return this._selected;
+  }
 
-      return CharacterType.PUNCT;
-    } else if (isThai(charCode)) {
-      return CharacterType.THAI_LETTER;
-    } else if (charCode === 0xa0) {
-      return CharacterType.SPACE;
+  get state() {
+    return this._state;
+  }
+
+  setDocument(pdfDocument) {
+    if (this._pdfDocument) {
+      this._reset();
     }
 
-    return CharacterType.ALPHA_LETTER;
-  }
+    if (!pdfDocument) {
+      return;
+    }
 
-  if (isHan(charCode)) {
-    return CharacterType.HAN_LETTER;
-  } else if (isKatakana(charCode)) {
-    return CharacterType.KATAKANA_LETTER;
-  } else if (isHiragana(charCode)) {
-    return CharacterType.HIRAGANA_LETTER;
-  } else if (isHalfwidthKatakana(charCode)) {
-    return CharacterType.HALFWIDTH_KATAKANA_LETTER;
+    this._pdfDocument = pdfDocument;
+
+    this._firstPageCapability.resolve();
   }
 
-  return CharacterType.ALPHA_LETTER;
-}
+  _onFind(state) {
+    if (!state) {
+      return;
+    }
 
-/***/ }),
-/* 16 */
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
+    const pdfDocument = this._pdfDocument;
+    const {
+      type
+    } = state;
 
+    if (this._state === null || this._shouldDirtyMatch(state)) {
+      this._dirtyMatch = true;
+    }
 
+    this._state = state;
 
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.PDFHistory = void 0;
-exports.isDestArraysEqual = isDestArraysEqual;
-exports.isDestHashesEqual = isDestHashesEqual;
+    if (type !== "highlightallchange") {
+      this._updateUIState(FindState.PENDING);
+    }
 
-var _ui_utils = __webpack_require__(3);
+    this._firstPageCapability.promise.then(() => {
+      if (!this._pdfDocument || pdfDocument && this._pdfDocument !== pdfDocument) {
+        return;
+      }
 
-var _event_utils = __webpack_require__(4);
+      this._extractText();
 
-const HASH_CHANGE_TIMEOUT = 1000;
-const POSITION_UPDATED_THRESHOLD = 50;
-const UPDATE_VIEWAREA_TIMEOUT = 1000;
+      const findbarClosed = !this._highlightMatches;
+      const pendingTimeout = !!this._findTimeout;
 
-function getCurrentHash() {
-  return document.location.hash;
-}
+      if (this._findTimeout) {
+        clearTimeout(this._findTimeout);
+        this._findTimeout = null;
+      }
 
-class PDFHistory {
-  constructor({
-    linkService,
-    eventBus
-  }) {
-    this.linkService = linkService;
-    this.eventBus = eventBus;
-    this._initialized = false;
-    this._fingerprint = "";
-    this.reset();
-    this._boundEvents = null;
-    this._isViewerInPresentationMode = false;
+      if (!type) {
+        this._findTimeout = setTimeout(() => {
+          this._nextMatch();
 
-    this.eventBus._on("presentationmodechanged", evt => {
-      this._isViewerInPresentationMode = evt.state !== _ui_utils.PresentationModeState.NORMAL;
-    });
+          this._findTimeout = null;
+        }, FIND_TIMEOUT);
+      } else if (this._dirtyMatch) {
+        this._nextMatch();
+      } else if (type === "again") {
+        this._nextMatch();
 
-    this.eventBus._on("pagesinit", () => {
-      this._isPagesLoaded = false;
+        if (findbarClosed && this._state.highlightAll) {
+          this._updateAllPages();
+        }
+      } else if (type === "highlightallchange") {
+        if (pendingTimeout) {
+          this._nextMatch();
+        } else {
+          this._highlightMatches = true;
+        }
 
-      this.eventBus._on("pagesloaded", evt => {
-        this._isPagesLoaded = !!evt.pagesCount;
-      }, {
-        once: true
-      });
+        this._updateAllPages();
+      } else {
+        this._nextMatch();
+      }
     });
   }
 
-  initialize({
-    fingerprint,
-    resetHistory = false,
-    updateUrl = false
+  scrollMatchIntoView({
+    element = null,
+    selectedLeft = 0,
+    pageIndex = -1,
+    matchIndex = -1
   }) {
-    if (!fingerprint || typeof fingerprint !== "string") {
-      console.error('PDFHistory.initialize: The "fingerprint" must be a non-empty string.');
+    if (!this._scrollMatches || !element) {
+      return;
+    } else if (matchIndex === -1 || matchIndex !== this._selected.matchIdx) {
       return;
+    } else if (pageIndex === -1 || pageIndex !== this._selected.pageIdx) {
+      return;
+    }
+
+    this._scrollMatches = false;
+    const spot = {
+      top: MATCH_SCROLL_OFFSET_TOP,
+      left: selectedLeft + MATCH_SCROLL_OFFSET_LEFT
+    };
+    (0, _ui_utils.scrollIntoView)(element, spot, true);
+  }
+
+  _reset() {
+    this._highlightMatches = false;
+    this._scrollMatches = false;
+    this._pdfDocument = null;
+    this._pageMatches = [];
+    this._pageMatchesLength = [];
+    this._state = null;
+    this._selected = {
+      pageIdx: -1,
+      matchIdx: -1
+    };
+    this._offset = {
+      pageIdx: null,
+      matchIdx: null,
+      wrapped: false
+    };
+    this._extractTextPromises = [];
+    this._pageContents = [];
+    this._pageDiffs = [];
+    this._hasDiacritics = [];
+    this._matchesCountTotal = 0;
+    this._pagesToSearch = null;
+    this._pendingFindMatches = new Set();
+    this._resumePageIdx = null;
+    this._dirtyMatch = false;
+    clearTimeout(this._findTimeout);
+    this._findTimeout = null;
+    this._firstPageCapability = (0, _pdfjsLib.createPromiseCapability)();
+  }
+
+  get _query() {
+    if (this._state.query !== this._rawQuery) {
+      this._rawQuery = this._state.query;
+      [this._normalizedQuery] = normalize(this._state.query);
+    }
+
+    return this._normalizedQuery;
+  }
+
+  _shouldDirtyMatch(state) {
+    if (state.query !== this._state.query) {
+      return true;
+    }
+
+    switch (state.type) {
+      case "again":
+        const pageNumber = this._selected.pageIdx + 1;
+        const linkService = this._linkService;
+
+        if (pageNumber >= 1 && pageNumber <= linkService.pagesCount && pageNumber !== linkService.page && 
!linkService.isPageVisible(pageNumber)) {
+          return true;
+        }
+
+        return false;
+
+      case "highlightallchange":
+        return false;
     }
 
-    if (this._initialized) {
-      this.reset();
-    }
+    return true;
+  }
 
-    const reInitialized = this._fingerprint !== "" && this._fingerprint !== fingerprint;
-    this._fingerprint = fingerprint;
-    this._updateUrl = updateUrl === true;
-    this._initialized = true;
+  _isEntireWord(content, startIdx, length) {
+    let match = content.slice(0, startIdx).match(NOT_DIACRITIC_FROM_END_REG_EXP);
 
-    this._bindEvents();
+    if (match) {
+      const first = content.charCodeAt(startIdx);
+      const limit = match[1].charCodeAt(0);
 
-    const state = window.history.state;
-    this._popStateInProgress = false;
-    this._blockHashChange = 0;
-    this._currentHash = getCurrentHash();
-    this._numPositionUpdates = 0;
-    this._uid = this._maxUid = 0;
-    this._destination = null;
-    this._position = null;
+      if ((0, _pdf_find_utils.getCharacterType)(first) === (0, _pdf_find_utils.getCharacterType)(limit)) {
+        return false;
+      }
+    }
 
-    if (!this._isValidState(state, true) || resetHistory) {
-      const {
-        hash,
-        page,
-        rotation
-      } = this._parseCurrentHash(true);
+    match = content.slice(startIdx + length).match(NOT_DIACRITIC_FROM_START_REG_EXP);
 
-      if (!hash || reInitialized || resetHistory) {
-        this._pushOrReplaceState(null, true);
+    if (match) {
+      const last = content.charCodeAt(startIdx + length - 1);
+      const limit = match[1].charCodeAt(0);
 
-        return;
+      if ((0, _pdf_find_utils.getCharacterType)(last) === (0, _pdf_find_utils.getCharacterType)(limit)) {
+        return false;
       }
+    }
 
-      this._pushOrReplaceState({
-        hash,
-        page,
-        rotation
-      }, true);
+    return true;
+  }
 
-      return;
-    }
+  _calculateRegExpMatch(query, entireWord, pageIndex, pageContent) {
+    const matches = [],
+          matchesLength = [];
+    const diffs = this._pageDiffs[pageIndex];
+    let match;
 
-    const destination = state.destination;
+    while ((match = query.exec(pageContent)) !== null) {
+      if (entireWord && !this._isEntireWord(pageContent, match.index, match[0].length)) {
+        continue;
+      }
 
-    this._updateInternalState(destination, state.uid, true);
+      const [matchPos, matchLen] = getOriginalIndex(diffs, match.index, match[0].length);
 
-    if (destination.rotation !== undefined) {
-      this._initialRotation = destination.rotation;
+      if (matchLen) {
+        matches.push(matchPos);
+        matchesLength.push(matchLen);
+      }
     }
 
-    if (destination.dest) {
-      this._initialBookmark = JSON.stringify(destination.dest);
-      this._destination.page = null;
-    } else if (destination.hash) {
-      this._initialBookmark = destination.hash;
-    } else if (destination.page) {
-      this._initialBookmark = `page=${destination.page}`;
-    }
+    this._pageMatches[pageIndex] = matches;
+    this._pageMatchesLength[pageIndex] = matchesLength;
   }
 
-  reset() {
-    if (this._initialized) {
-      this._pageHide();
+  _convertToRegExpString(query, hasDiacritics) {
+    const {
+      matchDiacritics
+    } = this._state;
+    let isUnicode = false;
+    query = query.replace(SPECIAL_CHARS_REG_EXP, (match, p1, p2, p3, p4, p5) => {
+      if (p1) {
+        return `[ ]*\\${p1}[ ]*`;
+      }
 
-      this._initialized = false;
+      if (p2) {
+        return `[ ]*${p2}[ ]*`;
+      }
 
-      this._unbindEvents();
-    }
+      if (p3) {
+        return "[ ]+";
+      }
 
-    if (this._updateViewareaTimeout) {
-      clearTimeout(this._updateViewareaTimeout);
-      this._updateViewareaTimeout = null;
-    }
+      if (matchDiacritics) {
+        return p4 || p5;
+      }
 
-    this._initialBookmark = null;
-    this._initialRotation = null;
-  }
+      if (p4) {
+        return DIACRITICS_EXCEPTION.has(p4.charCodeAt(0)) ? p4 : "";
+      }
 
-  push({
-    namedDest = null,
-    explicitDest,
-    pageNumber
-  }) {
-    if (!this._initialized) {
-      return;
+      if (hasDiacritics) {
+        isUnicode = true;
+        return `${p5}\\p{M}*`;
+      }
+
+      return p5;
+    });
+    const trailingSpaces = "[ ]*";
+
+    if (query.endsWith(trailingSpaces)) {
+      query = query.slice(0, query.length - trailingSpaces.length);
     }
 
-    if (namedDest && typeof namedDest !== "string") {
-      console.error("PDFHistory.push: " + `"${namedDest}" is not a valid namedDest parameter.`);
-      return;
-    } else if (!Array.isArray(explicitDest)) {
-      console.error("PDFHistory.push: " + `"${explicitDest}" is not a valid explicitDest parameter.`);
-      return;
-    } else if (!this._isValidPage(pageNumber)) {
-      if (pageNumber !== null || this._destination) {
-        console.error("PDFHistory.push: " + `"${pageNumber}" is not a valid pageNumber parameter.`);
-        return;
+    if (matchDiacritics) {
+      if (hasDiacritics) {
+        isUnicode = true;
+        query = `${query}(?=[${DIACRITICS_EXCEPTION_STR}]|[^\\p{M}]|$)`;
       }
     }
 
-    const hash = namedDest || JSON.stringify(explicitDest);
+    return [isUnicode, query];
+  }
 
-    if (!hash) {
+  _calculateMatch(pageIndex) {
+    let query = this._query;
+
+    if (query.length === 0) {
       return;
     }
 
-    let forceReplace = false;
+    const {
+      caseSensitive,
+      entireWord,
+      phraseSearch
+    } = this._state;
+    const pageContent = this._pageContents[pageIndex];
+    const hasDiacritics = this._hasDiacritics[pageIndex];
+    let isUnicode = false;
 
-    if (this._destination && (isDestHashesEqual(this._destination.hash, hash) || 
isDestArraysEqual(this._destination.dest, explicitDest))) {
-      if (this._destination.page) {
-        return;
+    if (phraseSearch) {
+      [isUnicode, query] = this._convertToRegExpString(query, hasDiacritics);
+    } else {
+      const match = query.match(/\S+/g);
+
+      if (match) {
+        query = match.sort().reverse().map(q => {
+          const [isUnicodePart, queryPart] = this._convertToRegExpString(q, hasDiacritics);
+
+          isUnicode ||= isUnicodePart;
+          return `(${queryPart})`;
+        }).join("|");
       }
+    }
 
-      forceReplace = true;
+    const flags = `g${isUnicode ? "u" : ""}${caseSensitive ? "" : "i"}`;
+    query = new RegExp(query, flags);
+
+    this._calculateRegExpMatch(query, entireWord, pageIndex, pageContent);
+
+    if (this._state.highlightAll) {
+      this._updatePage(pageIndex);
     }
 
-    if (this._popStateInProgress && !forceReplace) {
-      return;
+    if (this._resumePageIdx === pageIndex) {
+      this._resumePageIdx = null;
+
+      this._nextPageMatch();
     }
 
-    this._pushOrReplaceState({
-      dest: explicitDest,
-      hash,
-      page: pageNumber,
-      rotation: this.linkService.rotation
-    }, forceReplace);
+    const pageMatchesCount = this._pageMatches[pageIndex].length;
 
-    if (!this._popStateInProgress) {
-      this._popStateInProgress = true;
-      Promise.resolve().then(() => {
-        this._popStateInProgress = false;
-      });
+    if (pageMatchesCount > 0) {
+      this._matchesCountTotal += pageMatchesCount;
+
+      this._updateUIResultsCount();
     }
   }
 
-  pushPage(pageNumber) {
-    if (!this._initialized) {
+  _extractText() {
+    if (this._extractTextPromises.length > 0) {
       return;
     }
 
-    if (!this._isValidPage(pageNumber)) {
-      console.error(`PDFHistory.pushPage: "${pageNumber}" is not a valid page number.`);
-      return;
-    }
+    let promise = Promise.resolve();
 
-    if (this._destination?.page === pageNumber) {
-      return;
-    }
+    for (let i = 0, ii = this._linkService.pagesCount; i < ii; i++) {
+      const extractTextCapability = (0, _pdfjsLib.createPromiseCapability)();
+      this._extractTextPromises[i] = extractTextCapability.promise;
+      promise = promise.then(() => {
+        return this._pdfDocument.getPage(i + 1).then(pdfPage => {
+          return pdfPage.getTextContent();
+        }).then(textContent => {
+          const textItems = textContent.items;
+          const strBuf = [];
 
-    if (this._popStateInProgress) {
-      return;
-    }
+          for (let j = 0, jj = textItems.length; j < jj; j++) {
+            strBuf.push(textItems[j].str);
 
-    this._pushOrReplaceState({
-      dest: null,
-      hash: `page=${pageNumber}`,
-      page: pageNumber,
-      rotation: this.linkService.rotation
-    });
+            if (textItems[j].hasEOL) {
+              strBuf.push("\n");
+            }
+          }
 
-    if (!this._popStateInProgress) {
-      this._popStateInProgress = true;
-      Promise.resolve().then(() => {
-        this._popStateInProgress = false;
+          [this._pageContents[i], this._pageDiffs[i], this._hasDiacritics[i]] = normalize(strBuf.join(""));
+          extractTextCapability.resolve(i);
+        }, reason => {
+          console.error(`Unable to get text content for page ${i + 1}`, reason);
+          this._pageContents[i] = "";
+          this._pageDiffs[i] = null;
+          this._hasDiacritics[i] = false;
+          extractTextCapability.resolve(i);
+        });
       });
     }
   }
 
-  pushCurrentPosition() {
-    if (!this._initialized || this._popStateInProgress) {
-      return;
+  _updatePage(index) {
+    if (this._scrollMatches && this._selected.pageIdx === index) {
+      this._linkService.page = index + 1;
     }
 
-    this._tryPushCurrentPosition();
+    this._eventBus.dispatch("updatetextlayermatches", {
+      source: this,
+      pageIndex: index
+    });
   }
 
-  back() {
-    if (!this._initialized || this._popStateInProgress) {
-      return;
+  _updateAllPages() {
+    this._eventBus.dispatch("updatetextlayermatches", {
+      source: this,
+      pageIndex: -1
+    });
+  }
+
+  _nextMatch() {
+    const previous = this._state.findPrevious;
+    const currentPageIndex = this._linkService.page - 1;
+    const numPages = this._linkService.pagesCount;
+    this._highlightMatches = true;
+
+    if (this._dirtyMatch) {
+      this._dirtyMatch = false;
+      this._selected.pageIdx = this._selected.matchIdx = -1;
+      this._offset.pageIdx = currentPageIndex;
+      this._offset.matchIdx = null;
+      this._offset.wrapped = false;
+      this._resumePageIdx = null;
+      this._pageMatches.length = 0;
+      this._pageMatchesLength.length = 0;
+      this._matchesCountTotal = 0;
+
+      this._updateAllPages();
+
+      for (let i = 0; i < numPages; i++) {
+        if (this._pendingFindMatches.has(i)) {
+          continue;
+        }
+
+        this._pendingFindMatches.add(i);
+
+        this._extractTextPromises[i].then(pageIdx => {
+          this._pendingFindMatches.delete(pageIdx);
+
+          this._calculateMatch(pageIdx);
+        });
+      }
     }
 
-    const state = window.history.state;
+    if (this._query === "") {
+      this._updateUIState(FindState.FOUND);
 
-    if (this._isValidState(state) && state.uid > 0) {
-      window.history.back();
+      return;
     }
-  }
 
-  forward() {
-    if (!this._initialized || this._popStateInProgress) {
+    if (this._resumePageIdx) {
       return;
     }
 
-    const state = window.history.state;
+    const offset = this._offset;
+    this._pagesToSearch = numPages;
 
-    if (this._isValidState(state) && state.uid < this._maxUid) {
-      window.history.forward();
+    if (offset.matchIdx !== null) {
+      const numPageMatches = this._pageMatches[offset.pageIdx].length;
+
+      if (!previous && offset.matchIdx + 1 < numPageMatches || previous && offset.matchIdx > 0) {
+        offset.matchIdx = previous ? offset.matchIdx - 1 : offset.matchIdx + 1;
+
+        this._updateMatch(true);
+
+        return;
+      }
+
+      this._advanceOffsetPage(previous);
     }
-  }
 
-  get popStateInProgress() {
-    return this._initialized && (this._popStateInProgress || this._blockHashChange > 0);
+    this._nextPageMatch();
   }
 
-  get initialBookmark() {
-    return this._initialized ? this._initialBookmark : null;
-  }
+  _matchesReady(matches) {
+    const offset = this._offset;
+    const numMatches = matches.length;
+    const previous = this._state.findPrevious;
 
-  get initialRotation() {
-    return this._initialized ? this._initialRotation : null;
-  }
+    if (numMatches) {
+      offset.matchIdx = previous ? numMatches - 1 : 0;
 
-  _pushOrReplaceState(destination, forceReplace = false) {
-    const shouldReplace = forceReplace || !this._destination;
-    const newState = {
-      fingerprint: this._fingerprint,
-      uid: shouldReplace ? this._uid : this._uid + 1,
-      destination
-    };
+      this._updateMatch(true);
 
-    this._updateInternalState(destination, newState.uid);
+      return true;
+    }
 
-    let newUrl;
+    this._advanceOffsetPage(previous);
 
-    if (this._updateUrl && destination?.hash) {
-      const baseUrl = document.location.href.split("#")[0];
+    if (offset.wrapped) {
+      offset.matchIdx = null;
 
-      if (!baseUrl.startsWith("file://")) {
-        newUrl = `${baseUrl}#${destination.hash}`;
+      if (this._pagesToSearch < 0) {
+        this._updateMatch(false);
+
+        return true;
       }
     }
 
-    // FIXME: This currently breaks Epiphany due to rewriting history with baseUrl
-    return;
-    if (shouldReplace) {
-      window.history.replaceState(newState, "", newUrl);
-    } else {
-      window.history.pushState(newState, "", newUrl);
-    }
+    return false;
   }
 
-  _tryPushCurrentPosition(temporary = false) {
-    if (!this._position) {
-      return;
+  _nextPageMatch() {
+    if (this._resumePageIdx !== null) {
+      console.error("There can only be one pending page.");
     }
 
-    let position = this._position;
+    let matches = null;
 
-    if (temporary) {
-      position = Object.assign(Object.create(null), this._position);
-      position.temporary = true;
-    }
+    do {
+      const pageIdx = this._offset.pageIdx;
+      matches = this._pageMatches[pageIdx];
 
-    if (!this._destination) {
-      this._pushOrReplaceState(position);
+      if (!matches) {
+        this._resumePageIdx = pageIdx;
+        break;
+      }
+    } while (!this._matchesReady(matches));
+  }
 
-      return;
+  _advanceOffsetPage(previous) {
+    const offset = this._offset;
+    const numPages = this._linkService.pagesCount;
+    offset.pageIdx = previous ? offset.pageIdx - 1 : offset.pageIdx + 1;
+    offset.matchIdx = null;
+    this._pagesToSearch--;
+
+    if (offset.pageIdx >= numPages || offset.pageIdx < 0) {
+      offset.pageIdx = previous ? numPages - 1 : 0;
+      offset.wrapped = true;
     }
+  }
 
-    if (this._destination.temporary) {
-      this._pushOrReplaceState(position, true);
+  _updateMatch(found = false) {
+    let state = FindState.NOT_FOUND;
+    const wrapped = this._offset.wrapped;
+    this._offset.wrapped = false;
 
-      return;
-    }
+    if (found) {
+      const previousPage = this._selected.pageIdx;
+      this._selected.pageIdx = this._offset.pageIdx;
+      this._selected.matchIdx = this._offset.matchIdx;
+      state = wrapped ? FindState.WRAPPED : FindState.FOUND;
 
-    if (this._destination.hash === position.hash) {
-      return;
+      if (previousPage !== -1 && previousPage !== this._selected.pageIdx) {
+        this._updatePage(previousPage);
+      }
     }
 
-    if (!this._destination.page && (POSITION_UPDATED_THRESHOLD <= 0 || this._numPositionUpdates <= 
POSITION_UPDATED_THRESHOLD)) {
-      return;
+    this._updateUIState(state, this._state.findPrevious);
+
+    if (this._selected.pageIdx !== -1) {
+      this._scrollMatches = true;
+
+      this._updatePage(this._selected.pageIdx);
     }
+  }
 
-    let forceReplace = false;
+  _onFindBarClose(evt) {
+    const pdfDocument = this._pdfDocument;
 
-    if (this._destination.page >= position.first && this._destination.page <= position.page) {
-      if (this._destination.dest !== undefined || !this._destination.first) {
+    this._firstPageCapability.promise.then(() => {
+      if (!this._pdfDocument || pdfDocument && this._pdfDocument !== pdfDocument) {
         return;
       }
 
-      forceReplace = true;
-    }
+      if (this._findTimeout) {
+        clearTimeout(this._findTimeout);
+        this._findTimeout = null;
+      }
 
-    this._pushOrReplaceState(position, forceReplace);
-  }
+      if (this._resumePageIdx) {
+        this._resumePageIdx = null;
+        this._dirtyMatch = true;
+      }
 
-  _isValidPage(val) {
-    return Number.isInteger(val) && val > 0 && val <= this.linkService.pagesCount;
-  }
+      this._updateUIState(FindState.FOUND);
 
-  _isValidState(state, checkReload = false) {
-    if (!state) {
-      return false;
-    }
+      this._highlightMatches = false;
 
-    if (state.fingerprint !== this._fingerprint) {
-      if (checkReload) {
-        if (typeof state.fingerprint !== "string" || state.fingerprint.length !== this._fingerprint.length) {
-          return false;
-        }
+      this._updateAllPages();
+    });
+  }
 
-        const [perfEntry] = performance.getEntriesByType("navigation");
+  _requestMatchesCount() {
+    const {
+      pageIdx,
+      matchIdx
+    } = this._selected;
+    let current = 0,
+        total = this._matchesCountTotal;
 
-        if (perfEntry?.type !== "reload") {
-          return false;
-        }
-      } else {
-        return false;
+    if (matchIdx !== -1) {
+      for (let i = 0; i < pageIdx; i++) {
+        current += this._pageMatches[i]?.length || 0;
       }
-    }
 
-    if (!Number.isInteger(state.uid) || state.uid < 0) {
-      return false;
+      current += matchIdx + 1;
     }
 
-    if (state.destination === null || typeof state.destination !== "object") {
-      return false;
+    if (current < 1 || current > total) {
+      current = total = 0;
     }
 
-    return true;
+    return {
+      current,
+      total
+    };
   }
 
-  _updateInternalState(destination, uid, removeTemporary = false) {
-    if (this._updateViewareaTimeout) {
-      clearTimeout(this._updateViewareaTimeout);
-      this._updateViewareaTimeout = null;
-    }
+  _updateUIResultsCount() {
+    this._eventBus.dispatch("updatefindmatchescount", {
+      source: this,
+      matchesCount: this._requestMatchesCount()
+    });
+  }
+
+  _updateUIState(state, previous = false) {
+    this._eventBus.dispatch("updatefindcontrolstate", {
+      source: this,
+      state,
+      previous,
+      matchesCount: this._requestMatchesCount(),
+      rawQuery: this._state?.query ?? null
+    });
+  }
+
+}
+
+exports.PDFFindController = PDFFindController;
+
+/***/ }),
+/* 16 */
+/***/ ((__unused_webpack_module, exports) => {
+
+
+
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.CharacterType = void 0;
+exports.getCharacterType = getCharacterType;
+const CharacterType = {
+  SPACE: 0,
+  ALPHA_LETTER: 1,
+  PUNCT: 2,
+  HAN_LETTER: 3,
+  KATAKANA_LETTER: 4,
+  HIRAGANA_LETTER: 5,
+  HALFWIDTH_KATAKANA_LETTER: 6,
+  THAI_LETTER: 7
+};
+exports.CharacterType = CharacterType;
+
+function isAlphabeticalScript(charCode) {
+  return charCode < 0x2e80;
+}
+
+function isAscii(charCode) {
+  return (charCode & 0xff80) === 0;
+}
+
+function isAsciiAlpha(charCode) {
+  return charCode >= 0x61 && charCode <= 0x7a || charCode >= 0x41 && charCode <= 0x5a;
+}
 
-    if (removeTemporary && destination?.temporary) {
-      delete destination.temporary;
-    }
+function isAsciiDigit(charCode) {
+  return charCode >= 0x30 && charCode <= 0x39;
+}
 
-    this._destination = destination;
-    this._uid = uid;
-    this._maxUid = Math.max(this._maxUid, uid);
-    this._numPositionUpdates = 0;
-  }
+function isAsciiSpace(charCode) {
+  return charCode === 0x20 || charCode === 0x09 || charCode === 0x0d || charCode === 0x0a;
+}
 
-  _parseCurrentHash(checkNameddest = false) {
-    const hash = unescape(getCurrentHash()).substring(1);
-    const params = (0, _ui_utils.parseQueryString)(hash);
-    const nameddest = params.get("nameddest") || "";
-    let page = params.get("page") | 0;
+function isHan(charCode) {
+  return charCode >= 0x3400 && charCode <= 0x9fff || charCode >= 0xf900 && charCode <= 0xfaff;
+}
 
-    if (!this._isValidPage(page) || checkNameddest && nameddest.length > 0) {
-      page = null;
-    }
+function isKatakana(charCode) {
+  return charCode >= 0x30a0 && charCode <= 0x30ff;
+}
 
-    return {
-      hash,
-      page,
-      rotation: this.linkService.rotation
-    };
-  }
+function isHiragana(charCode) {
+  return charCode >= 0x3040 && charCode <= 0x309f;
+}
 
-  _updateViewarea({
-    location
-  }) {
-    if (this._updateViewareaTimeout) {
-      clearTimeout(this._updateViewareaTimeout);
-      this._updateViewareaTimeout = null;
-    }
+function isHalfwidthKatakana(charCode) {
+  return charCode >= 0xff60 && charCode <= 0xff9f;
+}
 
-    this._position = {
-      hash: this._isViewerInPresentationMode ? `page=${location.pageNumber}` : 
location.pdfOpenParams.substring(1),
-      page: this.linkService.page,
-      first: location.pageNumber,
-      rotation: location.rotation
-    };
+function isThai(charCode) {
+  return (charCode & 0xff80) === 0x0e00;
+}
 
-    if (this._popStateInProgress) {
-      return;
-    }
+function getCharacterType(charCode) {
+  if (isAlphabeticalScript(charCode)) {
+    if (isAscii(charCode)) {
+      if (isAsciiSpace(charCode)) {
+        return CharacterType.SPACE;
+      } else if (isAsciiAlpha(charCode) || isAsciiDigit(charCode) || charCode === 0x5f) {
+        return CharacterType.ALPHA_LETTER;
+      }
 
-    if (POSITION_UPDATED_THRESHOLD > 0 && this._isPagesLoaded && this._destination && 
!this._destination.page) {
-      this._numPositionUpdates++;
+      return CharacterType.PUNCT;
+    } else if (isThai(charCode)) {
+      return CharacterType.THAI_LETTER;
+    } else if (charCode === 0xa0) {
+      return CharacterType.SPACE;
     }
 
-    if (UPDATE_VIEWAREA_TIMEOUT > 0) {
-      this._updateViewareaTimeout = setTimeout(() => {
-        if (!this._popStateInProgress) {
-          this._tryPushCurrentPosition(true);
-        }
+    return CharacterType.ALPHA_LETTER;
+  }
 
-        this._updateViewareaTimeout = null;
-      }, UPDATE_VIEWAREA_TIMEOUT);
-    }
+  if (isHan(charCode)) {
+    return CharacterType.HAN_LETTER;
+  } else if (isKatakana(charCode)) {
+    return CharacterType.KATAKANA_LETTER;
+  } else if (isHiragana(charCode)) {
+    return CharacterType.HIRAGANA_LETTER;
+  } else if (isHalfwidthKatakana(charCode)) {
+    return CharacterType.HALFWIDTH_KATAKANA_LETTER;
   }
 
-  _popState({
-    state
-  }) {
-    const newHash = getCurrentHash(),
-          hashChanged = this._currentHash !== newHash;
-    this._currentHash = newHash;
+  return CharacterType.ALPHA_LETTER;
+}
 
-    if (!state) {
-      this._uid++;
+/***/ }),
+/* 17 */
+/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
-      const {
-        hash,
-        page,
-        rotation
-      } = this._parseCurrentHash();
 
-      this._pushOrReplaceState({
-        hash,
-        page,
-        rotation
-      }, true);
 
-      return;
-    }
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.PDFHistory = void 0;
+exports.isDestArraysEqual = isDestArraysEqual;
+exports.isDestHashesEqual = isDestHashesEqual;
 
-    if (!this._isValidState(state)) {
-      return;
-    }
+var _ui_utils = __webpack_require__(3);
 
-    this._popStateInProgress = true;
+var _event_utils = __webpack_require__(4);
 
-    if (hashChanged) {
-      this._blockHashChange++;
-      (0, _event_utils.waitOnEventOrTimeout)({
-        target: window,
-        name: "hashchange",
-        delay: HASH_CHANGE_TIMEOUT
-      }).then(() => {
-        this._blockHashChange--;
-      });
-    }
+const HASH_CHANGE_TIMEOUT = 1000;
+const POSITION_UPDATED_THRESHOLD = 50;
+const UPDATE_VIEWAREA_TIMEOUT = 1000;
 
-    const destination = state.destination;
+function getCurrentHash() {
+  return document.location.hash;
+}
 
-    this._updateInternalState(destination, state.uid, true);
+class PDFHistory {
+  constructor({
+    linkService,
+    eventBus
+  }) {
+    this.linkService = linkService;
+    this.eventBus = eventBus;
+    this._initialized = false;
+    this._fingerprint = "";
+    this.reset();
+    this._boundEvents = null;
+    this._isViewerInPresentationMode = false;
 
-    if ((0, _ui_utils.isValidRotation)(destination.rotation)) {
-      this.linkService.rotation = destination.rotation;
-    }
+    this.eventBus._on("presentationmodechanged", evt => {
+      this._isViewerInPresentationMode = evt.state !== _ui_utils.PresentationModeState.NORMAL;
+    });
 
-    if (destination.dest) {
-      this.linkService.goToDestination(destination.dest);
-    } else if (destination.hash) {
-      this.linkService.setHash(destination.hash);
-    } else if (destination.page) {
-      this.linkService.page = destination.page;
-    }
+    this.eventBus._on("pagesinit", () => {
+      this._isPagesLoaded = false;
 
-    Promise.resolve().then(() => {
-      this._popStateInProgress = false;
+      this.eventBus._on("pagesloaded", evt => {
+        this._isPagesLoaded = !!evt.pagesCount;
+      }, {
+        once: true
+      });
     });
   }
 
-  _pageHide() {
-    if (!this._destination || this._destination.temporary) {
-      this._tryPushCurrentPosition();
-    }
-  }
-
-  _bindEvents() {
-    if (this._boundEvents) {
+  initialize({
+    fingerprint,
+    resetHistory = false,
+    updateUrl = false
+  }) {
+    if (!fingerprint || typeof fingerprint !== "string") {
+      console.error('PDFHistory.initialize: The "fingerprint" must be a non-empty string.');
       return;
     }
 
-    this._boundEvents = {
-      updateViewarea: this._updateViewarea.bind(this),
-      popState: this._popState.bind(this),
-      pageHide: this._pageHide.bind(this)
-    };
-
-    this.eventBus._on("updateviewarea", this._boundEvents.updateViewarea);
-
-    window.addEventListener("popstate", this._boundEvents.popState);
-    window.addEventListener("pagehide", this._boundEvents.pageHide);
-  }
-
-  _unbindEvents() {
-    if (!this._boundEvents) {
-      return;
+    if (this._initialized) {
+      this.reset();
     }
 
-    this.eventBus._off("updateviewarea", this._boundEvents.updateViewarea);
+    const reInitialized = this._fingerprint !== "" && this._fingerprint !== fingerprint;
+    this._fingerprint = fingerprint;
+    this._updateUrl = updateUrl === true;
+    this._initialized = true;
 
-    window.removeEventListener("popstate", this._boundEvents.popState);
-    window.removeEventListener("pagehide", this._boundEvents.pageHide);
-    this._boundEvents = null;
-  }
+    this._bindEvents();
 
-}
+    const state = window.history.state;
+    this._popStateInProgress = false;
+    this._blockHashChange = 0;
+    this._currentHash = getCurrentHash();
+    this._numPositionUpdates = 0;
+    this._uid = this._maxUid = 0;
+    this._destination = null;
+    this._position = null;
 
-exports.PDFHistory = PDFHistory;
+    if (!this._isValidState(state, true) || resetHistory) {
+      const {
+        hash,
+        page,
+        rotation
+      } = this._parseCurrentHash(true);
 
-function isDestHashesEqual(destHash, pushHash) {
-  if (typeof destHash !== "string" || typeof pushHash !== "string") {
-    return false;
-  }
+      if (!hash || reInitialized || resetHistory) {
+        this._pushOrReplaceState(null, true);
 
-  if (destHash === pushHash) {
-    return true;
-  }
+        return;
+      }
+
+      this._pushOrReplaceState({
+        hash,
+        page,
+        rotation
+      }, true);
 
-  const nameddest = (0, _ui_utils.parseQueryString)(destHash).get("nameddest");
+      return;
+    }
 
-  if (nameddest === pushHash) {
-    return true;
-  }
+    const destination = state.destination;
 
-  return false;
-}
+    this._updateInternalState(destination, state.uid, true);
 
-function isDestArraysEqual(firstDest, secondDest) {
-  function isEntryEqual(first, second) {
-    if (typeof first !== typeof second) {
-      return false;
+    if (destination.rotation !== undefined) {
+      this._initialRotation = destination.rotation;
     }
 
-    if (Array.isArray(first) || Array.isArray(second)) {
-      return false;
+    if (destination.dest) {
+      this._initialBookmark = JSON.stringify(destination.dest);
+      this._destination.page = null;
+    } else if (destination.hash) {
+      this._initialBookmark = destination.hash;
+    } else if (destination.page) {
+      this._initialBookmark = `page=${destination.page}`;
     }
+  }
 
-    if (first !== null && typeof first === "object" && second !== null) {
-      if (Object.keys(first).length !== Object.keys(second).length) {
-        return false;
-      }
+  reset() {
+    if (this._initialized) {
+      this._pageHide();
 
-      for (const key in first) {
-        if (!isEntryEqual(first[key], second[key])) {
-          return false;
-        }
-      }
+      this._initialized = false;
 
-      return true;
+      this._unbindEvents();
     }
 
-    return first === second || Number.isNaN(first) && Number.isNaN(second);
-  }
-
-  if (!(Array.isArray(firstDest) && Array.isArray(secondDest))) {
-    return false;
-  }
+    if (this._updateViewareaTimeout) {
+      clearTimeout(this._updateViewareaTimeout);
+      this._updateViewareaTimeout = null;
+    }
 
-  if (firstDest.length !== secondDest.length) {
-    return false;
+    this._initialBookmark = null;
+    this._initialRotation = null;
   }
 
-  for (let i = 0, ii = firstDest.length; i < ii; i++) {
-    if (!isEntryEqual(firstDest[i], secondDest[i])) {
-      return false;
+  push({
+    namedDest = null,
+    explicitDest,
+    pageNumber
+  }) {
+    if (!this._initialized) {
+      return;
     }
-  }
-
-  return true;
-}
-
-/***/ }),
-/* 17 */
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
+    if (namedDest && typeof namedDest !== "string") {
+      console.error("PDFHistory.push: " + `"${namedDest}" is not a valid namedDest parameter.`);
+      return;
+    } else if (!Array.isArray(explicitDest)) {
+      console.error("PDFHistory.push: " + `"${explicitDest}" is not a valid explicitDest parameter.`);
+      return;
+    } else if (!this._isValidPage(pageNumber)) {
+      if (pageNumber !== null || this._destination) {
+        console.error("PDFHistory.push: " + `"${pageNumber}" is not a valid pageNumber parameter.`);
+        return;
+      }
+    }
 
+    const hash = namedDest || JSON.stringify(explicitDest);
 
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.PDFLayerViewer = void 0;
+    if (!hash) {
+      return;
+    }
 
-var _base_tree_viewer = __webpack_require__(11);
+    let forceReplace = false;
 
-class PDFLayerViewer extends _base_tree_viewer.BaseTreeViewer {
-  constructor(options) {
-    super(options);
-    this.l10n = options.l10n;
+    if (this._destination && (isDestHashesEqual(this._destination.hash, hash) || 
isDestArraysEqual(this._destination.dest, explicitDest))) {
+      if (this._destination.page) {
+        return;
+      }
 
-    this.eventBus._on("resetlayers", this._resetLayers.bind(this));
+      forceReplace = true;
+    }
 
-    this.eventBus._on("togglelayerstree", this._toggleAllTreeItems.bind(this));
-  }
+    if (this._popStateInProgress && !forceReplace) {
+      return;
+    }
 
-  reset() {
-    super.reset();
-    this._optionalContentConfig = null;
-  }
+    this._pushOrReplaceState({
+      dest: explicitDest,
+      hash,
+      page: pageNumber,
+      rotation: this.linkService.rotation
+    }, forceReplace);
 
-  _dispatchEvent(layersCount) {
-    this.eventBus.dispatch("layersloaded", {
-      source: this,
-      layersCount
-    });
+    if (!this._popStateInProgress) {
+      this._popStateInProgress = true;
+      Promise.resolve().then(() => {
+        this._popStateInProgress = false;
+      });
+    }
   }
 
-  _bindLink(element, {
-    groupId,
-    input
-  }) {
-    const setVisibility = () => {
-      this._optionalContentConfig.setVisibility(groupId, input.checked);
-
-      this.eventBus.dispatch("optionalcontentconfig", {
-        source: this,
-        promise: Promise.resolve(this._optionalContentConfig)
-      });
-    };
+  pushPage(pageNumber) {
+    if (!this._initialized) {
+      return;
+    }
 
-    element.onclick = evt => {
-      if (evt.target === input) {
-        setVisibility();
-        return true;
-      } else if (evt.target !== element) {
-        return true;
-      }
+    if (!this._isValidPage(pageNumber)) {
+      console.error(`PDFHistory.pushPage: "${pageNumber}" is not a valid page number.`);
+      return;
+    }
 
-      input.checked = !input.checked;
-      setVisibility();
-      return false;
-    };
-  }
+    if (this._destination?.page === pageNumber) {
+      return;
+    }
 
-  async _setNestedName(element, {
-    name = null
-  }) {
-    if (typeof name === "string") {
-      element.textContent = this._normalizeTextContent(name);
+    if (this._popStateInProgress) {
       return;
     }
 
-    element.textContent = await this.l10n.get("additional_layers");
-    element.style.fontStyle = "italic";
-  }
+    this._pushOrReplaceState({
+      dest: null,
+      hash: `page=${pageNumber}`,
+      page: pageNumber,
+      rotation: this.linkService.rotation
+    });
 
-  _addToggleButton(div, {
-    name = null
-  }) {
-    super._addToggleButton(div, name === null);
+    if (!this._popStateInProgress) {
+      this._popStateInProgress = true;
+      Promise.resolve().then(() => {
+        this._popStateInProgress = false;
+      });
+    }
   }
 
-  _toggleAllTreeItems() {
-    if (!this._optionalContentConfig) {
+  pushCurrentPosition() {
+    if (!this._initialized || this._popStateInProgress) {
       return;
     }
 
-    super._toggleAllTreeItems();
+    this._tryPushCurrentPosition();
   }
 
-  render({
-    optionalContentConfig,
-    pdfDocument
-  }) {
-    if (this._optionalContentConfig) {
-      this.reset();
+  back() {
+    if (!this._initialized || this._popStateInProgress) {
+      return;
     }
 
-    this._optionalContentConfig = optionalContentConfig || null;
-    this._pdfDocument = pdfDocument || null;
-    const groups = optionalContentConfig?.getOrder();
+    const state = window.history.state;
 
-    if (!groups) {
-      this._dispatchEvent(0);
+    if (this._isValidState(state) && state.uid > 0) {
+      window.history.back();
+    }
+  }
 
+  forward() {
+    if (!this._initialized || this._popStateInProgress) {
       return;
     }
 
-    const fragment = document.createDocumentFragment(),
-          queue = [{
-      parent: fragment,
-      groups
-    }];
-    let layersCount = 0,
-        hasAnyNesting = false;
+    const state = window.history.state;
 
-    while (queue.length > 0) {
-      const levelData = queue.shift();
+    if (this._isValidState(state) && state.uid < this._maxUid) {
+      window.history.forward();
+    }
+  }
 
-      for (const groupId of levelData.groups) {
-        const div = document.createElement("div");
-        div.className = "treeItem";
-        const element = document.createElement("a");
-        div.appendChild(element);
+  get popStateInProgress() {
+    return this._initialized && (this._popStateInProgress || this._blockHashChange > 0);
+  }
 
-        if (typeof groupId === "object") {
-          hasAnyNesting = true;
+  get initialBookmark() {
+    return this._initialized ? this._initialBookmark : null;
+  }
 
-          this._addToggleButton(div, groupId);
+  get initialRotation() {
+    return this._initialized ? this._initialRotation : null;
+  }
 
-          this._setNestedName(element, groupId);
+  _pushOrReplaceState(destination, forceReplace = false) {
+    const shouldReplace = forceReplace || !this._destination;
+    const newState = {
+      fingerprint: this._fingerprint,
+      uid: shouldReplace ? this._uid : this._uid + 1,
+      destination
+    };
 
-          const itemsDiv = document.createElement("div");
-          itemsDiv.className = "treeItems";
-          div.appendChild(itemsDiv);
-          queue.push({
-            parent: itemsDiv,
-            groups: groupId.order
-          });
-        } else {
-          const group = optionalContentConfig.getGroup(groupId);
-          const input = document.createElement("input");
+    this._updateInternalState(destination, newState.uid);
 
-          this._bindLink(element, {
-            groupId,
-            input
-          });
+    let newUrl;
 
-          input.type = "checkbox";
-          input.id = groupId;
-          input.checked = group.visible;
-          const label = document.createElement("label");
-          label.setAttribute("for", groupId);
-          label.textContent = this._normalizeTextContent(group.name);
-          element.appendChild(input);
-          element.appendChild(label);
-          layersCount++;
-        }
+    if (this._updateUrl && destination?.hash) {
+      const baseUrl = document.location.href.split("#")[0];
 
-        levelData.parent.appendChild(div);
+      if (!baseUrl.startsWith("file://")) {
+        newUrl = `${baseUrl}#${destination.hash}`;
       }
     }
 
-    this._finishRendering(fragment, layersCount, hasAnyNesting);
+    // FIXME: This currently breaks Epiphany due to rewriting history with baseUrl
+    return;
+    if (shouldReplace) {
+      window.history.replaceState(newState, "", newUrl);
+    } else {
+      window.history.pushState(newState, "", newUrl);
+    }
   }
 
-  async _resetLayers() {
-    if (!this._optionalContentConfig) {
+  _tryPushCurrentPosition(temporary = false) {
+    if (!this._position) {
       return;
     }
 
-    const optionalContentConfig = await this._pdfDocument.getOptionalContentConfig();
-    this.eventBus.dispatch("optionalcontentconfig", {
-      source: this,
-      promise: Promise.resolve(optionalContentConfig)
-    });
-    this.render({
-      optionalContentConfig,
-      pdfDocument: this._pdfDocument
-    });
-  }
+    let position = this._position;
 
-}
+    if (temporary) {
+      position = Object.assign(Object.create(null), this._position);
+      position.temporary = true;
+    }
 
-exports.PDFLayerViewer = PDFLayerViewer;
+    if (!this._destination) {
+      this._pushOrReplaceState(position);
 
-/***/ }),
-/* 18 */
-/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
+      return;
+    }
 
+    if (this._destination.temporary) {
+      this._pushOrReplaceState(position, true);
 
+      return;
+    }
 
-Object.defineProperty(exports, "__esModule", ({
-  value: true
-}));
-exports.SimpleLinkService = exports.PDFLinkService = void 0;
+    if (this._destination.hash === position.hash) {
+      return;
+    }
 
-var _pdfjsLib = __webpack_require__(5);
+    if (!this._destination.page && (POSITION_UPDATED_THRESHOLD <= 0 || this._numPositionUpdates <= 
POSITION_UPDATED_THRESHOLD)) {
+      return;
+    }
 
-var _ui_utils = __webpack_require__(3);
+    let forceReplace = false;
 
-class PDFLinkService {
-  constructor({
-    eventBus,
-    externalLinkTarget = null,
-    externalLinkRel = null,
-    ignoreDestinationZoom = false
-  } = {}) {
-    this.eventBus = eventBus;
-    this.externalLinkTarget = externalLinkTarget;
-    this.externalLinkRel = externalLinkRel;
-    this.externalLinkEnabled = true;
-    this._ignoreDestinationZoom = ignoreDestinationZoom;
-    this.baseUrl = null;
-    this.pdfDocument = null;
-    this.pdfViewer = null;
-    this.pdfHistory = null;
-    this._pagesRefCache = null;
-  }
+    if (this._destination.page >= position.first && this._destination.page <= position.page) {
+      if (this._destination.dest !== undefined || !this._destination.first) {
+        return;
+      }
 
-  setDocument(pdfDocument, baseUrl = null) {
-    this.baseUrl = baseUrl;
-    this.pdfDocument = pdfDocument;
-    this._pagesRefCache = Object.create(null);
-  }
+      forceReplace = true;
+    }
 
-  setViewer(pdfViewer) {
-    this.pdfViewer = pdfViewer;
+    this._pushOrReplaceState(position, forceReplace);
   }
 
-  setHistory(pdfHistory) {
-    this.pdfHistory = pdfHistory;
+  _isValidPage(val) {
+    return Number.isInteger(val) && val > 0 && val <= this.linkService.pagesCount;
   }
 
-  get pagesCount() {
-    return this.pdfDocument ? this.pdfDocument.numPages : 0;
-  }
+  _isValidState(state, checkReload = false) {
+    if (!state) {
+      return false;
+    }
 
-  get page() {
-    return this.pdfViewer.currentPageNumber;
-  }
+    if (state.fingerprint !== this._fingerprint) {
+      if (checkReload) {
+        if (typeof state.fingerprint !== "string" || state.fingerprint.length !== this._fingerprint.length) {
+          return false;
+        }
 
-  set page(value) {
-    this.pdfViewer.currentPageNumber = value;
-  }
+        const [perfEntry] = performance.getEntriesByType("navigation");
 
-  get rotation() {
-    return this.pdfViewer.pagesRotation;
+        if (perfEntry?.type !== "reload") {
+          return false;
+        }
+      } else {
+        return false;
+      }
+    }
+
+    if (!Number.isInteger(state.uid) || state.uid < 0) {
+      return false;
+    }
+
+    if (state.destination === null || typeof state.destination !== "object") {
+      return false;
+    }
+
+    return true;
   }
 
-  set rotation(value) {
-    this.pdfViewer.pagesRotation = value;
+  _updateInternalState(destination, uid, removeTemporary = false) {
+    if (this._updateViewareaTimeout) {
+      clearTimeout(this._updateViewareaTimeout);
+      this._updateViewareaTimeout = null;
+    }
+
+    if (removeTemporary && destination?.temporary) {
+      delete destination.temporary;
+    }
+
+    this._destination = destination;
+    this._uid = uid;
+    this._maxUid = Math.max(this._maxUid, uid);
+    this._numPositionUpdates = 0;
   }
 
-  _goToDestinationHelper(rawDest, namedDest = null, explicitDest) {
-    const destRef = explicitDest[0];
-    let pageNumber;
+  _parseCurrentHash(checkNameddest = false) {
+    const hash = unescape(getCurrentHash()).substring(1);
+    const params = (0, _ui_utils.parseQueryString)(hash);
+    const nameddest = params.get("nameddest") || "";
+    let page = params.get("page") | 0;
 
-    if (typeof destRef === "object" && destRef !== null) {
-      pageNumber = this._cachedPageNumber(destRef);
+    if (!this._isValidPage(page) || checkNameddest && nameddest.length > 0) {
+      page = null;
+    }
 
-      if (!pageNumber) {
-        this.pdfDocument.getPageIndex(destRef).then(pageIndex => {
-          this.cachePageRef(pageIndex + 1, destRef);
+    return {
+      hash,
+      page,
+      rotation: this.linkService.rotation
+    };
+  }
 
-          this._goToDestinationHelper(rawDest, namedDest, explicitDest);
-        }).catch(() => {
-          console.error(`PDFLinkService._goToDestinationHelper: "${destRef}" is not ` + `a valid page 
reference, for dest="${rawDest}".`);
-        });
-        return;
-      }
-    } else if (Number.isInteger(destRef)) {
-      pageNumber = destRef + 1;
-    } else {
-      console.error(`PDFLinkService._goToDestinationHelper: "${destRef}" is not ` + `a valid destination 
reference, for dest="${rawDest}".`);
-      return;
+  _updateViewarea({
+    location
+  }) {
+    if (this._updateViewareaTimeout) {
+      clearTimeout(this._updateViewareaTimeout);
+      this._updateViewareaTimeout = null;
     }
 
-    if (!pageNumber || pageNumber < 1 || pageNumber > this.pagesCount) {
-      console.error(`PDFLinkService._goToDestinationHelper: "${pageNumber}" is not ` + `a valid page number, 
for dest="${rawDest}".`);
+    this._position = {
+      hash: this._isViewerInPresentationMode ? `page=${location.pageNumber}` : 
location.pdfOpenParams.substring(1),
+      page: this.linkService.page,
+      first: location.pageNumber,
+      rotation: location.rotation
+    };
+
+    if (this._popStateInProgress) {
       return;
     }
 
-    if (this.pdfHistory) {
-      this.pdfHistory.pushCurrentPosition();
-      this.pdfHistory.push({
-        namedDest,
-        explicitDest,
-        pageNumber
-      });
+    if (POSITION_UPDATED_THRESHOLD > 0 && this._isPagesLoaded && this._destination && 
!this._destination.page) {
+      this._numPositionUpdates++;
     }
 
-    this.pdfViewer.scrollPageIntoView({
-      pageNumber,
-      destArray: explicitDest,
-      ignoreDestinationZoom: this._ignoreDestinationZoom
-    });
-  }
+    if (UPDATE_VIEWAREA_TIMEOUT > 0) {
+      this._updateViewareaTimeout = setTimeout(() => {
+        if (!this._popStateInProgress) {
+          this._tryPushCurrentPosition(true);
+        }
 
-  async goToDestination(dest) {
-    if (!this.pdfDocument) {
-      return;
+        this._updateViewareaTimeout = null;
+      }, UPDATE_VIEWAREA_TIMEOUT);
     }
+  }
+
+  _popState({
+    state
+  }) {
+    const newHash = getCurrentHash(),
+          hashChanged = this._currentHash !== newHash;
+    this._currentHash = newHash;
+
+    if (!state) {
+      this._uid++;
+
+      const {
+        hash,
+        page,
+        rotation
+      } = this._parseCurrentHash();
 
-    let namedDest, explicitDest;
+      this._pushOrReplaceState({
+        hash,
+        page,
+        rotation
+      }, true);
 
-    if (typeof dest === "string") {
-      namedDest = dest;
-      explicitDest = await this.pdfDocument.getDestination(dest);
-    } else {
-      namedDest = null;
-      explicitDest = await dest;
+      return;
     }
 
-    if (!Array.isArray(explicitDest)) {
-      console.error(`PDFLinkService.goToDestination: "${explicitDest}" is not ` + `a valid destination 
array, for dest="${dest}".`);
+    if (!this._isValidState(state)) {
       return;
     }
 
-    this._goToDestinationHelper(dest, namedDest, explicitDest);
-  }
+    this._popStateInProgress = true;
 
-  goToPage(val) {
-    if (!this.pdfDocument) {
-      return;
+    if (hashChanged) {
+      this._blockHashChange++;
+      (0, _event_utils.waitOnEventOrTimeout)({
+        target: window,
+        name: "hashchange",
+        delay: HASH_CHANGE_TIMEOUT
+      }).then(() => {
+        this._blockHashChange--;
+      });
     }
 
-    const pageNumber = typeof val === "string" && this.pdfViewer.pageLabelToPageNumber(val) || val | 0;
+    const destination = state.destination;
 
-    if (!(Number.isInteger(pageNumber) && pageNumber > 0 && pageNumber <= this.pagesCount)) {
-      console.error(`PDFLinkService.goToPage: "${val}" is not a valid page.`);
-      return;
-    }
+    this._updateInternalState(destination, state.uid, true);
 
-    if (this.pdfHistory) {
-      this.pdfHistory.pushCurrentPosition();
-      this.pdfHistory.pushPage(pageNumber);
+    if ((0, _ui_utils.isValidRotation)(destination.rotation)) {
+      this.linkService.rotation = destination.rotation;
     }
 
-    this.pdfViewer.scrollPageIntoView({
-      pageNumber
-    });
-  }
+    if (destination.dest) {
+      this.linkService.goToDestination(destination.dest);
+    } else if (destination.hash) {
+      this.linkService.setHash(destination.hash);
+    } else if (destination.page) {
+      this.linkService.page = destination.page;
+    }
 
-  addLinkAttributes(link, url, newWindow = false) {
-    (0, _pdfjsLib.addLinkAttributes)(link, {
-      url,
-      target: newWindow ? _pdfjsLib.LinkTarget.BLANK : this.externalLinkTarget,
-      rel: this.externalLinkRel,
-      enabled: this.externalLinkEnabled
+    Promise.resolve().then(() => {
+      this._popStateInProgress = false;
     });
   }
 
-  getDestinationHash(dest) {
-    if (typeof dest === "string") {
-      if (dest.length > 0) {
-        return this.getAnchorUrl("#" + escape(dest));
-      }
-    } else if (Array.isArray(dest)) {
-      const str = JSON.stringify(dest);
-
-      if (str.length > 0) {
-        return this.getAnchorUrl("#" + escape(str));
-      }
+  _pageHide() {
+    if (!this._destination || this._destination.temporary) {
+      this._tryPushCurrentPosition();
     }
-
-    return this.getAnchorUrl("");
-  }
-
-  getAnchorUrl(anchor) {
-    return (this.baseUrl || "") + anchor;
   }
 
-  setHash(hash) {
-    if (!this.pdfDocument) {
+  _bindEvents() {
+    if (this._boundEvents) {
       return;
     }
 
-    let pageNumber, dest;
-
-    if (hash.includes("=")) {
-      const params = (0, _ui_utils.parseQueryString)(hash);
-
-      if (params.has("search")) {
-        this.eventBus.dispatch("findfromurlhash", {
-          source: this,
-          query: params.get("search").replace(/"/g, ""),
-          phraseSearch: params.get("phrase") === "true"
-        });
-      }
-
-      if (params.has("page")) {
-        pageNumber = params.get("page") | 0 || 1;
-      }
-
-      if (params.has("zoom")) {
-        const zoomArgs = params.get("zoom").split(",");
-        const zoomArg = zoomArgs[0];
-        const zoomArgNumber = parseFloat(zoomArg);
-
-        if (!zoomArg.includes("Fit")) {
-          dest = [null, {
-            name: "XYZ"
-          }, zoomArgs.length > 1 ? zoomArgs[1] | 0 : null, zoomArgs.length > 2 ? zoomArgs[2] | 0 : null, 
zoomArgNumber ? zoomArgNumber / 100 : zoomArg];
-        } else {
-          if (zoomArg === "Fit" || zoomArg === "FitB") {
-            dest = [null, {
-              name: zoomArg
-            }];
-          } else if (zoomArg === "FitH" || zoomArg === "FitBH" || zoomArg === "FitV" || zoomArg === "FitBV") 
{
-            dest = [null, {
-              name: zoomArg
-            }, zoomArgs.length > 1 ? zoomArgs[1] | 0 : null];
-          } else if (zoomArg === "FitR") {
-            if (zoomArgs.length !== 5) {
-              console.error('PDFLinkService.setHash: Not enough parameters for "FitR".');
-            } else {
-              dest = [null, {
-                name: zoomArg
-              }, zoomArgs[1] | 0, zoomArgs[2] | 0, zoomArgs[3] | 0, zoomArgs[4] | 0];
-            }
-          } else {
-            console.error(`PDFLinkService.setHash: "${zoomArg}" is not ` + "a valid zoom value.");
-          }
-        }
-      }
-
-      if (dest) {
-        this.pdfViewer.scrollPageIntoView({
-          pageNumber: pageNumber || this.page,
-          destArray: dest,
-          allowNegativeOffset: true
-        });
-      } else if (pageNumber) {
-        this.page = pageNumber;
-      }
-
-      if (params.has("pagemode")) {
-        this.eventBus.dispatch("pagemode", {
-          source: this,
-          mode: params.get("pagemode")
-        });
-      }
-
-      if (params.has("nameddest")) {
-        this.goToDestination(params.get("nameddest"));
-      }
-    } else {
-      dest = unescape(hash);
-
-      try {
-        dest = JSON.parse(dest);
-
-        if (!Array.isArray(dest)) {
-          dest = dest.toString();
-        }
-      } catch (ex) {}
+    this._boundEvents = {
+      updateViewarea: this._updateViewarea.bind(this),
+      popState: this._popState.bind(this),
+      pageHide: this._pageHide.bind(this)
+    };
 
-      if (typeof dest === "string" || isValidExplicitDestination(dest)) {
-        this.goToDestination(dest);
-        return;
-      }
+    this.eventBus._on("updateviewarea", this._boundEvents.updateViewarea);
 
-      console.error(`PDFLinkService.setHash: "${unescape(hash)}" is not ` + "a valid destination.");
-    }
+    window.addEventListener("popstate", this._boundEvents.popState);
+    window.addEventListener("pagehide", this._boundEvents.pageHide);
   }
 
-  executeNamedAction(action) {
-    switch (action) {
-      case "GoBack":
-        this.pdfHistory?.back();
-        break;
-
-      case "GoForward":
-        this.pdfHistory?.forward();
-        break;
+  _unbindEvents() {
+    if (!this._boundEvents) {
+      return;
+    }
 
-      case "NextPage":
-        this.pdfViewer.nextPage();
-        break;
+    this.eventBus._off("updateviewarea", this._boundEvents.updateViewarea);
 
-      case "PrevPage":
-        this.pdfViewer.previousPage();
-        break;
+    window.removeEventListener("popstate", this._boundEvents.popState);
+    window.removeEventListener("pagehide", this._boundEvents.pageHide);
+    this._boundEvents = null;
+  }
 
-      case "LastPage":
-        this.page = this.pagesCount;
-        break;
+}
 
-      case "FirstPage":
-        this.page = 1;
-        break;
+exports.PDFHistory = PDFHistory;
 
-      default:
-        break;
-    }
+function isDestHashesEqual(destHash, pushHash) {
+  if (typeof destHash !== "string" || typeof pushHash !== "string") {
+    return false;
+  }
 
-    this.eventBus.dispatch("namedaction", {
-      source: this,
-      action
-    });
+  if (destHash === pushHash) {
+    return true;
   }
 
-  cachePageRef(pageNum, pageRef) {
-    if (!pageRef) {
-      return;
-    }
+  const nameddest = (0, _ui_utils.parseQueryString)(destHash).get("nameddest");
 
-    const refStr = pageRef.gen === 0 ? `${pageRef.num}R` : `${pageRef.num}R${pageRef.gen}`;
-    this._pagesRefCache[refStr] = pageNum;
+  if (nameddest === pushHash) {
+    return true;
   }
 
-  _cachedPageNumber(pageRef) {
-    if (!pageRef) {
-      return null;
+  return false;
+}
+
+function isDestArraysEqual(firstDest, secondDest) {
+  function isEntryEqual(first, second) {
+    if (typeof first !== typeof second) {
+      return false;
     }
 
-    const refStr = pageRef.gen === 0 ? `${pageRef.num}R` : `${pageRef.num}R${pageRef.gen}`;
-    return this._pagesRefCache?.[refStr] || null;
-  }
+    if (Array.isArray(first) || Array.isArray(second)) {
+      return false;
+    }
 
-  isPageVisible(pageNumber) {
-    return this.pdfViewer.isPageVisible(pageNumber);
-  }
+    if (first !== null && typeof first === "object" && second !== null) {
+      if (Object.keys(first).length !== Object.keys(second).length) {
+        return false;
+      }
 
-  isPageCached(pageNumber) {
-    return this.pdfViewer.isPageCached(pageNumber);
-  }
+      for (const key in first) {
+        if (!isEntryEqual(first[key], second[key])) {
+          return false;
+        }
+      }
 
-}
+      return true;
+    }
 
-exports.PDFLinkService = PDFLinkService;
+    return first === second || Number.isNaN(first) && Number.isNaN(second);
+  }
 
-function isValidExplicitDestination(dest) {
-  if (!Array.isArray(dest)) {
+  if (!(Array.isArray(firstDest) && Array.isArray(secondDest))) {
     return false;
   }
 
-  const destLength = dest.length;
-
-  if (destLength < 2) {
+  if (firstDest.length !== secondDest.length) {
     return false;
   }
 
-  const page = dest[0];
-
-  if (!(typeof page === "object" && Number.isInteger(page.num) && Number.isInteger(page.gen)) && 
!(Number.isInteger(page) && page >= 0)) {
-    return false;
+  for (let i = 0, ii = firstDest.length; i < ii; i++) {
+    if (!isEntryEqual(firstDest[i], secondDest[i])) {
+      return false;
+    }
   }
 
-  const zoom = dest[1];
+  return true;
+}
 
-  if (!(typeof zoom === "object" && typeof zoom.name === "string")) {
-    return false;
-  }
+/***/ }),
+/* 18 */
+/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
 
-  let allowNull = true;
 
-  switch (zoom.name) {
-    case "XYZ":
-      if (destLength !== 5) {
-        return false;
-      }
 
-      break;
+Object.defineProperty(exports, "__esModule", ({
+  value: true
+}));
+exports.PDFLayerViewer = void 0;
 
-    case "Fit":
-    case "FitB":
-      return destLength === 2;
+var _base_tree_viewer = __webpack_require__(12);
 
-    case "FitH":
-    case "FitBH":
-    case "FitV":
-    case "FitBV":
-      if (destLength !== 3) {
-        return false;
-      }
+class PDFLayerViewer extends _base_tree_viewer.BaseTreeViewer {
+  constructor(options) {
+    super(options);
+    this.l10n = options.l10n;
 
-      break;
+    this.eventBus._on("resetlayers", this._resetLayers.bind(this));
 
-    case "FitR":
-      if (destLength !== 6) {
-        return false;
-      }
+    this.eventBus._on("togglelayerstree", this._toggleAllTreeItems.bind(this));
+  }
 
-      allowNull = false;
-      break;
+  reset() {
+    super.reset();
+    this._optionalContentConfig = null;
+  }
 
-    default:
-      return false;
+  _dispatchEvent(layersCount) {
+    this.eventBus.dispatch("layersloaded", {
+      source: this,
+      layersCount
+    });
   }
 
-  for (let i = 2; i < destLength; i++) {
-    const param = dest[i];
+  _bindLink(element, {
+    groupId,
+    input
+  }) {
+    const setVisibility = () => {
+      this._optionalContentConfig.setVisibility(groupId, input.checked);
+
+      this.eventBus.dispatch("optionalcontentconfig", {
+        source: this,
+        promise: Promise.resolve(this._optionalContentConfig)
+      });
+    };
+
+    element.onclick = evt => {
+      if (evt.target === input) {
+        setVisibility();
+        return true;
+      } else if (evt.target !== element) {
+        return true;
+      }
 
-    if (!(typeof param === "number" || allowNull && param === null)) {
+      input.checked = !input.checked;
+      setVisibility();
       return false;
-    }
+    };
   }
 
-  return true;
-}
+  async _setNestedName(element, {
+    name = null
+  }) {
+    if (typeof name === "string") {
+      element.textContent = this._normalizeTextContent(name);
+      return;
+    }
 
-class SimpleLinkService {
-  constructor() {
-    this.externalLinkEnabled = true;
+    element.textContent = await this.l10n.get("additional_layers");
+    element.style.fontStyle = "italic";
   }
 
-  get pagesCount() {
-    return 0;
+  _addToggleButton(div, {
+    name = null
+  }) {
+    super._addToggleButton(div, name === null);
   }
 
-  get page() {
-    return 0;
+  _toggleAllTreeItems() {
+    if (!this._optionalContentConfig) {
+      return;
+    }
+
+    super._toggleAllTreeItems();
   }
 
-  set page(value) {}
+  render({
+    optionalContentConfig,
+    pdfDocument
+  }) {
+    if (this._optionalContentConfig) {
+      this.reset();
+    }
 
-  get rotation() {
-    return 0;
-  }
+    this._optionalContentConfig = optionalContentConfig || null;
+    this._pdfDocument = pdfDocument || null;
+    const groups = optionalContentConfig?.getOrder();
 
-  set rotation(value) {}
+    if (!groups) {
+      this._dispatchEvent(0);
 
-  async goToDestination(dest) {}
+      return;
+    }
 
-  goToPage(val) {}
+    const fragment = document.createDocumentFragment(),
+          queue = [{
+      parent: fragment,
+      groups
+    }];
+    let layersCount = 0,
+        hasAnyNesting = false;
 
-  addLinkAttributes(link, url, newWindow = false) {
-    (0, _pdfjsLib.addLinkAttributes)(link, {
-      url,
-      enabled: this.externalLinkEnabled
-    });
-  }
+    while (queue.length > 0) {
+      const levelData = queue.shift();
 
-  getDestinationHash(dest) {
-    return "#";
-  }
+      for (const groupId of levelData.groups) {
+        const div = document.createElement("div");
+        div.className = "treeItem";
+        const element = document.createElement("a");
+        div.appendChild(element);
 
-  getAnchorUrl(hash) {
-    return "#";
-  }
+        if (typeof groupId === "object") {
+          hasAnyNesting = true;
 
-  setHash(hash) {}
+          this._addToggleButton(div, groupId);
 
-  executeNamedAction(action) {}
+          this._setNestedName(element, groupId);
 
-  cachePageRef(pageNum, pageRef) {}
+          const itemsDiv = document.createElement("div");
+          itemsDiv.className = "treeItems";
+          div.appendChild(itemsDiv);
+          queue.push({
+            parent: itemsDiv,
+            groups: groupId.order
+          });
+        } else {
+          const group = optionalContentConfig.getGroup(groupId);
+          const input = document.createElement("input");
 
-  isPageVisible(pageNumber) {
-    return true;
+          this._bindLink(element, {
+            groupId,
+            input
+          });
+
+          input.type = "checkbox";
+          input.id = groupId;
+          input.checked = group.visible;
+          const label = document.createElement("label");
+          label.setAttribute("for", groupId);
+          label.textContent = this._normalizeTextContent(group.name);
+          element.appendChild(input);
+          element.appendChild(label);
+          layersCount++;
+        }
+
+        levelData.parent.appendChild(div);
+      }
+    }
+
+    this._finishRendering(fragment, layersCount, hasAnyNesting);
   }
 
-  isPageCached(pageNumber) {
-    return true;
+  async _resetLayers() {
+    if (!this._optionalContentConfig) {
+      return;
+    }
+
+    const optionalContentConfig = await this._pdfDocument.getOptionalContentConfig();
+    this.eventBus.dispatch("optionalcontentconfig", {
+      source: this,
+      promise: Promise.resolve(optionalContentConfig)
+    });
+    this.render({
+      optionalContentConfig,
+      pdfDocument: this._pdfDocument
+    });
   }
 
 }
 
-exports.SimpleLinkService = SimpleLinkService;
+exports.PDFLayerViewer = PDFLayerViewer;
 
 /***/ }),
 /* 19 */
@@ -7206,7 +7314,7 @@ Object.defineProperty(exports, "__esModule", ({
 }));
 exports.PDFOutlineViewer = void 0;
 
-var _base_tree_viewer = __webpack_require__(11);
+var _base_tree_viewer = __webpack_require__(12);
 
 var _pdfjsLib = __webpack_require__(5);
 
@@ -7570,26 +7678,14 @@ class PDFPresentationMode {
   }
 
   request() {
-    if (this.switchInProgress || this.active || !this.pdfViewer.pagesCount) {
-      return false;
-    }
-
-    this._addFullscreenChangeListeners();
-
-    this._setSwitchInProgress();
-
-    this._notifyStateChange();
-
-    if (this.container.requestFullscreen) {
-      this.container.requestFullscreen();
-    } else if (this.container.mozRequestFullScreen) {
-      this.container.mozRequestFullScreen();
-    } else if (this.container.webkitRequestFullscreen) {
-      this.container.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT);
-    } else {
+    if (this.switchInProgress || this.active || !this.pdfViewer.pagesCount || 
!this.container.requestFullscreen) {
       return false;
     }
 
+    this.#addFullscreenChangeListeners();
+    this.#setSwitchInProgress();
+    this.#notifyStateChange();
+    this.container.requestFullscreen();
     this.args = {
       pageNumber: this.pdfViewer.currentPageNumber,
       scaleValue: this.pdfViewer.currentScaleValue,
@@ -7599,7 +7695,7 @@ class PDFPresentationMode {
     return true;
   }
 
-  _mouseWheel(evt) {
+  #mouseWheel(evt) {
     if (!this.active) {
       return;
     }
@@ -7614,16 +7710,14 @@ class PDFPresentationMode {
     }
 
     if (this.mouseScrollDelta > 0 && delta < 0 || this.mouseScrollDelta < 0 && delta > 0) {
-      this._resetMouseScrollState();
+      this.#resetMouseScrollState();
     }
 
     this.mouseScrollDelta += delta;
 
     if (Math.abs(this.mouseScrollDelta) >= PAGE_SWITCH_THRESHOLD) {
       const totalDelta = this.mouseScrollDelta;
-
-      this._resetMouseScrollState();
-
+      this.#resetMouseScrollState();
       const success = totalDelta > 0 ? this.pdfViewer.previousPage() : this.pdfViewer.nextPage();
 
       if (success) {
@@ -7632,11 +7726,7 @@ class PDFPresentationMode {
     }
   }
 
-  get isFullscreen() {
-    return !!(document.fullscreenElement || document.mozFullScreen || document.webkitIsFullScreen);
-  }
-
-  _notifyStateChange() {
+  #notifyStateChange() {
     let state = _ui_utils.PresentationModeState.NORMAL;
 
     if (this.switchInProgress) {
@@ -7651,34 +7741,29 @@ class PDFPresentationMode {
     });
   }
 
-  _setSwitchInProgress() {
+  #setSwitchInProgress() {
     if (this.switchInProgress) {
       clearTimeout(this.switchInProgress);
     }
 
     this.switchInProgress = setTimeout(() => {
-      this._removeFullscreenChangeListeners();
-
+      this.#removeFullscreenChangeListeners();
       delete this.switchInProgress;
-
-      this._notifyStateChange();
+      this.#notifyStateChange();
     }, DELAY_BEFORE_RESETTING_SWITCH_IN_PROGRESS);
   }
 
-  _resetSwitchInProgress() {
+  #resetSwitchInProgress() {
     if (this.switchInProgress) {
       clearTimeout(this.switchInProgress);
       delete this.switchInProgress;
     }
   }
 
-  _enter() {
+  #enter() {
     this.active = true;
-
-    this._resetSwitchInProgress();
-
-    this._notifyStateChange();
-
+    this.#resetSwitchInProgress();
+    this.#notifyStateChange();
     this.container.classList.add(ACTIVE_SELECTOR);
     setTimeout(() => {
       this.pdfViewer.scrollMode = _ui_utils.ScrollMode.PAGE;
@@ -7686,42 +7771,32 @@ class PDFPresentationMode {
       this.pdfViewer.currentPageNumber = this.args.pageNumber;
       this.pdfViewer.currentScaleValue = "page-fit";
     }, 0);
-
-    this._addWindowListeners();
-
-    this._showControls();
-
+    this.#addWindowListeners();
+    this.#showControls();
     this.contextMenuOpen = false;
     window.getSelection().removeAllRanges();
   }
 
-  _exit() {
+  #exit() {
     const pageNumber = this.pdfViewer.currentPageNumber;
     this.container.classList.remove(ACTIVE_SELECTOR);
     setTimeout(() => {
       this.active = false;
-
-      this._removeFullscreenChangeListeners();
-
-      this._notifyStateChange();
-
+      this.#removeFullscreenChangeListeners();
+      this.#notifyStateChange();
       this.pdfViewer.scrollMode = this.args.scrollMode;
       this.pdfViewer.spreadMode = this.args.spreadMode;
       this.pdfViewer.currentScaleValue = this.args.scaleValue;
       this.pdfViewer.currentPageNumber = pageNumber;
       this.args = null;
     }, 0);
-
-    this._removeWindowListeners();
-
-    this._hideControls();
-
-    this._resetMouseScrollState();
-
+    this.#removeWindowListeners();
+    this.#hideControls();
+    this.#resetMouseScrollState();
     this.contextMenuOpen = false;
   }
 
-  _mouseDown(evt) {
+  #mouseDown(evt) {
     if (this.contextMenuOpen) {
       this.contextMenuOpen = false;
       evt.preventDefault();
@@ -7743,11 +7818,11 @@ class PDFPresentationMode {
     }
   }
 
-  _contextMenu() {
+  #contextMenu() {
     this.contextMenuOpen = true;
   }
 
-  _showControls() {
+  #showControls() {
     if (this.controlsTimeout) {
       clearTimeout(this.controlsTimeout);
     } else {
@@ -7760,7 +7835,7 @@ class PDFPresentationMode {
     }, DELAY_BEFORE_HIDING_CONTROLS);
   }
 
-  _hideControls() {
+  #hideControls() {
     if (!this.controlsTimeout) {
       return;
     }
@@ -7770,12 +7845,12 @@ class PDFPresentationMode {
     delete this.controlsTimeout;
   }
 
-  _resetMouseScrollState() {
+  #resetMouseScrollState() {
     this.mouseScrollTimeStamp = 0;
     this.mouseScrollDelta = 0;
   }
 
-  _touchSwipe(evt) {
+  #touchSwipe(evt) {
     if (!this.active) {
       return;
     }
@@ -7831,13 +7906,13 @@ class PDFPresentationMode {
     }
   }
 
-  _addWindowListeners() {
-    this.showControlsBind = this._showControls.bind(this);
-    this.mouseDownBind = this._mouseDown.bind(this);
-    this.mouseWheelBind = this._mouseWheel.bind(this);
-    this.resetMouseScrollStateBind = this._resetMouseScrollState.bind(this);
-    this.contextMenuBind = this._contextMenu.bind(this);
-    this.touchSwipeBind = this._touchSwipe.bind(this);
+  #addWindowListeners() {
+    this.showControlsBind = this.#showControls.bind(this);
+    this.mouseDownBind = this.#mouseDown.bind(this);
+    this.mouseWheelBind = this.#mouseWheel.bind(this);
+    this.resetMouseScrollStateBind = this.#resetMouseScrollState.bind(this);
+    this.contextMenuBind = this.#contextMenu.bind(this);
+    this.touchSwipeBind = this.#touchSwipe.bind(this);
     window.addEventListener("mousemove", this.showControlsBind);
     window.addEventListener("mousedown", this.mouseDownBind);
     window.addEventListener("wheel", this.mouseWheelBind, {
@@ -7850,7 +7925,7 @@ class PDFPresentationMode {
     window.addEventListener("touchend", this.touchSwipeBind);
   }
 
-  _removeWindowListeners() {
+  #removeWindowListeners() {
     window.removeEventListener("mousemove", this.showControlsBind);
     window.removeEventListener("mousedown", this.mouseDownBind);
     window.removeEventListener("wheel", this.mouseWheelBind, {
@@ -7869,25 +7944,21 @@ class PDFPresentationMode {
     delete this.touchSwipeBind;
   }
 
-  _fullscreenChange() {
-    if (this.isFullscreen) {
-      this._enter();
+  #fullscreenChange() {
+    if (document.fullscreenElement) {
+      this.#enter();
     } else {
-      this._exit();
+      this.#exit();
     }
   }
 
-  _addFullscreenChangeListeners() {
-    this.fullscreenChangeBind = this._fullscreenChange.bind(this);
+  #addFullscreenChangeListeners() {
+    this.fullscreenChangeBind = this.#fullscreenChange.bind(this);
     window.addEventListener("fullscreenchange", this.fullscreenChangeBind);
-    window.addEventListener("mozfullscreenchange", this.fullscreenChangeBind);
-    window.addEventListener("webkitfullscreenchange", this.fullscreenChangeBind);
   }
 
-  _removeFullscreenChangeListeners() {
+  #removeFullscreenChangeListeners() {
     window.removeEventListener("fullscreenchange", this.fullscreenChangeBind);
-    window.removeEventListener("mozfullscreenchange", this.fullscreenChangeBind);
-    window.removeEventListener("webkitfullscreenchange", this.fullscreenChangeBind);
     delete this.fullscreenChangeBind;
   }
 
@@ -9509,7 +9580,7 @@ class PDFThumbnailView {
     const ctx = canvas.getContext("2d", {
       alpha: false
     });
-    const outputScale = (0, _ui_utils.getOutputScale)(ctx);
+    const outputScale = new _ui_utils.OutputScale();
     canvas.width = upscaleFactor * this.canvasWidth * outputScale.sx | 0;
     canvas.height = upscaleFactor * this.canvasHeight * outputScale.sy | 0;
     const transform = outputScale.scaled ? [outputScale.sx, 0, 0, outputScale.sy, 0, 0] : null;
@@ -9782,7 +9853,7 @@ var _pdf_page_view = __webpack_require__(31);
 
 var _pdf_rendering_queue = __webpack_require__(21);
 
-var _pdf_link_service = __webpack_require__(18);
+var _pdf_link_service = __webpack_require__(8);
 
 var _struct_tree_layer_builder = __webpack_require__(32);
 
@@ -9797,7 +9868,7 @@ const ENABLE_PERMISSIONS_CLASS = "enablePermissions";
 const PagesCountLimit = {
   FORCE_SCROLL_MODE_PAGE: 15000,
   FORCE_LAZY_PAGE_INIT: 7500,
-  PAUSE_EAGER_PAGE_INIT: 500
+  PAUSE_EAGER_PAGE_INIT: 250
 };
 exports.PagesCountLimit = PagesCountLimit;
 
@@ -9873,13 +9944,14 @@ class BaseViewer {
   #enablePermissions = false;
   #previousContainerHeight = 0;
   #scrollModePageState = null;
+  #onVisibilityChange = null;
 
   constructor(options) {
     if (this.constructor === BaseViewer) {
       throw new Error("Cannot initialize BaseViewer.");
     }
 
-    const viewerVersion = '2.12.313';
+    const viewerVersion = '2.13.216';
 
     if (_pdfjsLib.version !== viewerVersion) {
       throw new Error(`The API version "${_pdfjsLib.version}" does not match the Viewer version 
"${viewerVersion}".`);
@@ -10141,11 +10213,24 @@ class BaseViewer {
   }
 
   #onePageRenderedOrForceFetch() {
-    if (!this.container.offsetParent || this._getVisiblePages().views.length === 0) {
+    if (document.visibilityState === "hidden" || !this.container.offsetParent || 
this._getVisiblePages().views.length === 0) {
       return Promise.resolve();
     }
 
-    return this._onePageRenderedCapability.promise;
+    const visibilityChangePromise = new Promise(resolve => {
+      this.#onVisibilityChange = () => {
+        if (document.visibilityState !== "hidden") {
+          return;
+        }
+
+        resolve();
+        document.removeEventListener("visibilitychange", this.#onVisibilityChange);
+        this.#onVisibilityChange = null;
+      };
+
+      document.addEventListener("visibilitychange", this.#onVisibilityChange);
+    });
+    return Promise.race([this._onePageRenderedCapability.promise, visibilityChangePromise]);
   }
 
   setDocument(pdfDocument) {
@@ -10219,6 +10304,11 @@ class BaseViewer {
       this.eventBus._off("pagerendered", this._onAfterDraw);
 
       this._onAfterDraw = null;
+
+      if (this.#onVisibilityChange) {
+        document.removeEventListener("visibilitychange", this.#onVisibilityChange);
+        this.#onVisibilityChange = null;
+      }
     };
 
     this.eventBus._on("pagerendered", this._onAfterDraw);
@@ -10407,6 +10497,11 @@ class BaseViewer {
       this._onAfterDraw = null;
     }
 
+    if (this.#onVisibilityChange) {
+      document.removeEventListener("visibilitychange", this.#onVisibilityChange);
+      this.#onVisibilityChange = null;
+    }
+
     this.viewer.textContent = "";
 
     this._updateScrollMode();
@@ -11004,7 +11099,7 @@ class BaseViewer {
         pageView.setPdfPage(pdfPage);
       }
 
-      if (!this.linkService._cachedPageNumber(pdfPage.ref)) {
+      if (!this.linkService._cachedPageNumber?.(pdfPage.ref)) {
         this.linkService.cachePageRef(pageView.id, pdfPage.ref);
       }
 
@@ -12314,7 +12409,6 @@ class PDFPageView {
       return finishPaintTask(null).then(() => {
         if (textLayer) {
           const readableStream = pdfPage.streamTextContent({
-            normalizeWhitespace: true,
             includeMarkedContent: true
           });
           textLayer.setTextContentStream(readableStream);
@@ -12411,8 +12505,7 @@ class PDFPageView {
     const ctx = canvas.getContext("2d", {
       alpha: false
     });
-    const outputScale = (0, _ui_utils.getOutputScale)(ctx);
-    this.outputScale = outputScale;
+    const outputScale = this.outputScale = new _ui_utils.OutputScale();
 
     if (this.useOnlyCssZoom) {
       const actualSizeViewport = viewport.clone({
@@ -12420,7 +12513,6 @@ class PDFPageView {
       });
       outputScale.sx *= actualSizeViewport.width / viewport.width;
       outputScale.sy *= actualSizeViewport.height / viewport.height;
-      outputScale.scaled = true;
     }
 
     if (this.maxCanvasPixels > 0) {
@@ -12430,7 +12522,6 @@ class PDFPageView {
       if (outputScale.sx > maxScale || outputScale.sy > maxScale) {
         outputScale.sx = maxScale;
         outputScale.sy = maxScale;
-        outputScale.scaled = true;
         this.hasRestrictedScaling = true;
       } else {
         this.hasRestrictedScaling = false;
@@ -12444,7 +12535,7 @@ class PDFPageView {
     canvas.style.width = (0, _ui_utils.roundToDivide)(viewport.width, sfx[1]) + "px";
     canvas.style.height = (0, _ui_utils.roundToDivide)(viewport.height, sfy[1]) + "px";
     this.paintedViewportMap.set(canvas, viewport);
-    const transform = !outputScale.scaled ? null : [outputScale.sx, 0, 0, outputScale.sy, 0, 0];
+    const transform = outputScale.scaled ? [outputScale.sx, 0, 0, outputScale.sy, 0, 0] : null;
     const renderContext = {
       canvasContext: ctx,
       transform,
@@ -12492,7 +12583,7 @@ class PDFPageView {
       annotationMode: this.#annotationMode
     }).then(opList => {
       ensureNotCancelled();
-      const svgGfx = new _pdfjsLib.SVGGraphics(pdfPage.commonObjs, pdfPage.objs, 
_app_options.compatibilityParams.disableCreateObjectURL);
+      const svgGfx = new _pdfjsLib.SVGGraphics(pdfPage.commonObjs, pdfPage.objs);
       return svgGfx.getSVG(opList, actualSizeViewport).then(svg => {
         ensureNotCancelled();
         this.svg = svg;
@@ -14079,8 +14170,6 @@ exports.DownloadManager = void 0;
 
 var _pdfjsLib = __webpack_require__(5);
 
-var _app_options = __webpack_require__(1);
-
 ;
 
 function download(blobUrl, filename) {
@@ -14117,7 +14206,9 @@ class DownloadManager {
   }
 
   downloadData(data, filename, contentType) {
-    const blobUrl = (0, _pdfjsLib.createObjectURL)(data, contentType, 
_app_options.compatibilityParams.disableCreateObjectURL);
+    const blobUrl = URL.createObjectURL(new Blob([data], {
+      type: contentType
+    }));
     download(blobUrl, filename);
   }
 
@@ -14125,7 +14216,7 @@ class DownloadManager {
     const isPdfData = (0, _pdfjsLib.isPdfFile)(filename);
     const contentType = isPdfData ? "application/pdf" : "";
 
-    if (isPdfData && !_app_options.compatibilityParams.disableCreateObjectURL) {
+    if (isPdfData) {
       let blobUrl = this._openBlobUrls.get(element);
 
       if (!blobUrl) {
@@ -14155,11 +14246,6 @@ class DownloadManager {
   }
 
   download(blob, url, filename, sourceEventType = "download") {
-    if (_app_options.compatibilityParams.disableCreateObjectURL) {
-      this.downloadUrl(url, filename);
-      return;
-    }
-
     const blobUrl = URL.createObjectURL(blob);
     download(blobUrl, filename);
   }
@@ -15097,7 +15183,7 @@ class GenericScripting {
 
   async dispatchEventInSandbox(event) {
     const sandbox = await this._ready;
-    sandbox.dispatchEvent(event);
+    setTimeout(() => sandbox.dispatchEvent(event), 0);
   }
 
   async destroySandbox() {
@@ -15124,8 +15210,6 @@ var _pdfjsLib = __webpack_require__(5);
 
 var _app = __webpack_require__(2);
 
-var _app_options = __webpack_require__(1);
-
 var _print_utils = __webpack_require__(46);
 
 let activeService = null;
@@ -15245,7 +15329,7 @@ PDFPrintService.prototype = {
     const img = document.createElement("img");
     const scratchCanvas = this.scratchCanvas;
 
-    if ("toBlob" in scratchCanvas && !_app_options.compatibilityParams.disableCreateObjectURL) {
+    if ("toBlob" in scratchCanvas) {
       scratchCanvas.toBlob(function (blob) {
         img.src = URL.createObjectURL(blob);
       });
@@ -15421,7 +15505,7 @@ exports.getXfaHtmlForPrinting = getXfaHtmlForPrinting;
 
 var _pdfjsLib = __webpack_require__(5);
 
-var _pdf_link_service = __webpack_require__(18);
+var _pdf_link_service = __webpack_require__(8);
 
 var _xfa_layer_builder = __webpack_require__(35);
 
@@ -15502,8 +15586,8 @@ var _app_options = __webpack_require__(1);
 
 var _app = __webpack_require__(2);
 
-const pdfjsVersion = '2.12.313';
-const pdfjsBuild = 'a2ae56f39';
+const pdfjsVersion = '2.13.216';
+const pdfjsBuild = '399a0ec60';
 window.PDFViewerApplication = _app.PDFViewerApplication;
 window.PDFViewerApplicationOptions = _app_options.AppOptions;
 ;
@@ -15530,7 +15614,6 @@ function getViewerConfiguration() {
     appContainer: document.body,
     mainContainer: document.getElementById("viewerContainer"),
     viewerContainer: document.getElementById("viewer"),
-    eventBus: null,
     toolbar: {
       container: document.getElementById("toolbarViewer"),
       numPages: document.getElementById("numPages"),
@@ -15597,6 +15680,7 @@ function getViewerConfiguration() {
       findField: document.getElementById("findInput"),
       highlightAllCheckbox: document.getElementById("findHighlightAll"),
       caseSensitiveCheckbox: document.getElementById("findMatchCase"),
+      matchDiacriticsCheckbox: document.getElementById("findMatchDiacritics"),
       entireWordCheckbox: document.getElementById("findEntireWord"),
       findMsg: document.getElementById("findMsg"),
       findResultsCount: document.getElementById("findResultsCount"),


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]