diff options
| author | schneefux <schneefux+commit@schneefux.xyz> | 2014-09-22 17:28:14 +0200 |
|---|---|---|
| committer | schneefux <schneefux+commit@schneefux.xyz> | 2016-08-15 20:02:47 +0200 |
| commit | 518a0d0c1b029f4bab6f832325e794e35c0163ad (patch) | |
| tree | ba05bdfd0d8f7a33a8199e8e4de9ae3b1db4b877 /www/js/pdf.js | |
| parent | db648910938ec21d57e571be0e77c632fa53f89c (diff) | |
| download | wvs-vplan-518a0d0c1b029f4bab6f832325e794e35c0163ad.tar.gz wvs-vplan-518a0d0c1b029f4bab6f832325e794e35c0163ad.zip | |
aktualisiere Bibliotheken
Diffstat (limited to 'www/js/pdf.js')
| -rw-r--r-- | www/js/pdf.js | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/www/js/pdf.js b/www/js/pdf.js index 169a137..f4d5f2b 100644 --- a/www/js/pdf.js +++ b/www/js/pdf.js @@ -1,3 +1,5 @@ -"undefined"==typeof PDFJS&&(("undefined"!=typeof window?window:this).PDFJS={}),PDFJS.version="1.0.302",PDFJS.build="9308c7c",function(){"use strict";function t(t){PDFJS.verbosity>=PDFJS.VERBOSITY_LEVELS.infos&&console.log("Info: "+t)}function e(t){PDFJS.verbosity>=PDFJS.VERBOSITY_LEVELS.warnings&&console.log("Warning: "+t)}function n(t){if(arguments.length>1){var e=["Error:"];e.push.apply(e,arguments),console.log.apply(console,e),t=[].join.call(arguments," ")}else console.log("Error: "+t);throw console.log(r()),E.notify(_.unknown),new Error(t)}function r(){try{throw new Error}catch(t){return t.stack?t.stack.split("\n").slice(2).join("\n"):""}}function a(t,e){t||n(e)}function i(t,e){if(!e)return t;if(/^[a-z][a-z0-9+\-.]*:/i.test(e))return e;var n;if("/"==e.charAt(0))return n=t.indexOf("://"),"/"===e.charAt(1)?++n:n=t.indexOf("/",n+3),t.substring(0,n)+e;var r=t.length;n=t.lastIndexOf("#"),r=n>=0?n:r,n=t.lastIndexOf("?",r),r=n>=0?n:r;var a=t.lastIndexOf("/",r);return t.substring(0,a+1)+e}function o(t,e){if(!t)return!1;var n=/^[a-z][a-z0-9+\-.]*(?=:)/i.exec(t);if(!n)return e;switch(n=n[0].toLowerCase()){case"http":case"https":case"ftp":case"mailto":return!0;default:return!1}}function s(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!1}),n}function c(t){var e=t.length,n=8192;if(n>e)return String.fromCharCode.apply(null,t);for(var r=[],a=0;e>a;a+=n){var i=Math.min(a+n,e),o=t.subarray(a,i);r.push(String.fromCharCode.apply(null,o))}return r.join("")}function l(t){for(var e=t.length,n=new Uint8Array(e),r=0;e>r;++r)n[r]=255&t.charCodeAt(r);return n}function h(t){return String.fromCharCode(t>>24&255,t>>16&255,t>>8&255,255&t)}function u(){var t=new Uint8Array(2);t[0]=1;var e=new Uint16Array(t.buffer);return 1===e[0]}function f(){var t=document.createElement("canvas");t.width=t.height=1;var e=t.getContext("2d"),n=e.createImageData(1,1);return"undefined"!=typeof n.data.buffer}function d(t){var e,n=t.length,r=[];if("þ"===t[0]&&"ÿ"===t[1])for(e=2;n>e;e+=2)r.push(String.fromCharCode(t.charCodeAt(e)<<8|t.charCodeAt(e+1)));else for(e=0;n>e;++e){var a=B[t.charCodeAt(e)];r.push(a?String.fromCharCode(a):t.charAt(e))}return r.join("")}function A(t){return"number"==typeof t}function p(t){return t instanceof Name}function g(t,e){if(!(t instanceof Dict))return!1;if(!e)return!0;var n=t.get("Type");return p(n)&&n.name==e}function m(t){return t instanceof Array}function v(t){return"object"==typeof t&&null!==t&&void 0!==t&&"byteLength"in t}function b(){var t={};return t.promise=new Promise(function(e,n){t.resolve=e,t.reject=n}),t}function y(t,e){this.name=t,this.comObj=e,this.callbackIndex=1,this.postMessageTransfers=!0;var r=this.callbacksCapabilities={},a=this.actionHandler={};a.console_log=[function(t){console.log.apply(console,t)}],a.console_error=[function(t){console.error.apply(console,t)}],a._unsupported_feature=[function(t){E.notify(t)}],e.onmessage=function(t){var i=t.data;if(i.isReply){var o=i.callbackId;if(i.callbackId in r){var s=r[o];delete r[o],"error"in i?s.reject(i.error):s.resolve(i.data)}else n("Cannot resolve callback "+o)}else if(i.action in a){var c=a[i.action];i.callbackId?Promise.resolve().then(function(){return c[0].call(c[1],i.data)}).then(function(t){e.postMessage({isReply:!0,callbackId:i.callbackId,data:t})},function(t){e.postMessage({isReply:!0,callbackId:i.callbackId,error:t})}):c[0].call(c[1],i.data)}else n("Unknown action from worker: "+i.action)}}function S(t,e,n){var r=new Image;r.onload=function(){n.resolve(t,r)},r.src=e}function x(t,e){var n=document.createElement("canvas");return n.width=t,n.height=e,n}function P(t){t.mozCurrentTransform||(t._scaleX=t._scaleX||1,t._scaleY=t._scaleY||1,t._originalSave=t.save,t._originalRestore=t.restore,t._originalRotate=t.rotate,t._originalScale=t.scale,t._originalTranslate=t.translate,t._originalTransform=t.transform,t._originalSetTransform=t.setTransform,t._transformMatrix=[t._scaleX,0,0,t._scaleY,0,0],t._transformStack=[],Object.defineProperty(t,"mozCurrentTransform",{get:function(){return this._transformMatrix}}),Object.defineProperty(t,"mozCurrentTransformInverse",{get:function(){var t=this._transformMatrix,e=t[0],n=t[1],r=t[2],a=t[3],i=t[4],o=t[5],s=e*a-n*r,c=n*r-e*a;return[a/s,n/c,r/c,e/s,(a*i-r*o)/c,(n*i-e*o)/s]}}),t.save=function(){var t=this._transformMatrix;this._transformStack.push(t),this._transformMatrix=t.slice(0,6),this._originalSave()},t.restore=function(){var t=this._transformStack.pop();t&&(this._transformMatrix=t,this._originalRestore())},t.translate=function(t,e){var n=this._transformMatrix;n[4]=n[0]*t+n[2]*e+n[4],n[5]=n[1]*t+n[3]*e+n[5],this._originalTranslate(t,e)},t.scale=function(t,e){var n=this._transformMatrix;n[0]=n[0]*t,n[1]=n[1]*t,n[2]=n[2]*e,n[3]=n[3]*e,this._originalScale(t,e)},t.transform=function(e,n,r,a,i,o){var s=this._transformMatrix;this._transformMatrix=[s[0]*e+s[2]*n,s[1]*e+s[3]*n,s[0]*r+s[2]*a,s[1]*r+s[3]*a,s[0]*i+s[2]*o+s[4],s[1]*i+s[3]*o+s[5]],t._originalTransform(e,n,r,a,i,o)},t.setTransform=function(e,n,r,a,i,o){this._transformMatrix=[e,n,r,a,i,o],t._originalSetTransform(e,n,r,a,i,o)},t.rotate=function(t){var e=Math.cos(t),n=Math.sin(t),r=this._transformMatrix;this._transformMatrix=[r[0]*e+r[2]*n,r[1]*e+r[3]*n,r[0]*-n+r[2]*e,r[1]*-n+r[3]*e,r[4],r[5]],this._originalRotate(t)})}function C(t){var e,n,r,a,i=1e3,o=t.width,s=t.height,c=o+1,l=new Uint8Array(c*(s+1)),h=new Uint8Array([0,2,4,0,1,0,5,4,8,10,0,8,0,2,1,0]),u=o+7&-8,f=t.data,d=new Uint8Array(u*s),A=0;for(e=0,a=f.length;a>e;e++)for(var p=128,g=f[e];p>0;)d[A++]=g&p?0:255,p>>=1;var m=0;for(A=0,0!==d[A]&&(l[0]=1,++m),n=1;o>n;n++)d[A]!==d[A+1]&&(l[n]=d[A]?2:1,++m),A++;for(0!==d[A]&&(l[n]=2,++m),e=1;s>e;e++){A=e*u,r=e*c,d[A-u]!==d[A]&&(l[r]=d[A]?1:8,++m);var v=(d[A]?4:0)+(d[A-u]?8:0);for(n=1;o>n;n++)v=(v>>2)+(d[A+1]?4:0)+(d[A-u+1]?8:0),h[v]&&(l[r+n]=h[v],++m),A++;if(d[A-u]!==d[A]&&(l[r+n]=d[A]?2:4,++m),m>i)return null}for(A=u*(s-1),r=e*c,0!==d[A]&&(l[r]=8,++m),n=1;o>n;n++)d[A]!==d[A+1]&&(l[r+n]=d[A]?4:8,++m),A++;if(0!==d[A]&&(l[r+n]=4,++m),m>i)return null;var b=new Int32Array([0,c,-1,0,-c,0,0,0,1]),y=[];for(e=0;m&&s>=e;e++){for(var S=e*c,x=S+o;x>S&&!l[S];)S++;if(S!==x){var P,C=[S%c,e],k=l[S],D=S;do{var T=b[k];do S+=T;while(!l[S]);P=l[S],5!==P&&10!==P?(k=P,l[S]=0):(k=P&51*k>>4,l[S]&=k>>2|k<<2),C.push(S%c),C.push(S/c|0),--m}while(D!==S);y.push(C),--e}}var w=function(t){t.save(),t.scale(1/o,-1/s),t.translate(0,-s),t.beginPath();for(var e=0,n=y.length;n>e;e++){var r=y[e];t.moveTo(r[0],r[1]);for(var a=2,i=r.length;i>a;a+=2)t.lineTo(r[a],r[a+1])}t.fill(),t.beginPath(),t.restore()};return w}function k(t){var e=le[t[0]];return e||n("Unknown IR type: "+t[0]),e.fromIR(t)}var D="undefined"==typeof window?this:window,T="undefined"==typeof window,w=[.001,0,0,.001,0,0],F={FILL:0,STROKE:1,FILL_STROKE:2,INVISIBLE:3,FILL_ADD_TO_PATH:4,STROKE_ADD_TO_PATH:5,FILL_STROKE_ADD_TO_PATH:6,ADD_TO_PATH:7,FILL_STROKE_MASK:3,ADD_TO_PATH_FLAG:4},R={GRAYSCALE_1BPP:1,RGB_24BPP:2,RGBA_32BPP:3};D.PDFJS||(D.PDFJS={}),D.PDFJS.pdfBug=!1,PDFJS.VERBOSITY_LEVELS={errors:0,warnings:1,infos:5};var L=PDFJS.OPS={dependency:1,setLineWidth:2,setLineCap:3,setLineJoin:4,setMiterLimit:5,setDash:6,setRenderingIntent:7,setFlatness:8,setGState:9,save:10,restore:11,transform:12,moveTo:13,lineTo:14,curveTo:15,curveTo2:16,curveTo3:17,closePath:18,rectangle:19,stroke:20,closeStroke:21,fill:22,eoFill:23,fillStroke:24,eoFillStroke:25,closeFillStroke:26,closeEOFillStroke:27,endPath:28,clip:29,eoClip:30,beginText:31,endText:32,setCharSpacing:33,setWordSpacing:34,setHScale:35,setLeading:36,setFont:37,setTextRenderingMode:38,setTextRise:39,moveText:40,setLeadingMoveText:41,setTextMatrix:42,nextLine:43,showText:44,showSpacedText:45,nextLineShowText:46,nextLineSetSpacingShowText:47,setCharWidth:48,setCharWidthAndBounds:49,setStrokeColorSpace:50,setFillColorSpace:51,setStrokeColor:52,setStrokeColorN:53,setFillColor:54,setFillColorN:55,setStrokeGray:56,setFillGray:57,setStrokeRGBColor:58,setFillRGBColor:59,setStrokeCMYKColor:60,setFillCMYKColor:61,shadingFill:62,beginInlineImage:63,beginImageData:64,endInlineImage:65,paintXObject:66,markPoint:67,markPointProps:68,beginMarkedContent:69,beginMarkedContentProps:70,endMarkedContent:71,beginCompat:72,endCompat:73,paintFormXObjectBegin:74,paintFormXObjectEnd:75,beginGroup:76,endGroup:77,beginAnnotations:78,endAnnotations:79,beginAnnotation:80,endAnnotation:81,paintJpegXObject:82,paintImageMaskXObject:83,paintImageMaskXObjectGroup:84,paintImageXObject:85,paintInlineImageXObject:86,paintInlineImageXObjectGroup:87,paintImageXObjectRepeat:88,paintImageMaskXObjectRepeat:89,paintSolidColorImageMask:90,constructPath:91},_=PDFJS.UNSUPPORTED_FEATURES={unknown:"unknown",forms:"forms",javaScript:"javaScript",smask:"smask",shadingPattern:"shadingPattern",font:"font"},E=PDFJS.UnsupportedManager=function(){var t=[];return{listen:function(e){t.push(e)},notify:function(n){e('Unsupported feature "'+n+'"');for(var r=0,a=t.length;a>r;r++)t[r](n)}}}();PDFJS.isValidUrl=o;{var I=PDFJS.PasswordResponses={NEED_PASSWORD:1,INCORRECT_PASSWORD:2},M=(function(){function t(t,e){this.name="PasswordException",this.message=t,this.code=e}return t.prototype=new Error,t.constructor=t,t}(),function(){function t(t,e){this.name="UnknownErrorException",this.message=t,this.details=e}return t.prototype=new Error,t.constructor=t,t}(),function(){function t(t){this.name="InvalidPDFException",this.message=t}return t.prototype=new Error,t.constructor=t,t}(),function(){function t(t){this.name="MissingPDFException",this.message=t}return t.prototype=new Error,t.constructor=t,t}(),function(){function t(t){this.message=t}return t.prototype=new Error,t.prototype.name="NotImplementedException",t.constructor=t,t}());!function(){function t(t,e){this.begin=t,this.end=e,this.message="Missing data ["+t+", "+e+")"}return t.prototype=new Error,t.prototype.name="MissingDataException",t.constructor=t,t}(),function(){function t(t){this.message=t}return t.prototype=new Error,t.prototype.name="XRefParseException",t.constructor=t,t}()}Object.defineProperty(PDFJS,"isLittleEndian",{configurable:!0,get:function(){return s(PDFJS,"isLittleEndian",u())}}),Object.defineProperty(PDFJS,"hasCanvasTypedArrays",{configurable:!0,get:function(){return s(PDFJS,"hasCanvasTypedArrays",f())}});var O=function(){function t(t,e){this.buffer=t,this.byteLength=t.length,this.length=void 0===e?this.byteLength>>2:e,n(this.length)}function e(t){return{get:function(){var e=this.buffer,n=t<<2;return(e[n]|e[n+1]<<8|e[n+2]<<16|e[n+3]<<24)>>>0},set:function(e){var n=this.buffer,r=t<<2;n[r]=255&e,n[r+1]=e>>8&255,n[r+2]=e>>16&255,n[r+3]=e>>>24&255}}}function n(n){for(;n>r;)Object.defineProperty(t.prototype,r,e(r)),r++}t.prototype=Object.create(null);var r=0;return t}(),j=[1,0,0,1,0,0],J=PDFJS.Util=function(){function t(){}return t.makeCssRgb=function(t){return"rgb("+t[0]+","+t[1]+","+t[2]+")"},t.transform=function(t,e){return[t[0]*e[0]+t[2]*e[1],t[1]*e[0]+t[3]*e[1],t[0]*e[2]+t[2]*e[3],t[1]*e[2]+t[3]*e[3],t[0]*e[4]+t[2]*e[5]+t[4],t[1]*e[4]+t[3]*e[5]+t[5]]},t.applyTransform=function(t,e){var n=t[0]*e[0]+t[1]*e[2]+e[4],r=t[0]*e[1]+t[1]*e[3]+e[5];return[n,r]},t.applyInverseTransform=function(t,e){var n=e[0]*e[3]-e[1]*e[2],r=(t[0]*e[3]-t[1]*e[2]+e[2]*e[5]-e[4]*e[3])/n,a=(-t[0]*e[1]+t[1]*e[0]+e[4]*e[1]-e[5]*e[0])/n;return[r,a]},t.getAxialAlignedBoundingBox=function(e,n){var r=t.applyTransform(e,n),a=t.applyTransform(e.slice(2,4),n),i=t.applyTransform([e[0],e[3]],n),o=t.applyTransform([e[2],e[1]],n);return[Math.min(r[0],a[0],i[0],o[0]),Math.min(r[1],a[1],i[1],o[1]),Math.max(r[0],a[0],i[0],o[0]),Math.max(r[1],a[1],i[1],o[1])]},t.inverseTransform=function(t){var e=t[0]*t[3]-t[1]*t[2];return[t[3]/e,-t[1]/e,-t[2]/e,t[0]/e,(t[2]*t[5]-t[4]*t[3])/e,(t[4]*t[1]-t[5]*t[0])/e]},t.apply3dTransform=function(t,e){return[t[0]*e[0]+t[1]*e[1]+t[2]*e[2],t[3]*e[0]+t[4]*e[1]+t[5]*e[2],t[6]*e[0]+t[7]*e[1]+t[8]*e[2]]},t.singularValueDecompose2dScale=function(t){var e=[t[0],t[2],t[1],t[3]],n=t[0]*e[0]+t[1]*e[2],r=t[0]*e[1]+t[1]*e[3],a=t[2]*e[0]+t[3]*e[2],i=t[2]*e[1]+t[3]*e[3],o=(n+i)/2,s=Math.sqrt((n+i)*(n+i)-4*(n*i-a*r))/2,c=o+s||1,l=o-s||1;return[Math.sqrt(c),Math.sqrt(l)]},t.normalizeRect=function(t){var e=t.slice(0);return t[0]>t[2]&&(e[0]=t[2],e[2]=t[0]),t[1]>t[3]&&(e[1]=t[3],e[3]=t[1]),e},t.intersect=function(e,n){function r(t,e){return t-e}var a=[e[0],e[2],n[0],n[2]].sort(r),i=[e[1],e[3],n[1],n[3]].sort(r),o=[];return e=t.normalizeRect(e),n=t.normalizeRect(n),a[0]===e[0]&&a[1]===n[0]||a[0]===n[0]&&a[1]===e[0]?(o[0]=a[1],o[2]=a[2],i[0]===e[1]&&i[1]===n[1]||i[0]===n[1]&&i[1]===e[1]?(o[1]=i[1],o[3]=i[2],o):!1):!1},t.sign=function(t){return 0>t?-1:1},t.concatenateToArray=function(t,e){Array.prototype.push.apply(t,e)},t.prependToArray=function(t,e){Array.prototype.unshift.apply(t,e)},t.extendObj=function(t,e){for(var n in e)t[n]=e[n]},t.getInheritableProperty=function(t,e){for(;t&&!t.has(e);)t=t.get("Parent");return t?t.get(e):null},t.inherit=function(t,e,n){t.prototype=Object.create(e.prototype),t.prototype.constructor=t;for(var r in n)t.prototype[r]=n[r]},t.loadScript=function(t,e){var n=document.createElement("script"),r=!1;n.setAttribute("src",t),e&&(n.onload=function(){r||e(),r=!0}),document.getElementsByTagName("head")[0].appendChild(n)},t}(),B=(PDFJS.PageViewport=function(){function t(t,e,n,r,a,i){this.viewBox=t,this.scale=e,this.rotation=n,this.offsetX=r,this.offsetY=a;var o,s,c,l,h=(t[2]+t[0])/2,u=(t[3]+t[1])/2;switch(n%=360,n=0>n?n+360:n){case 180:o=-1,s=0,c=0,l=1;break;case 90:o=0,s=1,c=1,l=0;break;case 270:o=0,s=-1,c=-1,l=0;break;default:o=1,s=0,c=0,l=-1}i&&(c=-c,l=-l);var f,d,A,p;0===o?(f=Math.abs(u-t[1])*e+r,d=Math.abs(h-t[0])*e+a,A=Math.abs(t[3]-t[1])*e,p=Math.abs(t[2]-t[0])*e):(f=Math.abs(h-t[0])*e+r,d=Math.abs(u-t[1])*e+a,A=Math.abs(t[2]-t[0])*e,p=Math.abs(t[3]-t[1])*e),this.transform=[o*e,s*e,c*e,l*e,f-o*e*h-c*e*u,d-s*e*h-l*e*u],this.width=A,this.height=p,this.fontScale=e}return t.prototype={clone:function(e){e=e||{};var n="scale"in e?e.scale:this.scale,r="rotation"in e?e.rotation:this.rotation;return new t(this.viewBox.slice(),n,r,this.offsetX,this.offsetY,e.dontFlip)},convertToViewportPoint:function(t,e){return J.applyTransform([t,e],this.transform)},convertToViewportRectangle:function(t){var e=J.applyTransform([t[0],t[1]],this.transform),n=J.applyTransform([t[2],t[3]],this.transform);return[e[0],e[1],n[0],n[1]]},convertToPdfPoint:function(t,e){return J.applyInverseTransform([t,e],this.transform)}},t}(),[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,728,711,710,729,733,731,730,732,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8226,8224,8225,8230,8212,8211,402,8260,8249,8250,8722,8240,8222,8220,8221,8216,8217,8218,8482,64257,64258,321,338,352,376,381,305,322,339,353,382,0,8364]);PDFJS.createPromiseCapability=b,function(){function t(t){this._status=n,this._handlers=[];try{t.call(this,this._resolve.bind(this),this._reject.bind(this))}catch(e){this._reject(e)}}if(D.Promise)return"function"!=typeof D.Promise.all&&(D.Promise.all=function(t){var e,n,r=0,a=[],i=new D.Promise(function(t,r){e=t,n=r});return t.forEach(function(t,i){r++,t.then(function(t){a[i]=t,r--,0===r&&e(a)},n)}),0===r&&e(a),i}),"function"!=typeof D.Promise.resolve&&(D.Promise.resolve=function(t){return new D.Promise(function(e){e(t)})}),"function"!=typeof D.Promise.reject&&(D.Promise.reject=function(t){return new D.Promise(function(e,n){n(t)})}),void("function"!=typeof D.Promise.prototype.catch&&(D.Promise.prototype.catch=function(t){return D.Promise.prototype.then(void 0,t)}));var n=0,r=1,a=2,i=500,o={handlers:[],running:!1,unhandledRejections:[],pendingRejectionCheck:!1,scheduleHandlers:function(t){t._status!=n&&(this.handlers=this.handlers.concat(t._handlers),t._handlers=[],this.running||(this.running=!0,setTimeout(this.runHandlers.bind(this),0)))},runHandlers:function(){for(var t=1,e=Date.now()+t;this.handlers.length>0;){var n=this.handlers.shift(),i=n.thisPromise._status,o=n.thisPromise._value;try{i===r?"function"==typeof n.onResolve&&(o=n.onResolve(o)):"function"==typeof n.onReject&&(o=n.onReject(o),i=r,n.thisPromise._unhandledRejection&&this.removeUnhandeledRejection(n.thisPromise))}catch(s){i=a,o=s}if(n.nextPromise._updateStatus(i,o),Date.now()>=e)break}return this.handlers.length>0?void setTimeout(this.runHandlers.bind(this),0):void(this.running=!1)},addUnhandledRejection:function(t){this.unhandledRejections.push({promise:t,time:Date.now()}),this.scheduleRejectionCheck()},removeUnhandeledRejection:function(t){t._unhandledRejection=!1;for(var e=0;e<this.unhandledRejections.length;e++)this.unhandledRejections[e].promise===t&&(this.unhandledRejections.splice(e),e--)},scheduleRejectionCheck:function(){this.pendingRejectionCheck||(this.pendingRejectionCheck=!0,setTimeout(function(){this.pendingRejectionCheck=!1;for(var t=Date.now(),n=0;n<this.unhandledRejections.length;n++)if(t-this.unhandledRejections[n].time>i){var r=this.unhandledRejections[n].promise._value,a="Unhandled rejection: "+r;r.stack&&(a+="\n"+r.stack),e(a),this.unhandledRejections.splice(n),n--}this.unhandledRejections.length&&this.scheduleRejectionCheck()}.bind(this),i))}};t.all=function(e){function n(t){o._status!==a&&(c=[],i(t))}var r,i,o=new t(function(t,e){r=t,i=e}),s=e.length,c=[];if(0===s)return r(c),o;for(var l=0,h=e.length;h>l;++l){var u=e[l],f=function(t){return function(e){o._status!==a&&(c[t]=e,s--,0===s&&r(c))}}(l);t.isPromise(u)?u.then(f,n):f(u)}return o},t.isPromise=function(t){return t&&"function"==typeof t.then},t.resolve=function(e){return new t(function(t){t(e)})},t.reject=function(e){return new t(function(t,n){n(e)})},t.prototype={_status:null,_value:null,_handlers:null,_unhandledRejection:null,_updateStatus:function(e,n){if(this._status!==r&&this._status!==a){if(e==r&&t.isPromise(n))return void n.then(this._updateStatus.bind(this,r),this._updateStatus.bind(this,a));this._status=e,this._value=n,e===a&&0===this._handlers.length&&(this._unhandledRejection=!0,o.addUnhandledRejection(this)),o.scheduleHandlers(this)}},_resolve:function(t){this._updateStatus(r,t)},_reject:function(t){this._updateStatus(a,t)},then:function(e,n){var r=new t(function(t,e){this.resolve=e,this.reject=e});return this._handlers.push({thisPromise:this,onResolve:e,onReject:n,nextPromise:r}),o.scheduleHandlers(this),r},"catch":function(t){return this.then(void 0,t)}},D.Promise=t}();var W=function(){function t(t,e,n){for(;t.length<n;)t+=e;return t}function n(){this.started={},this.times=[],this.enabled=!0}return n.prototype={time:function(t){this.enabled&&(t in this.started&&e("Timer is already running for "+t),this.started[t]=Date.now())},timeEnd:function(t){this.enabled&&(t in this.started||e("Timer has not been started for "+t),this.times.push({name:t,start:this.started[t],end:Date.now()}),delete this.started[t])},toString:function(){var e,n,r=this.times,a="",i=0;for(e=0,n=r.length;n>e;++e){var o=r[e].name;o.length>i&&(i=o.length)}for(e=0,n=r.length;n>e;++e){var s=r[e],c=s.end-s.start;a+=t(s.name," ",i)+" "+c+"ms\n"}return a}},n}();PDFJS.createBlob=function(t,e){if("undefined"!=typeof Blob)return new Blob([t],{type:e});var n=new MozBlobBuilder;return n.append(t),n.getBlob(e)},PDFJS.createObjectURL=function(){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";return function(e,n){if(!PDFJS.disableCreateObjectURL&&"undefined"!=typeof URL&&URL.createObjectURL){var r=PDFJS.createBlob(e,n);return URL.createObjectURL(r)}for(var a="data:"+n+";base64,",i=0,o=e.length;o>i;i+=3){var s=255&e[i],c=255&e[i+1],l=255&e[i+2],h=s>>2,u=(3&s)<<4|c>>4,f=o>i+1?(15&c)<<2|l>>6:64,d=o>i+2?63&l:64;a+=t[h]+t[u]+t[f]+t[d]}return a}}(),y.prototype={on:function(t,e,r){var a=this.actionHandler;a[t]&&n('There is already an actionName called "'+t+'"'),a[t]=[e,r]},send:function(t,e,n){var r={action:t,data:e};this.postMessage(r,n)},sendWithPromise:function(t,e,n){var r=this.callbackIndex++,a={action:t,data:e,callbackId:r},i=b();this.callbacksCapabilities[r]=i;try{this.postMessage(a,n)}catch(o){i.reject(o)}return i.promise},postMessage:function(t,e){e&&this.postMessageTransfers?this.comObj.postMessage(t,e):this.comObj.postMessage(t)}};var U=22,N=4,G=["Link","Text","Widget"],z=function(){function t(t,e,n){var r=J.getAxialAlignedBoundingBox(e,n),a=r[0],i=r[1],o=r[2],s=r[3];if(a===o||i===s)return[1,0,0,1,t[0],t[1]];var c=(t[2]-t[0])/(o-a),l=(t[3]-t[1])/(s-i);return[c,0,0,l,t[0]-a*c,t[1]-i*l]}function n(t){var e=t.get("AP");if(g(e)){var n,r=e.get("N");if(g(r)){var a=t.get("AS");a&&r.has(a.name)&&(n=r.get(a.name))}else n=r;return n}}function r(t){if(t.data)return void(this.data=t.data);var e=t.dict,r=this.data={};r.subtype=e.get("Subtype").name;var a=e.get("Rect")||[0,0,0,0];r.rect=J.normalizeRect(a),r.annotationFlags=e.get("F");var i=e.get("C");if(r.color=m(i)&&3===i.length?i:[0,0,0],e.has("BS")){var o=e.get("BS");r.borderWidth=o.has("W")?o.get("W"):1}else{var s=e.get("Border")||[0,0,1];r.borderWidth=s[2]||0;var c=s[3];if(r.borderWidth>0&&c)if(m(c)){var l=c.length;if(l>0){for(var h=!1,u=0,f=0;l>f;f++){var d=+c[f]>=0;if(!d){h=!0;break}c[f]>0&&u++}(h||0===u)&&(r.borderWidth=0)}}else r.borderWidth=0}this.appearance=n(e),r.hasAppearance=!!this.appearance,r.id=t.ref.num}return r.prototype={getData:function(){return this.data},hasHtml:function(){return!1},getHtmlElement:function(){throw new M("getHtmlElement() should be implemented in subclass")},getEmptyContainer:function(t,e,n){a(!T,"getEmptyContainer() should be called from main thread");var r=n||0;e=e||this.data.rect;var i=document.createElement(t);i.style.borderWidth=r+"px";var o=e[2]-e[0]-2*r,s=e[3]-e[1]-2*r;return i.style.width=o+"px",i.style.height=s+"px",i},isInvisible:function(){var t=this.data;return t&&-1!==G.indexOf(t.subtype)?!1:!!(t&&t.annotationFlags&&1&t.annotationFlags)},isViewable:function(){var t=this.data;return!(this.isInvisible()||!t||t.annotationFlags&&34&t.annotationFlags||!t.rect)},isPrintable:function(){var t=this.data;return!!(!this.isInvisible()&&t&&t.annotationFlags&&4&t.annotationFlags&&t.rect)},loadResources:function(t){return new Promise(function(e,n){this.appearance.dict.getAsync("Resources").then(function(r){if(!r)return void e();var a=new ObjectLoader(r.map,t,r.xref);a.load().then(function(){e(r)},n)},n)}.bind(this))},getOperatorList:function(e){if(!this.appearance)return Promise.resolve(new OperatorList);var n=this.data,r=this.appearance.dict,a=this.loadResources(["ExtGState","ColorSpace","Pattern","Shading","XObject","Font"]),i=r.get("BBox")||[0,0,1,1],o=r.get("Matrix")||[1,0,0,1,0,0],s=t(n.rect,i,o),c=this;return a.then(function(t){var r=new OperatorList;return r.addOp(L.beginAnnotation,[n.rect,s,o]),e.getOperatorList(c.appearance,t,r).then(function(){return r.addOp(L.endAnnotation,[]),c.appearance.reset(),r})})}},r.getConstructor=function(t,e){if(t){if("Link"===t)return V;if("Text"===t)return Q;if("Widget"===t){if(!e)return;return"Tx"===e?Y:X}return r}},r.fromData=function(t){var e=t.subtype,n=t.fieldType,a=r.getConstructor(e,n);return a?new a({data:t}):void 0},r.fromRef=function(t,n){var a=t.fetchIfRef(n);if(g(a)){var i=a.get("Subtype");if(i=p(i)?i.name:""){var o=J.getInheritableProperty(a,"FT");o=p(o)?o.name:"";var s=r.getConstructor(i,o);if(s){var c={dict:a,ref:n},l=new s(c);return l.isViewable()||l.isPrintable()?l:void e("unimplemented annotation type: "+i)}}}},r.appendToOperatorList=function(t,e,n,r,a){function i(t){o.reject(t)}for(var o=b(),s=[],c=0,l=t.length;l>c;++c)("display"===a&&t[c].isViewable()||"print"===a&&t[c].isPrintable())&&s.push(t[c].getOperatorList(r));return Promise.all(s).then(function(t){e.addOp(L.beginAnnotations,[]);for(var n=0,r=t.length;r>n;++n){var a=t[n];e.addOpList(a)}e.addOp(L.endAnnotations,[]),o.resolve()},i),o.promise},r}();PDFJS.Annotation=z;var X=function(){function t(t){if(z.call(this,t),!t.data){var e=t.dict,n=this.data;n.fieldValue=d(J.getInheritableProperty(e,"V")||""),n.alternativeText=d(e.get("TU")||""),n.defaultAppearance=J.getInheritableProperty(e,"DA")||"";var r=J.getInheritableProperty(e,"FT");n.fieldType=p(r)?r.name:"",n.fieldFlags=J.getInheritableProperty(e,"Ff")||0,this.fieldResources=J.getInheritableProperty(e,"DR")||Dict.empty;for(var a=[],i=e,o=t.ref;i;){var s=i.get("Parent"),c=i.getRaw("Parent"),l=i.get("T");if(l)a.unshift(d(l));else{var h,u,f=s.get("Kids");for(h=0,u=f.length;u>h;h++){var A=f[h];if(A.num==o.num&&A.gen==o.gen)break}a.unshift("`"+h)}i=s,o=c}n.fullName=a.join(".")}}var n=z.prototype;return J.inherit(t,z,{isViewable:function(){return"Sig"===this.data.fieldType?(e("unimplemented annotation type: Widget signature"),!1):n.isViewable.call(this)}}),t}(),Y=function(){function t(t){X.call(this,t),t.data||(this.data.textAlignment=J.getInheritableProperty(t.dict,"Q"))}function e(t,e,n){var r=t.style;if(r.fontSize=e.fontSize+"px",r.direction=e.fontDirection<0?"rtl":"ltr",n){r.fontWeight=n.black?n.bold?"bolder":"bold":n.bold?"bold":"normal",r.fontStyle=n.italic?"italic":"normal";var a=n.loadedName,i=a?'"'+a+'", ':"",o=n.fallbackName||"Helvetica, sans-serif";r.fontFamily=i+o}}return J.inherit(t,X,{hasHtml:function(){return!this.data.hasAppearance&&!!this.data.fieldValue},getHtmlElement:function(t){a(!T,"getHtmlElement() shall be called from main thread");var n=this.data,r=this.getEmptyContainer("div");r.style.display="table";var i=document.createElement("div");i.textContent=n.fieldValue;var o=n.textAlignment;i.style.textAlign=["left","center","right"][o],i.style.verticalAlign="middle",i.style.display="table-cell";var s=n.fontRefName?t.getData(n.fontRefName):null;return e(i,n,s),r.appendChild(i),r},getOperatorList:function(t){if(this.appearance)return z.prototype.getOperatorList.call(this,t);var e=new OperatorList,n=this.data;if(!n.defaultAppearance)return Promise.resolve(e);var r=new Stream(l(n.defaultAppearance));return t.getOperatorList(r,this.fieldResources,e).then(function(){return e})}}),t}(),H=function(){function t(t){z.call(this,t)}return J.inherit(t,z,{hasHtml:function(){return!0},highlight:function(){this.highlightElement&&this.highlightElement.hasAttribute("hidden")&&this.highlightElement.removeAttribute("hidden")},unhighlight:function(){this.highlightElement&&!this.highlightElement.hasAttribute("hidden")&&this.highlightElement.setAttribute("hidden",!0)},initContainer:function(){var t=this.data,e=t.rect,n=this.getEmptyContainer("section",e,t.borderWidth);n.style.backgroundColor=t.color;for(var r=t.color,a=[],i=0;3>i;++i)a[i]=Math.round(255*r[i]);t.colorCssRgb=J.makeCssRgb(a);var o=document.createElement("div");return o.className="annotationHighlight",o.style.left=o.style.top=-N+"px",o.style.right=o.style.bottom=-N+"px",o.setAttribute("hidden",!0),this.highlightElement=o,n.appendChild(this.highlightElement),n}}),t}(),Q=function(){function t(t){if(H.call(this,t),!t.data){var e=t.dict,n=this.data,r=e.get("Contents"),a=e.get("T");n.content=d(r||""),n.title=d(a||""),n.hasAppearance?n.name="NoIcon":(n.rect[1]=n.rect[3]-U,n.rect[2]=n.rect[0]+U,n.name=e.has("Name")?e.get("Name").name:"Note"),e.has("C")&&(n.hasBgColor=!0)}}var e=10;return J.inherit(t,H,{getHtmlElement:function(){a(!T,"getHtmlElement() shall be called from main thread");var t=this.data,n=t.rect;n[3]-n[1]<e&&(n[3]=n[1]+e),n[2]-n[0]<e&&(n[2]=n[0]+(n[3]-n[1]));var r=this.initContainer();r.className="annotText";var i=document.createElement("img");i.style.height=r.style.height,i.style.width=r.style.width;var o=t.name;i.src=PDFJS.imageResourcesPath+"annotation-"+o.toLowerCase()+".svg",i.alt="[{{type}} Annotation]",i.dataset.l10nId="text_annotation_type",i.dataset.l10nArgs=JSON.stringify({type:o});var s=document.createElement("div");s.className="annotTextContentWrapper",s.style.left=Math.floor(n[2]-n[0]+5)+"px",s.style.top="-10px";var c=document.createElement("div");c.className="annotTextContent",c.setAttribute("hidden",!0);var l,h;if(t.hasBgColor){var u=t.color,f=[];for(l=0;3>l;++l){var d=Math.round(255*u[l]);f[l]=Math.round(.7*(255-d))+d}c.style.backgroundColor=J.makeCssRgb(f)}var A=document.createElement("h1"),p=document.createElement("p");if(A.textContent=t.title,t.content||t.title){var g=document.createElement("span"),m=t.content.split(/(?:\r\n?|\n)/);for(l=0,h=m.length;h>l;++l){var v=m[l];g.appendChild(document.createTextNode(v)),h-1>l&&g.appendChild(document.createElement("br"))}p.appendChild(g);var b=!1,y=function(t){t&&(b=!0),c.hasAttribute("hidden")&&(r.style.zIndex+=1,c.removeAttribute("hidden"))},S=function(t){t&&(b=!1),c.hasAttribute("hidden")||b||(r.style.zIndex-=1,c.setAttribute("hidden",!0))},x=function(){b?S(!0):y(!0)};i.addEventListener("click",function(){x()},!1),i.addEventListener("mouseover",function(){y()},!1),i.addEventListener("mouseout",function(){S()},!1),c.addEventListener("click",function(){S(!0)},!1)}else c.setAttribute("hidden",!0);return c.appendChild(A),c.appendChild(p),s.appendChild(c),r.appendChild(i),r.appendChild(s),r}}),t}(),V=function(){function t(t){if(H.call(this,t),!t.data){var r=t.dict,a=this.data,i=r.get("A");if(i){var s=i.get("S").name;if("URI"===s){var c=i.get("URI");p(c)?c="/"+c.name:c&&(c=n(c)),o(c,!1)||(c=""),a.url=c}else if("GoTo"===s)a.dest=i.get("D");else if("GoToR"===s){var l=i.get("F");g(l)&&(c=l.get("F")||""),o(c,!1)||(c=""),a.url=c,a.dest=i.get("D")}else"Named"===s?a.action=i.get("N").name:e("unrecognized link type: "+s)}else if(r.has("Dest")){var h=r.get("Dest");a.dest=p(h)?h.name:h}}}function n(t){return t&&0===t.indexOf("www.")?"http://"+t:t}return J.inherit(t,H,{hasOperatorList:function(){return!1},getHtmlElement:function(){var t=this.initContainer();t.className="annotLink";var e=this.data;t.style.borderColor=e.colorCssRgb,t.style.borderStyle="solid";var n=document.createElement("a");return n.href=n.title=this.data.url||"",t.appendChild(n),t}}),t}();PDFJS.maxImageSize=void 0===PDFJS.maxImageSize?-1:PDFJS.maxImageSize,PDFJS.cMapUrl=void 0===PDFJS.cMapUrl?null:PDFJS.cMapUrl,PDFJS.cMapPacked=void 0===PDFJS.cMapPacked?!1:PDFJS.cMapPacked,PDFJS.disableFontFace=void 0===PDFJS.disableFontFace?!1:PDFJS.disableFontFace,PDFJS.imageResourcesPath=void 0===PDFJS.imageResourcesPath?"":PDFJS.imageResourcesPath,PDFJS.disableWorker=void 0===PDFJS.disableWorker?!1:PDFJS.disableWorker,PDFJS.workerSrc=void 0===PDFJS.workerSrc?null:PDFJS.workerSrc,PDFJS.disableRange=void 0===PDFJS.disableRange?!1:PDFJS.disableRange,PDFJS.disableAutoFetch=void 0===PDFJS.disableAutoFetch?!1:PDFJS.disableAutoFetch,PDFJS.pdfBug=void 0===PDFJS.pdfBug?!1:PDFJS.pdfBug,PDFJS.postMessageTransfers=void 0===PDFJS.postMessageTransfers?!0:PDFJS.postMessageTransfers,PDFJS.disableCreateObjectURL=void 0===PDFJS.disableCreateObjectURL?!1:PDFJS.disableCreateObjectURL,PDFJS.disableWebGL=void 0===PDFJS.disableWebGL?!0:PDFJS.disableWebGL,PDFJS.useOnlyCssZoom=void 0===PDFJS.useOnlyCssZoom?!1:PDFJS.useOnlyCssZoom,PDFJS.verbosity=void 0===PDFJS.verbosity?PDFJS.VERBOSITY_LEVELS.warnings:PDFJS.verbosity,PDFJS.getDocument=function(t,e,r,a){var o,s,c;"string"==typeof t?t={url:t}:v(t)?t={data:t}:"object"!=typeof t&&n("Invalid parameter in getDocument, need either Uint8Array, string or a parameter object"),t.url||t.data||n("Invalid parameter array, need either .data or .url");var l={};for(var h in t)l[h]="url"!==h||"undefined"==typeof window?t[h]:i(window.location.href,t[h]);return o=b(),s=b(),c=new Z(o,s,e,a),o.promise.then(function(){c.passwordCallback=r,c.fetchDocument(l)}),s.promise};var q=function(){function t(t,e){this.pdfInfo=t,this.transport=e}return t.prototype={get numPages(){return this.pdfInfo.numPages},get fingerprint(){return this.pdfInfo.fingerprint},getPage:function(t){return this.transport.getPage(t)},getPageIndex:function(t){return this.transport.getPageIndex(t)},getDestinations:function(){return this.transport.getDestinations()},getAttachments:function(){return this.transport.getAttachments()},getJavaScript:function(){return this.transport.getJavaScript()},getOutline:function(){return this.transport.getOutline()},getMetadata:function(){return this.transport.getMetadata()},getData:function(){return this.transport.getData() -},getDownloadInfo:function(){return this.transport.downloadInfoCapability.promise},cleanup:function(){this.transport.startCleanup()},destroy:function(){this.transport.destroy()}},t}(),K=function(){function t(t,e,n){this.pageIndex=t,this.pageInfo=e,this.transport=n,this.stats=new W,this.stats.enabled=!!D.PDFJS.enableStats,this.commonObjs=n.commonObjs,this.objs=new $,this.cleanupAfterRender=!1,this.pendingDestroy=!1,this.intentStates={}}return t.prototype={get pageNumber(){return this.pageIndex+1},get rotate(){return this.pageInfo.rotate},get ref(){return this.pageInfo.ref},get view(){return this.pageInfo.view},getViewport:function(t,e){return arguments.length<2&&(e=this.rotate),new PDFJS.PageViewport(this.view,t,e,0,0)},getAnnotations:function(){if(this.annotationsPromise)return this.annotationsPromise;var t=this.transport.getAnnotations(this.pageIndex);return this.annotationsPromise=t,t},render:function(t){function e(t){var e=a.renderTasks.indexOf(i);e>=0&&a.renderTasks.splice(e,1),s.cleanupAfterRender&&(s.pendingDestroy=!0),s._tryDestroy(),t?i.capability.reject(t):i.capability.resolve(),n.timeEnd("Rendering"),n.timeEnd("Overall")}var n=this.stats;n.time("Overall"),this.pendingDestroy=!1;var r="intent"in t&&"print"==t.intent?"print":"display";this.intentStates[r]||(this.intentStates[r]={});var a=this.intentStates[r];a.displayReadyCapability||(a.receivingOperatorList=!0,a.displayReadyCapability=b(),a.operatorList={fnArray:[],argsArray:[],lastChunk:!1},this.stats.time("Page Request"),this.transport.messageHandler.send("RenderPageRequest",{pageIndex:this.pageNumber-1,intent:r}));var i=new ee(e,t,this.objs,this.commonObjs,a.operatorList,this.pageNumber);a.renderTasks||(a.renderTasks=[]),a.renderTasks.push(i);var o=new te(i),s=this;return a.displayReadyCapability.promise.then(function(t){return s.pendingDestroy?void e():(n.time("Rendering"),i.initalizeGraphics(t),void i.operatorListChanged())},function(t){e(t)}),o},getTextContent:function(){return this.transport.messageHandler.sendWithPromise("GetTextContent",{pageIndex:this.pageNumber-1})},destroy:function(){this.pendingDestroy=!0,this._tryDestroy()},_tryDestroy:function(){this.pendingDestroy&&!Object.keys(this.intentStates).some(function(t){var e=this.intentStates[t];return 0!==e.renderTasks.length||e.receivingOperatorList},this)&&(Object.keys(this.intentStates).forEach(function(t){delete this.intentStates[t]},this),this.objs.clear(),this.annotationsPromise=null,this.pendingDestroy=!1)},_startRenderPage:function(t,e){var n=this.intentStates[e];n.displayReadyCapability.resolve(t)},_renderPageChunk:function(t,e){var n,r,a=this.intentStates[e];for(n=0,r=t.length;r>n;n++)a.operatorList.fnArray.push(t.fnArray[n]),a.operatorList.argsArray.push(t.argsArray[n]);for(a.operatorList.lastChunk=t.lastChunk,n=0;n<a.renderTasks.length;n++)a.renderTasks[n].operatorListChanged();t.lastChunk&&(a.receivingOperatorList=!1,this._tryDestroy())}},t}(),Z=function(){function r(e,r,a,i){if(this.pdfDataRangeTransport=a,this.workerReadyCapability=r,this.progressCallback=i,this.commonObjs=new $,this.pageCache=[],this.pagePromises=[],this.downloadInfoCapability=b(),this.passwordCallback=null,!D.PDFJS.disableWorker&&"undefined"!=typeof Worker){var o=PDFJS.workerSrc;o||n("No PDFJS.workerSrc specified");try{var s=new Worker(o),c=new y("main",s);this.messageHandler=c,c.on("test",function(t){var n=t&&t.supportTypedArray;n?(this.worker=s,t.supportTransfers||(PDFJS.postMessageTransfers=!1),this.setupMessageHandler(c),e.resolve()):(D.PDFJS.disableWorker=!0,this.loadFakeWorkerFiles().then(function(){this.setupFakeWorker(),e.resolve()}.bind(this)))}.bind(this));var l=new Uint8Array([PDFJS.postMessageTransfers?255:0]);try{c.send("test",l,[l.buffer])}catch(h){t("Cannot use postMessage transfers"),l[0]=0,c.send("test",l)}return}catch(u){t("The worker has been disabled.")}}D.PDFJS.disableWorker=!0,this.loadFakeWorkerFiles().then(function(){this.setupFakeWorker(),e.resolve()}.bind(this))}return r.prototype={destroy:function(){this.pageCache=[],this.pagePromises=[];var t=this;this.messageHandler.sendWithPromise("Terminate",null).then(function(){fe.clear(),t.worker&&t.worker.terminate()})},loadFakeWorkerFiles:function(){return PDFJS.fakeWorkerFilesLoadedCapability||(PDFJS.fakeWorkerFilesLoadedCapability=b(),J.loadScript(PDFJS.workerSrc)),PDFJS.fakeWorkerFilesLoadedCapability.promise},setupFakeWorker:function(){e("Setting up fake worker.");var t={postMessage:function(e){t.onmessage({data:e})},terminate:function(){}},n=new y("main",t);this.setupMessageHandler(n),PDFJS.WorkerMessageHandler.setup(n)},setupMessageHandler:function(t){function r(e){t.send("UpdatePassword",e)}this.messageHandler=t;var a=this.pdfDataRangeTransport;a&&(a.addRangeListener(function(e,n){t.send("OnDataRange",{begin:e,chunk:n})}),a.addProgressListener(function(e){t.send("OnDataProgress",{loaded:e})}),t.on("RequestDataRange",function(t){a.requestDataRange(t.begin,t.end)},this)),t.on("GetDoc",function(t){var e=t.pdfInfo;this.numPages=t.pdfInfo.numPages;var n=new q(e,this);this.pdfDocument=n,this.workerReadyCapability.resolve(n)},this),t.on("NeedPassword",function(t){return this.passwordCallback?this.passwordCallback(r,I.NEED_PASSWORD):void this.workerReadyCapability.reject(t.exception.message,t.exception)},this),t.on("IncorrectPassword",function(t){return this.passwordCallback?this.passwordCallback(r,I.INCORRECT_PASSWORD):void this.workerReadyCapability.reject(t.exception.message,t.exception)},this),t.on("InvalidPDF",function(t){this.workerReadyCapability.reject(t.exception.name,t.exception)},this),t.on("MissingPDF",function(t){this.workerReadyCapability.reject(t.exception.message,t.exception)},this),t.on("UnknownError",function(t){this.workerReadyCapability.reject(t.exception.message,t.exception)},this),t.on("DataLoaded",function(t){this.downloadInfoCapability.resolve(t)},this),t.on("StartRenderPage",function(t){var e=this.pageCache[t.pageIndex];e.stats.timeEnd("Page Request"),e._startRenderPage(t.transparency,t.intent)},this),t.on("RenderPageChunk",function(t){var e=this.pageCache[t.pageIndex];e._renderPageChunk(t.operatorList,t.intent)},this),t.on("commonobj",function(t){var n=t[0],r=t[1];if(!this.commonObjs.hasData(n))switch(r){case"Font":var a,i=t[2];if("error"in i){var o=i.error;e("Error during font loading: "+o),this.commonObjs.resolve(n,o);break}a=new de(i),fe.bind([a],function(){this.commonObjs.resolve(n,a)}.bind(this));break;case"FontPath":this.commonObjs.resolve(n,t[2]);break;default:o("Got unknown common object type "+r)}},this),t.on("obj",function(t){var e,r=t[0],a=t[1],i=t[2],o=this.pageCache[a];if(!o.objs.hasData(r))switch(i){case"JpegStream":e=t[3],S(r,e,o.objs);break;case"Image":e=t[3],o.objs.resolve(r,e);var s=8e6;e&&"data"in e&&e.data.length>s&&(o.cleanupAfterRender=!0);break;default:n("Got unknown object type "+i)}},this),t.on("DocProgress",function(t){this.progressCallback&&this.progressCallback({loaded:t.loaded,total:t.total})},this),t.on("DocError",function(t){this.workerReadyCapability.reject(t)},this),t.on("PageError",function(t){var e=this.pageCache[t.pageNum-1],r=e.intentStates[t.intent];r.displayReadyCapability.promise?r.displayReadyCapability.reject(t.error):n(t.error)},this),t.on("JpegDecode",function(t){var e=t[0],n=t[1];return 3!=n&&1!=n?Promise.reject(new Error("Only 3 components or 1 component can be returned")):new Promise(function(t,r){var a=new Image;a.onload=function(){var e=a.width,r=a.height,i=e*r,o=4*i,s=new Uint8Array(i*n),c=x(e,r),l=c.getContext("2d");l.drawImage(a,0,0);var h,u,f=l.getImageData(0,0,e,r).data;if(3==n)for(h=0,u=0;o>h;h+=4,u+=3)s[u]=f[h],s[u+1]=f[h+1],s[u+2]=f[h+2];else if(1==n)for(h=0,u=0;o>h;h+=4,u++)s[u]=f[h];t({data:s,width:e,height:r})},a.onerror=function(){r(new Error("JpegDecode failed to load image"))},a.src=e})})},fetchDocument:function(t){t.disableAutoFetch=PDFJS.disableAutoFetch,t.chunkedViewerLoading=!!this.pdfDataRangeTransport,this.messageHandler.send("GetDocRequest",{source:t,disableRange:PDFJS.disableRange,maxImageSize:PDFJS.maxImageSize,cMapUrl:PDFJS.cMapUrl,cMapPacked:PDFJS.cMapPacked,disableFontFace:PDFJS.disableFontFace,disableCreateObjectURL:PDFJS.disableCreateObjectURL,verbosity:PDFJS.verbosity})},getData:function(){return this.messageHandler.sendWithPromise("GetData",null)},getPage:function(t){if(0>=t||t>this.numPages||(0|t)!==t)return Promise.reject(new Error("Invalid page request"));var e=t-1;if(e in this.pagePromises)return this.pagePromises[e];var n=this.messageHandler.sendWithPromise("GetPage",{pageIndex:e}).then(function(t){var n=new K(e,t,this);return this.pageCache[e]=n,n}.bind(this));return this.pagePromises[e]=n,n},getPageIndex:function(t){return this.messageHandler.sendWithPromise("GetPageIndex",{ref:t})},getAnnotations:function(t){return this.messageHandler.sendWithPromise("GetAnnotations",{pageIndex:t})},getDestinations:function(){return this.messageHandler.sendWithPromise("GetDestinations",null)},getAttachments:function(){return this.messageHandler.sendWithPromise("GetAttachments",null)},getJavaScript:function(){return this.messageHandler.sendWithPromise("GetJavaScript",null)},getOutline:function(){return this.messageHandler.sendWithPromise("GetOutline",null)},getMetadata:function(){return this.messageHandler.sendWithPromise("GetMetadata",null).then(function(t){return{info:t[0],metadata:t[1]?new PDFJS.Metadata(t[1]):null}})},startCleanup:function(){this.messageHandler.sendWithPromise("Cleanup",null).then(function(){for(var t=0,e=this.pageCache.length;e>t;t++){var n=this.pageCache[t];n&&n.destroy()}this.commonObjs.clear(),fe.clear()}.bind(this))}},r}(),$=function(){function t(){this.objs={}}return t.prototype={ensureObj:function(t){if(this.objs[t])return this.objs[t];var e={capability:b(),data:null,resolved:!1};return this.objs[t]=e,e},get:function(t,e){if(e)return this.ensureObj(t).capability.promise.then(e),null;var r=this.objs[t];return r&&r.resolved||n("Requesting object that isn't resolved yet "+t),r.data},resolve:function(t,e){var n=this.ensureObj(t);n.resolved=!0,n.data=e,n.capability.resolve(e)},isResolved:function(t){var e=this.objs;return e[t]?e[t].resolved:!1},hasData:function(t){return this.isResolved(t)},getData:function(t){var e=this.objs;return e[t]&&e[t].resolved?e[t].data:null},clear:function(){this.objs={}}},t}(),te=function(){function t(t){this.internalRenderTask=t,this.promise=this.internalRenderTask.capability.promise}return t.prototype={cancel:function(){this.internalRenderTask.cancel()},then:function(t,e){return this.promise.then(t,e)}},t}(),ee=function(){function t(t,e,n,r,a,i){this.callback=t,this.params=e,this.objs=n,this.commonObjs=r,this.operatorListIdx=null,this.operatorList=a,this.pageNumber=i,this.running=!1,this.graphicsReadyCallback=null,this.graphicsReady=!1,this.cancelled=!1,this.capability=b(),this._continueBound=this._continue.bind(this),this._scheduleNextBound=this._scheduleNext.bind(this),this._nextBound=this._next.bind(this)}return t.prototype={initalizeGraphics:function(t){if(!this.cancelled){PDFJS.pdfBug&&"StepperManager"in D&&D.StepperManager.enabled&&(this.stepper=D.StepperManager.create(this.pageNumber-1),this.stepper.init(this.operatorList),this.stepper.nextBreakPoint=this.stepper.getNextBreakPoint());var e=this.params;this.gfx=new se(e.canvasContext,this.commonObjs,this.objs,e.imageLayer),this.gfx.beginDrawing(e.viewport,t),this.operatorListIdx=0,this.graphicsReady=!0,this.graphicsReadyCallback&&this.graphicsReadyCallback()}},cancel:function(){this.running=!1,this.cancelled=!0,this.callback("cancelled")},operatorListChanged:function(){return this.graphicsReady?(this.stepper&&this.stepper.updateOperatorList(this.operatorList),void(this.running||this._continue())):void(this.graphicsReadyCallback||(this.graphicsReadyCallback=this._continueBound))},_continue:function(){this.running=!0,this.cancelled||(this.params.continueCallback?this.params.continueCallback(this._scheduleNextBound):this._scheduleNext())},_scheduleNext:function(){window.requestAnimationFrame(this._nextBound)},_next:function(){this.cancelled||(this.operatorListIdx=this.gfx.executeOperatorList(this.operatorList,this.operatorListIdx,this._continueBound,this.stepper),this.operatorListIdx===this.operatorList.argsArray.length&&(this.running=!1,this.operatorList.lastChunk&&(this.gfx.endDrawing(),this.callback())))}},t}(),ne=(PDFJS.Metadata=function(){function t(t){return t.replace(/>\\376\\377([^<]+)/g,function(t,e){for(var n=e.replace(/\\([0-3])([0-7])([0-7])/g,function(t,e,n,r){return String.fromCharCode(64*e+8*n+1*r)}),r="",a=0;a<n.length;a+=2){var i=256*n.charCodeAt(a)+n.charCodeAt(a+1);r+="&#x"+(65536+i).toString(16).substring(1)+";"}return">"+r})}function e(e){if("string"==typeof e){e=t(e);var r=new DOMParser;e=r.parseFromString(e,"application/xml")}else e instanceof Document||n("Metadata: Invalid metadata object");this.metaDocument=e,this.metadata={},this.parse()}return e.prototype={parse:function(){var t=this.metaDocument,e=t.documentElement;if("rdf:rdf"!==e.nodeName.toLowerCase())for(e=e.firstChild;e&&"rdf:rdf"!==e.nodeName.toLowerCase();)e=e.nextSibling;var n=e?e.nodeName.toLowerCase():null;if(e&&"rdf:rdf"===n&&e.hasChildNodes()){var r,a,i,o,s,c,l,h=e.childNodes;for(o=0,c=h.length;c>o;o++)if(r=h[o],"rdf:description"===r.nodeName.toLowerCase())for(s=0,l=r.childNodes.length;l>s;s++)"#text"!==r.childNodes[s].nodeName.toLowerCase()&&(a=r.childNodes[s],i=a.nodeName.toLowerCase(),this.metadata[i]=a.textContent.trim())}},get:function(t){return this.metadata[t]||null},has:function(t){return"undefined"!=typeof this.metadata[t]}},e}(),16),re=4096,ae=!0,ie=function(){var t={};return{getCanvas:function(e,n,r,a){var i;if(e in t)i=t[e],i.canvas.width=n,i.canvas.height=r,i.context.setTransform(1,0,0,1,0,0);else{var o=x(n,r),s=o.getContext("2d");a&&P(s),t[e]=i={canvas:o,context:s}}return i},clear:function(){t={}}}}(),oe=function(){function t(t){this.alphaIsShape=!1,this.fontSize=0,this.fontSizeScale=1,this.textMatrix=j,this.textMatrixScale=1,this.fontMatrix=w,this.leading=0,this.x=0,this.y=0,this.lineX=0,this.lineY=0,this.charSpacing=0,this.wordSpacing=0,this.textHScale=1,this.textRenderingMode=F.FILL,this.textRise=0,this.fillColor="#000000",this.strokeColor="#000000",this.fillAlpha=1,this.strokeAlpha=1,this.lineWidth=1,this.activeSMask=null,this.old=t}return t.prototype={clone:function(){return Object.create(this)},setCurrentPoint:function(t,e){this.x=t,this.y=e}},t}(),se=function(){function r(t,e,n,r){this.ctx=t,this.current=new oe,this.stateStack=[],this.pendingClip=null,this.pendingEOFill=!1,this.res=null,this.xobjs=null,this.commonObjs=e,this.objs=n,this.imageLayer=r,this.groupStack=[],this.processingType3=null,this.baseTransform=null,this.baseTransformStack=[],this.groupLevel=0,this.smaskStack=[],this.smaskCounter=0,this.tempSMask=null,t&&P(t)}function i(t,e){if("undefined"!=typeof ImageData&&e instanceof ImageData)return void t.putImageData(e,0,0);var r,a,i,o,s,c=e.height,l=e.width,h=16,u=c/h,f=Math.floor(u),d=Math.ceil(u),A=c-f*h,p=t.createImageData(l,h),g=0,m=e.data,v=p.data;if(e.kind===R.GRAYSCALE_1BPP){var b=m.byteLength,y=PDFJS.hasCanvasTypedArrays?new Uint32Array(v.buffer):new O(v),S=y.length,x=l+7>>3,P=4294967295,C=PDFJS.isLittleEndian||!PDFJS.hasCanvasTypedArrays?4278190080:255;for(a=0;d>a;a++){for(o=f>a?h:A,r=0,i=0;o>i;i++){for(var k=b-g,D=0,T=k>x?l:8*k-7,w=-8&T,F=0,L=0;w>D;D+=8)L=m[g++],y[r++]=128&L?P:C,y[r++]=64&L?P:C,y[r++]=32&L?P:C,y[r++]=16&L?P:C,y[r++]=8&L?P:C,y[r++]=4&L?P:C,y[r++]=2&L?P:C,y[r++]=1&L?P:C;for(;T>D;D++)0===F&&(L=m[g++],F=128),y[r++]=L&F?P:C,F>>=1}for(;S>r;)y[r++]=0;t.putImageData(p,0,a*h)}}else if(e.kind===R.RGBA_32BPP){for(i=0,s=l*h*4,a=0;f>a;a++)v.set(m.subarray(g,g+s)),g+=s,t.putImageData(p,0,i),i+=h;d>a&&(s=l*A*4,v.set(m.subarray(g,g+s)),t.putImageData(p,0,i))}else if(e.kind===R.RGB_24BPP)for(o=h,s=l*o,a=0;d>a;a++){for(a>=f&&(o=A,s=l*o),r=0,i=s;i--;)v[r++]=m[g++],v[r++]=m[g++],v[r++]=m[g++],v[r++]=255;t.putImageData(p,0,a*h)}else n("bad image kind: "+e.kind)}function o(t,e){for(var n=e.height,r=e.width,a=16,i=n/a,o=Math.floor(i),s=Math.ceil(i),c=n-o*a,l=t.createImageData(r,a),h=0,u=e.data,f=l.data,d=0;s>d;d++){for(var A=o>d?a:c,p=3,g=0;A>g;g++)for(var m=0,v=0;r>v;v++){if(!m){var b=u[h++];m=128}f[p]=b&m?0:255,p+=4,m>>=1}t.putImageData(l,0,d*a)}}function c(t,e){for(var n=["strokeStyle","fillStyle","fillRule","globalAlpha","lineWidth","lineCap","lineJoin","miterLimit","globalCompositeOperation","font"],r=0,a=n.length;a>r;r++){var i=n[r];i in t&&(e[i]=t[i])}"setLineDash"in t?(e.setLineDash(t.getLineDash()),e.lineDashOffset=t.lineDashOffset):"mozDash"in t&&(e.mozDash=t.mozDash,e.mozDashOffset=t.mozDashOffset)}function l(t,e,n,r,a,i){var o;o=i?function(t,e,n,r){for(var a=r.length,i=3;a>i;i+=4){var o=r[i]/255;if(0===o)r[i-3]=t,r[i-2]=e,r[i-1]=n;else if(1>o){var s=1-o;r[i-3]=r[i-3]*o+t*s|0,r[i-2]=r[i-2]*o+e*s|0,r[i-1]=r[i-1]*o+n*s|0}}}.bind(null,i[0],i[1],i[2]):function(){};var s;s="Luminosity"===a?function(t,e){for(var n=t.length,r=3;n>r;r+=4){var a=77*t[r-3]+152*t[r-2]+28*t[r-1]|0;e[r]=e[r]*a>>16}}:function(t,e){for(var n=t.length,r=3;n>r;r+=4){var a=t[r];e[r]=e[r]*a/255|0}};for(var c=65536,l=Math.min(r,Math.ceil(c/n)),h=0;r>h;h+=l){var u=Math.min(l,r-h),f=t.getImageData(0,h,n,u),d=e.getImageData(0,h,n,u);o(f.data),s(f.data,d.data),t.putImageData(d,0,h)}}function h(t,e,n){var r=e.canvas,a=e.context;t.setTransform(e.scaleX,0,0,e.scaleY,e.offsetX,e.offsetY);var i=e.backdrop||null;if(ce.isEnabled){var o=ce.composeSMask(n.canvas,r,{subtype:e.subtype,backdrop:i});return t.setTransform(1,0,0,1,0,0),void t.drawImage(o,e.offsetX,e.offsetY)}l(a,n,r.width,r.height,e.subtype,i),t.drawImage(r,0,0)}var u=15,f=["butt","round","square"],d=["miter","round","bevel"],p={},g={};r.prototype={beginDrawing:function(t,e){var n=this.ctx.canvas.width,r=this.ctx.canvas.height;e?this.ctx.clearRect(0,0,n,r):(this.ctx.mozOpaque=!0,this.ctx.save(),this.ctx.fillStyle="rgb(255, 255, 255)",this.ctx.fillRect(0,0,n,r),this.ctx.restore());var a=t.transform;this.ctx.save(),this.ctx.transform.apply(this.ctx,a),this.baseTransform=this.ctx.mozCurrentTransform.slice(),this.imageLayer&&this.imageLayer.beginLayout()},executeOperatorList:function(t,e,n,r){var a=t.argsArray,i=t.fnArray,o=e||0,s=a.length;if(s==o)return o;for(var c,l=Date.now()+u,h=this.commonObjs,f=this.objs;;){if(r&&o===r.nextBreakPoint)return r.breakIt(o,n),o;if(c=i[o],c!==L.dependency)this[c].apply(this,a[o]);else for(var d=a[o],A=0,p=d.length;p>A;A++){var g=d[A],m="g_"==g.substring(0,2);if(!m&&!f.isResolved(g))return f.get(g,n),o;if(m&&!h.isResolved(g))return h.get(g,n),o}if(o++,o==s)return o;if(n&&Date.now()>l)return n(),o}},endDrawing:function(){this.ctx.restore(),ie.clear(),ce.clear(),this.imageLayer&&this.imageLayer.endLayout()},setLineWidth:function(t){this.current.lineWidth=t,this.ctx.lineWidth=t},setLineCap:function(t){this.ctx.lineCap=f[t]},setLineJoin:function(t){this.ctx.lineJoin=d[t]},setMiterLimit:function(t){this.ctx.miterLimit=t},setDash:function(t,e){var n=this.ctx;"setLineDash"in n?(n.setLineDash(t),n.lineDashOffset=e):(n.mozDash=t,n.mozDashOffset=e)},setRenderingIntent:function(){},setFlatness:function(){},setGState:function(t){for(var n=0,r=t.length;r>n;n++){var a=t[n],i=a[0],o=a[1];switch(i){case"LW":this.setLineWidth(o);break;case"LC":this.setLineCap(o);break;case"LJ":this.setLineJoin(o);break;case"ML":this.setMiterLimit(o);break;case"D":this.setDash(o[0],o[1]);break;case"RI":this.setRenderingIntent(o);break;case"FL":this.setFlatness(o);break;case"Font":this.setFont(o[0],o[1]);break;case"CA":this.current.strokeAlpha=a[1];break;case"ca":this.current.fillAlpha=a[1],this.ctx.globalAlpha=a[1];break;case"BM":if(o&&o.name&&"Normal"!==o.name){var s=o.name.replace(/([A-Z])/g,function(t){return"-"+t.toLowerCase()}).substring(1);this.ctx.globalCompositeOperation=s,this.ctx.globalCompositeOperation!==s&&e('globalCompositeOperation "'+s+'" is not supported')}else this.ctx.globalCompositeOperation="source-over";break;case"SMask":this.current.activeSMask&&this.endSMaskGroup(),this.current.activeSMask=o?this.tempSMask:null,this.current.activeSMask&&this.beginSMaskGroup(),this.tempSMask=null}}},beginSMaskGroup:function(){var t=this.current.activeSMask,e=t.canvas.width,n=t.canvas.height,r="smaskGroupAt"+this.groupLevel,a=ie.getCanvas(r,e,n,!0),i=this.ctx,o=i.mozCurrentTransform;this.ctx.save();var s=a.context;s.scale(1/t.scaleX,1/t.scaleY),s.translate(-t.offsetX,-t.offsetY),s.transform.apply(s,o),c(i,s),this.ctx=s,this.setGState([["BM","Normal"],["ca",1],["CA",1]]),this.groupStack.push(i),this.groupLevel++},endSMaskGroup:function(){var t=this.ctx;this.groupLevel--,this.ctx=this.groupStack.pop(),h(this.ctx,this.current.activeSMask,t),this.ctx.restore()},save:function(){this.ctx.save();var t=this.current;this.stateStack.push(t),this.current=t.clone(),this.current.activeSMask&&(this.current.activeSMask=null)},restore:function(){var t=this.stateStack.pop();t&&(this.current.activeSMask&&this.endSMaskGroup(),this.current=t,this.ctx.restore())},transform:function(t,e,n,r,a,i){this.ctx.transform(t,e,n,r,a,i)},constructPath:function(t,e){for(var n=this.ctx,r=this.current,a=r.x,i=r.y,o=0,s=0,c=t.length;c>o;o++)switch(0|t[o]){case L.moveTo:a=e[s++],i=e[s++],n.moveTo(a,i);break;case L.lineTo:a=e[s++],i=e[s++],n.lineTo(a,i);break;case L.curveTo:a=e[s+4],i=e[s+5],n.bezierCurveTo(e[s],e[s+1],e[s+2],e[s+3],a,i),s+=6;break;case L.curveTo2:n.bezierCurveTo(a,i,e[s],e[s+1],e[s+2],e[s+3]),a=e[s+2],i=e[s+3],s+=4;break;case L.curveTo3:a=e[s+2],i=e[s+3],n.bezierCurveTo(e[s],e[s+1],a,i,a,i),s+=4;break;case L.closePath:n.closePath()}r.setCurrentPoint(a,i)},closePath:function(){this.ctx.closePath()},rectangle:function(t,e,n,r){0===n&&(n=this.getSinglePixelWidth()),0===r&&(r=this.getSinglePixelWidth()),this.ctx.rect(t,e,n,r)},stroke:function(t){t="undefined"!=typeof t?t:!0;var e=this.ctx,n=this.current.strokeColor;0===this.current.lineWidth&&(e.lineWidth=this.getSinglePixelWidth()),e.globalAlpha=this.current.strokeAlpha,n&&n.hasOwnProperty("type")&&"Pattern"===n.type?(e.save(),e.strokeStyle=n.getPattern(e,this),e.stroke(),e.restore()):e.stroke(),t&&this.consumePath(),e.globalAlpha=this.current.fillAlpha},closeStroke:function(){this.closePath(),this.stroke()},fill:function(t){t="undefined"!=typeof t?t:!0;var e=this.ctx,n=this.current.fillColor,r=!1;if(n&&n.hasOwnProperty("type")&&"Pattern"===n.type&&(e.save(),e.fillStyle=n.getPattern(e,this),r=!0),this.pendingEOFill){if(void 0!==e.mozFillRule)e.mozFillRule="evenodd",e.fill(),e.mozFillRule="nonzero";else try{e.fill("evenodd")}catch(a){e.fill()}this.pendingEOFill=!1}else e.fill();r&&e.restore(),t&&this.consumePath()},eoFill:function(){this.pendingEOFill=!0,this.fill()},fillStroke:function(){this.fill(!1),this.stroke(!1),this.consumePath()},eoFillStroke:function(){this.pendingEOFill=!0,this.fillStroke()},closeFillStroke:function(){this.closePath(),this.fillStroke()},closeEOFillStroke:function(){this.pendingEOFill=!0,this.closePath(),this.fillStroke()},endPath:function(){this.consumePath()},clip:function(){this.pendingClip=p},eoClip:function(){this.pendingClip=g},beginText:function(){this.current.textMatrix=j,this.current.textMatrixScale=1,this.current.x=this.current.lineX=0,this.current.y=this.current.lineY=0},endText:function(){var t=this.pendingTextPaths,e=this.ctx;if(void 0===t)return void e.beginPath();e.save(),e.beginPath();for(var n=0;n<t.length;n++){var r=t[n];e.setTransform.apply(e,r.transform),e.translate(r.x,r.y),r.addToPath(e,r.fontSize)}e.restore(),e.clip(),e.beginPath(),delete this.pendingTextPaths},setCharSpacing:function(t){this.current.charSpacing=t},setWordSpacing:function(t){this.current.wordSpacing=t},setHScale:function(t){this.current.textHScale=t/100},setLeading:function(t){this.current.leading=-t},setFont:function(t,r){var a=this.commonObjs.get(t),i=this.current;if(a||n("Can't find font for "+t),i.fontMatrix=a.fontMatrix?a.fontMatrix:w,(0===i.fontMatrix[0]||0===i.fontMatrix[3])&&e("Invalid font matrix for font "+t),0>r?(r=-r,i.fontDirection=-1):i.fontDirection=1,this.current.font=a,this.current.fontSize=r,!a.isType3Font){var o=a.loadedName||"sans-serif",s=a.black?a.bold?"bolder":"bold":a.bold?"bold":"normal",c=a.italic?"italic":"normal",l='"'+o+'", '+a.fallbackName,h=r>=ne?r:ne;this.current.fontSizeScale=h!=ne?1:r/ne;var u=c+" "+s+" "+h+"px "+l;this.ctx.font=u}},setTextRenderingMode:function(t){this.current.textRenderingMode=t},setTextRise:function(t){this.current.textRise=t},moveText:function(t,e){this.current.x=this.current.lineX+=t,this.current.y=this.current.lineY+=e},setLeadingMoveText:function(t,e){this.setLeading(-e),this.moveText(t,e)},setTextMatrix:function(t,e,n,r,a,i){this.current.textMatrix=[t,e,n,r,a,i],this.current.textMatrixScale=Math.sqrt(t*t+e*e),this.current.x=this.current.lineX=0,this.current.y=this.current.lineY=0},nextLine:function(){this.moveText(0,this.current.leading)},paintChar:function(t,e,n){var r,a=this.ctx,i=this.current,o=i.font,s=i.textRenderingMode,c=i.fontSize/i.fontSizeScale,l=s&F.FILL_STROKE_MASK,h=!!(s&F.ADD_TO_PATH_FLAG);if((o.disableFontFace||h)&&(r=o.getPathGenerator(this.commonObjs,t)),o.disableFontFace?(a.save(),a.translate(e,n),a.beginPath(),r(a,c),(l===F.FILL||l===F.FILL_STROKE)&&a.fill(),(l===F.STROKE||l===F.FILL_STROKE)&&a.stroke(),a.restore()):((l===F.FILL||l===F.FILL_STROKE)&&a.fillText(t,e,n),(l===F.STROKE||l===F.FILL_STROKE)&&a.strokeText(t,e,n)),h){var u=this.pendingTextPaths||(this.pendingTextPaths=[]);u.push({transform:a.mozCurrentTransform,x:e,y:n,fontSize:c,addToPath:r})}},get isFontSubpixelAAEnabled(){var t=document.createElement("canvas").getContext("2d");t.scale(1.5,1),t.fillText("I",0,10);for(var e=t.getImageData(0,0,10,10).data,n=!1,r=3;r<e.length;r+=4)if(e[r]>0&&e[r]<255){n=!0;break}return s(this,"isFontSubpixelAAEnabled",n)},showText:function(t){var e=this.current,n=e.font;if(n.isType3Font)return this.showType3Text(t);var r=e.fontSize;if(0!==r){var a=this.ctx,i=e.fontSizeScale,o=e.charSpacing,s=e.wordSpacing,c=e.fontDirection,l=e.textHScale*c,h=t.length,u=n.vertical,f=n.defaultVMetrics,d=r*e.fontMatrix[0],p=e.textRenderingMode===F.FILL&&!n.disableFontFace;a.save(),a.transform.apply(a,e.textMatrix),a.translate(e.x,e.y+e.textRise),c>0?a.scale(l,-1):a.scale(l,1);var g=e.lineWidth,m=e.textMatrixScale;0===m||0===g?g=this.getSinglePixelWidth():g/=m,1!=i&&(a.scale(i,i),g/=i),a.lineWidth=g;var v,b=0;for(v=0;h>v;++v){var y=t[v];if(null!==y)if(A(y))b+=-y*r*.001;else{var S,x,P,C,k=!1,D=y.fontChar,T=y.accent,w=y.width;if(u){var R,L,_;R=y.vmetric||f,L=y.vmetric?R[1]:.5*w,L=-L*d,_=R[2]*d,w=R?-R[0]:w,S=L/i,x=(b+_)/i}else S=b/i,x=0;if(n.remeasure&&w>0&&this.isFontSubpixelAAEnabled){var E=1e3*a.measureText(D).width/r*i,I=w/E;k=!0,a.save(),a.scale(I,1),S/=I}p&&!T?a.fillText(D,S,x):(this.paintChar(D,S,x),T&&(P=S+T.offset.x/i,C=x-T.offset.y/i,this.paintChar(T.fontChar,P,C)));var M=w*d+o*c;b+=M,k&&a.restore()}else b+=c*s}u?e.y-=b*l:e.x+=b*l,a.restore()}},showType3Text:function(t){var e,n,r,a=this.ctx,i=this.current,o=i.font,s=i.fontSize,c=i.fontDirection,l=i.charSpacing,h=i.wordSpacing,u=i.textHScale*c,f=i.fontMatrix||w,d=t.length;if(0!==s){for(a.save(),a.transform.apply(a,i.textMatrix),a.translate(i.x,i.y),a.scale(u,1),e=0;d>e;++e)if(n=t[e],null!==n)if(A(n)){var p=.001*-n*s;this.ctx.translate(p,0),i.x+=p*u}else{this.processingType3=n,this.save(),a.scale(s,s),a.transform.apply(a,f);var g=o.charProcOperatorList[n.operatorListId];this.executeOperatorList(g),this.restore();var m=J.applyTransform([n.width,0],f);r=(m[0]*s+l)*c,a.translate(r,0),i.x+=r*u}else this.ctx.translate(h,0),i.x+=h*u;a.restore(),this.processingType3=null}},setCharWidth:function(){},setCharWidthAndBounds:function(t,e,n,r,a,i){this.rectangle(n,r,a-n,i-r),this.clip(),this.endPath()},getColorN_Pattern:function(t){var e;if("TilingPattern"==t[0]){var n=t[1];e=new ue(t,n,this.ctx,this.objs,this.commonObjs,this.baseTransform)}else e=k(t);return e},setStrokeColorN:function(){this.current.strokeColor=this.getColorN_Pattern(arguments)},setFillColorN:function(){this.current.fillColor=this.getColorN_Pattern(arguments)},setStrokeRGBColor:function(){var t=J.makeCssRgb(arguments);this.ctx.strokeStyle=t,this.current.strokeColor=t},setFillRGBColor:function(){var t=J.makeCssRgb(arguments);this.ctx.fillStyle=t,this.current.fillColor=t},shadingFill:function(t){var e=this.ctx;this.save();var n=k(t);e.fillStyle=n.getPattern(e,this,!0);var r=e.mozCurrentTransformInverse;if(r){var a=e.canvas,i=a.width,o=a.height,s=J.applyTransform([0,0],r),c=J.applyTransform([0,o],r),l=J.applyTransform([i,0],r),h=J.applyTransform([i,o],r),u=Math.min(s[0],c[0],l[0],h[0]),f=Math.min(s[1],c[1],l[1],h[1]),d=Math.max(s[0],c[0],l[0],h[0]),A=Math.max(s[1],c[1],l[1],h[1]);this.ctx.fillRect(u,f,d-u,A-f)}else this.ctx.fillRect(-1e10,-1e10,2e10,2e10);this.restore()},beginInlineImage:function(){n("Should not call beginInlineImage")},beginImageData:function(){n("Should not call beginImageData")},paintFormXObjectBegin:function(t,e){if(this.save(),this.baseTransformStack.push(this.baseTransform),t&&m(t)&&6==t.length&&this.transform.apply(this,t),this.baseTransform=this.ctx.mozCurrentTransform,e&&m(e)&&4==e.length){var n=e[2]-e[0],r=e[3]-e[1];this.rectangle(e[0],e[1],n,r),this.clip(),this.endPath()}},paintFormXObjectEnd:function(){this.restore(),this.baseTransform=this.baseTransformStack.pop()},beginGroup:function(n){this.save();var r=this.ctx;n.isolated||t("TODO: Support non-isolated groups."),n.knockout&&e("Knockout groups not supported.");var i=r.mozCurrentTransform;n.matrix&&r.transform.apply(r,n.matrix),a(n.bbox,"Bounding box is required.");var o=J.getAxialAlignedBoundingBox(n.bbox,r.mozCurrentTransform),s=[0,0,r.canvas.width,r.canvas.height];o=J.intersect(o,s)||[0,0,0,0];var l=Math.floor(o[0]),h=Math.floor(o[1]),u=Math.max(Math.ceil(o[2])-l,1),f=Math.max(Math.ceil(o[3])-h,1),d=1,A=1;u>re&&(d=u/re,u=re),f>re&&(A=f/re,f=re);var p="groupAt"+this.groupLevel;n.smask&&(p+="_smask_"+this.smaskCounter++%2);var g=ie.getCanvas(p,u,f,!0),m=g.context;m.scale(1/d,1/A),m.translate(-l,-h),m.transform.apply(m,i),n.smask?this.smaskStack.push({canvas:g.canvas,context:m,offsetX:l,offsetY:h,scaleX:d,scaleY:A,subtype:n.smask.subtype,backdrop:n.smask.backdrop}):(r.setTransform(1,0,0,1,0,0),r.translate(l,h),r.scale(d,A)),c(r,m),this.ctx=m,this.setGState([["BM","Normal"],["ca",1],["CA",1]]),this.groupStack.push(r),this.groupLevel++},endGroup:function(t){this.groupLevel--;var e=this.ctx;this.ctx=this.groupStack.pop(),void 0!==this.ctx.imageSmoothingEnabled?this.ctx.imageSmoothingEnabled=!1:this.ctx.mozImageSmoothingEnabled=!1,t.smask?this.tempSMask=this.smaskStack.pop():this.ctx.drawImage(e.canvas,0,0),this.restore()},beginAnnotations:function(){this.save(),this.current=new oe},endAnnotations:function(){this.restore()},beginAnnotation:function(t,e,n){if(this.save(),t&&m(t)&&4==t.length){var r=t[2]-t[0],a=t[3]-t[1];this.rectangle(t[0],t[1],r,a),this.clip(),this.endPath()}this.transform.apply(this,e),this.transform.apply(this,n)},endAnnotation:function(){this.restore()},paintJpegXObject:function(t,n,r){var a=this.objs.get(t);if(!a)return void e("Dependent image isn't ready yet");this.save();var i=this.ctx;if(i.scale(1/n,-1/r),i.drawImage(a,0,0,a.width,a.height,0,-r,n,r),this.imageLayer){var o=i.mozCurrentTransformInverse,s=this.getCanvasPosition(0,0);this.imageLayer.appendImage({objId:t,left:s[0],top:s[1],width:n/o[0],height:r/o[3]})}this.restore()},paintImageMaskXObject:function(t){var e=this.ctx,n=t.width,r=t.height,a=this.processingType3;if(ae&&a&&!("compiled"in a)){var i=1e3;a.compiled=i>=n&&i>=r?C({data:t.data,width:n,height:r}):null}if(a&&a.compiled)return void a.compiled(e);var s=ie.getCanvas("maskCanvas",n,r),c=s.context;c.save(),o(c,t),c.globalCompositeOperation="source-in";var l=this.current.fillColor;c.fillStyle=l&&l.hasOwnProperty("type")&&"Pattern"===l.type?l.getPattern(c,this):l,c.fillRect(0,0,n,r),c.restore(),this.paintInlineImageXObject(s.canvas)},paintImageMaskXObjectRepeat:function(t,e,n,r){var a=t.width,i=t.height,s=this.ctx,c=ie.getCanvas("maskCanvas",a,i),l=c.context;l.save(),o(l,t),l.globalCompositeOperation="source-in"; -var h=this.current.fillColor;l.fillStyle=h&&h.hasOwnProperty("type")&&"Pattern"===h.type?h.getPattern(l,this):h,l.fillRect(0,0,a,i),l.restore();for(var u=0,f=r.length;f>u;u+=2)s.save(),s.transform(e,0,0,n,r[u],r[u+1]),s.scale(1,-1),s.drawImage(c.canvas,0,0,a,i,0,-1,1,1),s.restore()},paintImageMaskXObjectGroup:function(t){for(var e=this.ctx,n=0,r=t.length;r>n;n++){var a=t[n],i=a.width,s=a.height,c=ie.getCanvas("maskCanvas",i,s),l=c.context;l.save(),o(l,a),l.globalCompositeOperation="source-in";var h=this.current.fillColor;l.fillStyle=h&&h.hasOwnProperty("type")&&"Pattern"===h.type?h.getPattern(l,this):h,l.fillRect(0,0,i,s),l.restore(),e.save(),e.transform.apply(e,a.transform),e.scale(1,-1),e.drawImage(c.canvas,0,0,i,s,0,-1,1,1),e.restore()}},paintImageXObject:function(t){var n=this.objs.get(t);return n?void this.paintInlineImageXObject(n):void e("Dependent image isn't ready yet")},paintImageXObjectRepeat:function(t,n,r,a){var i=this.objs.get(t);if(!i)return void e("Dependent image isn't ready yet");for(var o=i.width,s=i.height,c=[],l=0,h=a.length;h>l;l+=2)c.push({transform:[n,0,0,r,a[l],a[l+1]],x:0,y:0,w:o,h:s});this.paintInlineImageXObjectGroup(i,c)},paintInlineImageXObject:function(t){var e=t.width,n=t.height,r=this.ctx;this.save(),r.scale(1/e,-1/n);var a,o,s=r.mozCurrentTransformInverse,c=s[0],l=s[1],h=Math.max(Math.sqrt(c*c+l*l),1),u=s[2],f=s[3],d=Math.max(Math.sqrt(u*u+f*f),1);if(t instanceof HTMLElement||!t.data)a=t;else{o=ie.getCanvas("inlineImage",e,n);var A=o.context;i(A,t),a=o.canvas}for(var p=e,g=n,m="prescale1";h>2&&p>1||d>2&&g>1;){var v=p,b=g;h>2&&p>1&&(v=Math.ceil(p/2),h/=p/v),d>2&&g>1&&(b=Math.ceil(g/2),d/=g/b),o=ie.getCanvas(m,v,b),A=o.context,A.clearRect(0,0,v,b),A.drawImage(a,0,0,p,g,0,0,v,b),a=o.canvas,p=v,g=b,m="prescale1"===m?"prescale2":"prescale1"}if(r.drawImage(a,0,0,p,g,0,-n,e,n),this.imageLayer){var y=this.getCanvasPosition(0,-n);this.imageLayer.appendImage({imgData:t,left:y[0],top:y[1],width:e/s[0],height:n/s[3]})}this.restore()},paintInlineImageXObjectGroup:function(t,e){var n=this.ctx,r=t.width,a=t.height,o=ie.getCanvas("inlineImage",r,a),s=o.context;i(s,t);for(var c=0,l=e.length;l>c;c++){var h=e[c];if(n.save(),n.transform.apply(n,h.transform),n.scale(1,-1),n.drawImage(o.canvas,h.x,h.y,h.w,h.h,0,-1,1,1),this.imageLayer){var u=this.getCanvasPosition(h.x,h.y);this.imageLayer.appendImage({imgData:t,left:u[0],top:u[1],width:r,height:a})}n.restore()}},paintSolidColorImageMask:function(){this.ctx.fillRect(0,0,1,1)},markPoint:function(){},markPointProps:function(){},beginMarkedContent:function(){},beginMarkedContentProps:function(){},endMarkedContent:function(){},beginCompat:function(){},endCompat:function(){},consumePath:function(){var t=this.ctx;if(this.pendingClip){if(this.pendingClip==g)if(void 0!==t.mozFillRule)t.mozFillRule="evenodd",t.clip(),t.mozFillRule="nonzero";else try{t.clip("evenodd")}catch(e){t.clip()}else t.clip();this.pendingClip=null}t.beginPath()},getSinglePixelWidth:function(){var t=this.ctx.mozCurrentTransformInverse;return Math.sqrt(Math.max(t[0]*t[0]+t[1]*t[1],t[2]*t[2]+t[3]*t[3]))},getCanvasPosition:function(t,e){var n=this.ctx.mozCurrentTransform;return[n[0]*t+n[2]*e+n[4],n[1]*t+n[3]*e+n[5]]}};for(var v in L)r.prototype[L[v]]=r.prototype[v];return r}(),ce=function(){function t(t,e,n){var r=t.createShader(n);t.shaderSource(r,e),t.compileShader(r);var a=t.getShaderParameter(r,t.COMPILE_STATUS);if(!a){var i=t.getShaderInfoLog(r);throw new Error("Error during shader compilation: "+i)}return r}function e(e,n){return t(e,n,e.VERTEX_SHADER)}function n(e,n){return t(e,n,e.FRAGMENT_SHADER)}function r(t,e){for(var n=t.createProgram(),r=0,a=e.length;a>r;++r)t.attachShader(n,e[r]);t.linkProgram(n);var i=t.getProgramParameter(n,t.LINK_STATUS);if(!i){var o=t.getProgramInfoLog(n);throw new Error("Error during program linking: "+o)}return n}function a(t,e,n){t.activeTexture(n);var r=t.createTexture();return t.bindTexture(t.TEXTURE_2D,r),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,e),r}function i(){f||(d=document.createElement("canvas"),f=d.getContext("webgl",{premultipliedalpha:!1}))}function o(){var t,a;i(),t=d,d=null,a=f,f=null;var o=e(a,A),s=n(a,p),c=r(a,[o,s]);a.useProgram(c);var l={};l.gl=a,l.canvas=t,l.resolutionLocation=a.getUniformLocation(c,"u_resolution"),l.positionLocation=a.getAttribLocation(c,"a_position"),l.backdropLocation=a.getUniformLocation(c,"u_backdrop"),l.subtypeLocation=a.getUniformLocation(c,"u_subtype");var h=a.getAttribLocation(c,"a_texCoord"),u=a.getUniformLocation(c,"u_image"),m=a.getUniformLocation(c,"u_mask"),v=a.createBuffer();a.bindBuffer(a.ARRAY_BUFFER,v),a.bufferData(a.ARRAY_BUFFER,new Float32Array([0,0,1,0,0,1,0,1,1,0,1,1]),a.STATIC_DRAW),a.enableVertexAttribArray(h),a.vertexAttribPointer(h,2,a.FLOAT,!1,0,0),a.uniform1i(u,0),a.uniform1i(m,1),g=l}function c(t,e,n){var r=t.width,i=t.height;g||o();var s=g,c=s.canvas,l=s.gl;c.width=r,c.height=i,l.viewport(0,0,l.drawingBufferWidth,l.drawingBufferHeight),l.uniform2f(s.resolutionLocation,r,i),n.backdrop?l.uniform4f(s.resolutionLocation,n.backdrop[0],n.backdrop[1],n.backdrop[2],1):l.uniform4f(s.resolutionLocation,0,0,0,0),l.uniform1i(s.subtypeLocation,"Luminosity"===n.subtype?1:0);var h=a(l,t,l.TEXTURE0),u=a(l,e,l.TEXTURE1),f=l.createBuffer();return l.bindBuffer(l.ARRAY_BUFFER,f),l.bufferData(l.ARRAY_BUFFER,new Float32Array([0,0,r,0,0,i,0,i,r,0,r,i]),l.STATIC_DRAW),l.enableVertexAttribArray(s.positionLocation),l.vertexAttribPointer(s.positionLocation,2,l.FLOAT,!1,0,0),l.clearColor(0,0,0,0),l.enable(l.BLEND),l.blendFunc(l.ONE,l.ONE_MINUS_SRC_ALPHA),l.clear(l.COLOR_BUFFER_BIT),l.drawArrays(l.TRIANGLES,0,6),l.flush(),l.deleteTexture(h),l.deleteTexture(u),l.deleteBuffer(f),c}function l(){var t,a;i(),t=d,d=null,a=f,f=null;var o=e(a,m),s=n(a,v),c=r(a,[o,s]);a.useProgram(c);var l={};l.gl=a,l.canvas=t,l.resolutionLocation=a.getUniformLocation(c,"u_resolution"),l.scaleLocation=a.getUniformLocation(c,"u_scale"),l.offsetLocation=a.getUniformLocation(c,"u_offset"),l.positionLocation=a.getAttribLocation(c,"a_position"),l.colorLocation=a.getAttribLocation(c,"a_color"),b=l}function h(t,e,n,r,a){b||l();var i=b,o=i.canvas,s=i.gl;o.width=t,o.height=e,s.viewport(0,0,s.drawingBufferWidth,s.drawingBufferHeight),s.uniform2f(i.resolutionLocation,t,e);var c,h,u,f=0;for(c=0,h=r.length;h>c;c++)switch(r[c].type){case"lattice":u=r[c].coords.length/r[c].verticesPerRow|0,f+=(u-1)*(r[c].verticesPerRow-1)*6;break;case"triangles":f+=r[c].coords.length}var d=new Float32Array(2*f),A=new Uint8Array(3*f),p=a.coords,g=a.colors,m=0,v=0;for(c=0,h=r.length;h>c;c++){var y=r[c],S=y.coords,x=y.colors;switch(y.type){case"lattice":var P=y.verticesPerRow;u=S.length/P|0;for(var C=1;u>C;C++)for(var k=C*P+1,D=1;P>D;D++,k++)d[m]=p[S[k-P-1]],d[m+1]=p[S[k-P-1]+1],d[m+2]=p[S[k-P]],d[m+3]=p[S[k-P]+1],d[m+4]=p[S[k-1]],d[m+5]=p[S[k-1]+1],A[v]=g[x[k-P-1]],A[v+1]=g[x[k-P-1]+1],A[v+2]=g[x[k-P-1]+2],A[v+3]=g[x[k-P]],A[v+4]=g[x[k-P]+1],A[v+5]=g[x[k-P]+2],A[v+6]=g[x[k-1]],A[v+7]=g[x[k-1]+1],A[v+8]=g[x[k-1]+2],d[m+6]=d[m+2],d[m+7]=d[m+3],d[m+8]=d[m+4],d[m+9]=d[m+5],d[m+10]=p[S[k]],d[m+11]=p[S[k]+1],A[v+9]=A[v+3],A[v+10]=A[v+4],A[v+11]=A[v+5],A[v+12]=A[v+6],A[v+13]=A[v+7],A[v+14]=A[v+8],A[v+15]=g[x[k]],A[v+16]=g[x[k]+1],A[v+17]=g[x[k]+2],m+=12,v+=18;break;case"triangles":for(var T=0,w=S.length;w>T;T++)d[m]=p[S[T]],d[m+1]=p[S[T]+1],A[v]=g[x[c]],A[v+1]=g[x[T]+1],A[v+2]=g[x[T]+2],m+=2,v+=3}}n?s.clearColor(n[0]/255,n[1]/255,n[2]/255,1):s.clearColor(0,0,0,0),s.clear(s.COLOR_BUFFER_BIT);var F=s.createBuffer();s.bindBuffer(s.ARRAY_BUFFER,F),s.bufferData(s.ARRAY_BUFFER,d,s.STATIC_DRAW),s.enableVertexAttribArray(i.positionLocation),s.vertexAttribPointer(i.positionLocation,2,s.FLOAT,!1,0,0);var R=s.createBuffer();return s.bindBuffer(s.ARRAY_BUFFER,R),s.bufferData(s.ARRAY_BUFFER,A,s.STATIC_DRAW),s.enableVertexAttribArray(i.colorLocation),s.vertexAttribPointer(i.colorLocation,3,s.UNSIGNED_BYTE,!1,0,0),s.uniform2f(i.scaleLocation,a.scaleX,a.scaleY),s.uniform2f(i.offsetLocation,a.offsetX,a.offsetY),s.drawArrays(s.TRIANGLES,0,f),s.flush(),s.deleteBuffer(F),s.deleteBuffer(R),o}function u(){g=null,b=null}var f,d,A=" attribute vec2 a_position; attribute vec2 a_texCoord; uniform vec2 u_resolution; varying vec2 v_texCoord; void main() { vec2 clipSpace = (a_position / u_resolution) * 2.0 - 1.0; gl_Position = vec4(clipSpace * vec2(1, -1), 0, 1); v_texCoord = a_texCoord; } ",p=" precision mediump float; uniform vec4 u_backdrop; uniform int u_subtype; uniform sampler2D u_image; uniform sampler2D u_mask; varying vec2 v_texCoord; void main() { vec4 imageColor = texture2D(u_image, v_texCoord); vec4 maskColor = texture2D(u_mask, v_texCoord); if (u_backdrop.a > 0.0) { maskColor.rgb = maskColor.rgb * maskColor.a + u_backdrop.rgb * (1.0 - maskColor.a); } float lum; if (u_subtype == 0) { lum = maskColor.a; } else { lum = maskColor.r * 0.3 + maskColor.g * 0.59 + maskColor.b * 0.11; } imageColor.a *= lum; imageColor.rgb *= imageColor.a; gl_FragColor = imageColor; } ",g=null,m=" attribute vec2 a_position; attribute vec3 a_color; uniform vec2 u_resolution; uniform vec2 u_scale; uniform vec2 u_offset; varying vec4 v_color; void main() { vec2 position = (a_position + u_offset) * u_scale; vec2 clipSpace = (position / u_resolution) * 2.0 - 1.0; gl_Position = vec4(clipSpace * vec2(1, -1), 0, 1); v_color = vec4(a_color / 255.0, 1.0); } ",v=" precision mediump float; varying vec4 v_color; void main() { gl_FragColor = v_color; } ",b=null;return{get isEnabled(){if(PDFJS.disableWebGL)return!1;var t=!1;try{i(),t=!!f}catch(e){}return s(this,"isEnabled",t)},composeSMask:c,drawFigures:h,clear:u}}(),le={};le.RadialAxial={fromIR:function(t){var e=t[1],n=t[2],r=t[3],a=t[4],i=t[5],o=t[6];return{type:"Pattern",getPattern:function(t){var s;"axial"===e?s=t.createLinearGradient(r[0],r[1],a[0],a[1]):"radial"===e&&(s=t.createRadialGradient(r[0],r[1],i,a[0],a[1],o));for(var c=0,l=n.length;l>c;++c){var h=n[c];s.addColorStop(h[0],h[1])}return s}}}};var he=function(){function t(t,e,n,r,a,i,o,s){var c,l=e.coords,h=e.colors,u=t.data,f=4*t.width;l[n+1]>l[r+1]&&(c=n,n=r,r=c,c=i,i=o,o=c),l[r+1]>l[a+1]&&(c=r,r=a,a=c,c=o,o=s,s=c),l[n+1]>l[r+1]&&(c=n,n=r,r=c,c=i,i=o,o=c);var d=(l[n]+e.offsetX)*e.scaleX,A=(l[n+1]+e.offsetY)*e.scaleY,p=(l[r]+e.offsetX)*e.scaleX,g=(l[r+1]+e.offsetY)*e.scaleY,m=(l[a]+e.offsetX)*e.scaleX,v=(l[a+1]+e.offsetY)*e.scaleY;if(!(A>=v))for(var b,y,S,x,P,C,k,D,T,w=h[i],F=h[i+1],R=h[i+2],L=h[o],_=h[o+1],E=h[o+2],I=h[s],M=h[s+1],O=h[s+2],j=Math.round(A),J=Math.round(v),B=j;J>=B;B++){g>B?(T=A>B?0:A===g?1:(A-B)/(A-g),b=d-(d-p)*T,y=w-(w-L)*T,S=F-(F-_)*T,x=R-(R-E)*T):(T=B>v?1:g===v?0:(g-B)/(g-v),b=p-(p-m)*T,y=L-(L-I)*T,S=_-(_-M)*T,x=E-(E-O)*T),T=A>B?0:B>v?1:(A-B)/(A-v),P=d-(d-m)*T,C=w-(w-I)*T,k=F-(F-M)*T,D=R-(R-O)*T;for(var W=Math.round(Math.min(b,P)),U=Math.round(Math.max(b,P)),N=f*B+4*W,G=W;U>=G;G++)T=(b-G)/(b-P),T=0>T?0:T>1?1:T,u[N++]=y-(y-C)*T|0,u[N++]=S-(S-k)*T|0,u[N++]=x-(x-D)*T|0,u[N++]=255}}function e(e,r,a){var i,o,s=r.coords,c=r.colors;switch(r.type){case"lattice":var l=r.verticesPerRow,h=Math.floor(s.length/l)-1,u=l-1;for(i=0;h>i;i++)for(var f=i*l,d=0;u>d;d++,f++)t(e,a,s[f],s[f+1],s[f+l],c[f],c[f+1],c[f+l]),t(e,a,s[f+l+1],s[f+1],s[f+l],c[f+l+1],c[f+1],c[f+l]);break;case"triangles":for(i=0,o=s.length;o>i;i+=3)t(e,a,s[i],s[i+1],s[i+2],c[i],c[i+1],c[i+2]);break;default:n("illigal figure")}}function r(t,n,r,a,i,o){var s,c,l,h,u=1.1,f=3e3,d=Math.floor(t[0]),A=Math.floor(t[1]),p=Math.ceil(t[2])-d,g=Math.ceil(t[3])-A,m=Math.min(Math.ceil(Math.abs(p*n[0]*u)),f),v=Math.min(Math.ceil(Math.abs(g*n[1]*u)),f),b=p/m,y=g/v,S={coords:r,colors:a,offsetX:-d,offsetY:-A,scaleX:1/b,scaleY:1/y};if(ce.isEnabled)s=ce.drawFigures(m,v,o,i,S),c=ie.getCanvas("mesh",m,v,!1),c.context.drawImage(s,0,0),s=c.canvas;else{c=ie.getCanvas("mesh",m,v,!1);var x=c.context,P=x.createImageData(m,v);if(o){var C=P.data;for(l=0,h=C.length;h>l;l+=4)C[l]=o[0],C[l+1]=o[1],C[l+2]=o[2],C[l+3]=255}for(l=0;l<i.length;l++)e(P,i[l],S);x.putImageData(P,0,0),s=c.canvas}return{canvas:s,offsetX:d,offsetY:A,scaleX:b,scaleY:y}}return r}();le.Mesh={fromIR:function(t){var e=t[2],n=t[3],r=t[4],a=t[5],i=t[6],o=t[8];return{type:"Pattern",getPattern:function(t,s,c){var l;if(c)l=J.singularValueDecompose2dScale(t.mozCurrentTransform);else{var h=J.singularValueDecompose2dScale(i),u=J.singularValueDecompose2dScale(s.baseTransform);l=[h[0]*u[0],h[1]*u[1]]}var f=he(a,l,e,n,r,c?null:o);return c||(t.setTransform.apply(t,s.baseTransform),i&&t.transform.apply(t,i)),t.translate(f.offsetX,f.offsetY),t.scale(f.scaleX,f.scaleY),t.createPattern(f.canvas,"no-repeat")}}}},le.Dummy={fromIR:function(){return{type:"Pattern",getPattern:function(){return"hotpink"}}}};var ue=function(){function e(t,e,n,r,a,i){this.operatorList=t[2],this.matrix=t[3]||[1,0,0,1,0,0],this.bbox=t[4],this.xstep=t[5],this.ystep=t[6],this.paintType=t[7],this.tilingType=t[8],this.color=e,this.objs=r,this.commonObjs=a,this.baseTransform=i,this.type="Pattern",this.ctx=n}var r={COLORED:1,UNCOLORED:2},a=3e3;return e.prototype={createPatternCanvas:function(e){var n=this.operatorList,r=this.bbox,i=this.xstep,o=this.ystep,s=this.paintType,c=this.tilingType,l=this.color,h=this.objs,u=this.commonObjs;t("TilingType: "+c);var f=r[0],d=r[1],A=r[2],p=r[3],g=[f,d],m=[f+i,d+o],v=m[0]-g[0],b=m[1]-g[1],y=J.singularValueDecompose2dScale(this.matrix),S=J.singularValueDecompose2dScale(this.baseTransform),x=[y[0]*S[0],y[1]*S[1]];v=Math.min(Math.ceil(Math.abs(v*x[0])),a),b=Math.min(Math.ceil(Math.abs(b*x[1])),a);var P=ie.getCanvas("pattern",v,b,!0),C=P.context,k=new se(C,u,h);k.groupLevel=e.groupLevel,this.setFillAndStrokeStyleToContext(C,s,l),this.setScale(v,b,i,o),this.transformToScale(k);var D=[1,0,0,1,-g[0],-g[1]];return k.transform.apply(k,D),this.clipBbox(k,r,f,d,A,p),k.executeOperatorList(n),P.canvas},setScale:function(t,e,n,r){this.scale=[t/n,e/r]},transformToScale:function(t){var e=this.scale,n=[e[0],0,0,e[1],0,0];t.transform.apply(t,n)},scaleToContext:function(){var t=this.scale;this.ctx.scale(1/t[0],1/t[1])},clipBbox:function(t,e,n,r,a,i){if(e&&m(e)&&4==e.length){var o=a-n,s=i-r;t.rectangle(n,r,o,s),t.clip(),t.endPath()}},setFillAndStrokeStyleToContext:function(t,e,a){switch(e){case r.COLORED:var i=this.ctx;t.fillStyle=i.fillStyle,t.strokeStyle=i.strokeStyle;break;case r.UNCOLORED:var o=J.makeCssRgb(a);t.fillStyle=o,t.strokeStyle=o;break;default:n("Unsupported paint type: "+e)}},getPattern:function(t,e){var n=this.createPatternCanvas(e);return t=this.ctx,t.setTransform.apply(t,this.baseTransform),t.transform.apply(t,this.matrix),this.scaleToContext(),t.createPattern(n,"repeat")}},e}();PDFJS.disableFontFace=!1;var fe={insertRule:function(t){var e=document.getElementById("PDFJS_FONT_STYLE_TAG");e||(e=document.createElement("style"),e.id="PDFJS_FONT_STYLE_TAG",document.documentElement.getElementsByTagName("head")[0].appendChild(e));var n=e.sheet;n.insertRule(t,n.cssRules.length)},clear:function(){var t=document.getElementById("PDFJS_FONT_STYLE_TAG");t&&t.parentNode.removeChild(t)},get loadTestFont(){return s(this,"loadTestFont",atob("T1RUTwALAIAAAwAwQ0ZGIDHtZg4AAAOYAAAAgUZGVE1lkzZwAAAEHAAAABxHREVGABQAFQAABDgAAAAeT1MvMlYNYwkAAAEgAAAAYGNtYXABDQLUAAACNAAAAUJoZWFk/xVFDQAAALwAAAA2aGhlYQdkA+oAAAD0AAAAJGhtdHgD6AAAAAAEWAAAAAZtYXhwAAJQAAAAARgAAAAGbmFtZVjmdH4AAAGAAAAAsXBvc3T/hgAzAAADeAAAACAAAQAAAAEAALZRFsRfDzz1AAsD6AAAAADOBOTLAAAAAM4KHDwAAAAAA+gDIQAAAAgAAgAAAAAAAAABAAADIQAAAFoD6AAAAAAD6AABAAAAAAAAAAAAAAAAAAAAAQAAUAAAAgAAAAQD6AH0AAUAAAKKArwAAACMAooCvAAAAeAAMQECAAACAAYJAAAAAAAAAAAAAQAAAAAAAAAAAAAAAFBmRWQAwAAuAC4DIP84AFoDIQAAAAAAAQAAAAAAAAAAACAAIAABAAAADgCuAAEAAAAAAAAAAQAAAAEAAAAAAAEAAQAAAAEAAAAAAAIAAQAAAAEAAAAAAAMAAQAAAAEAAAAAAAQAAQAAAAEAAAAAAAUAAQAAAAEAAAAAAAYAAQAAAAMAAQQJAAAAAgABAAMAAQQJAAEAAgABAAMAAQQJAAIAAgABAAMAAQQJAAMAAgABAAMAAQQJAAQAAgABAAMAAQQJAAUAAgABAAMAAQQJAAYAAgABWABYAAAAAAAAAwAAAAMAAAAcAAEAAAAAADwAAwABAAAAHAAEACAAAAAEAAQAAQAAAC7//wAAAC7////TAAEAAAAAAAABBgAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAD/gwAyAAAAAQAAAAAAAAAAAAAAAAAAAAABAAQEAAEBAQJYAAEBASH4DwD4GwHEAvgcA/gXBIwMAYuL+nz5tQXkD5j3CBLnEQACAQEBIVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYAAABAQAADwACAQEEE/t3Dov6fAH6fAT+fPp8+nwHDosMCvm1Cvm1DAz6fBQAAAAAAAABAAAAAMmJbzEAAAAAzgTjFQAAAADOBOQpAAEAAAAAAAAADAAUAAQAAAABAAAAAgABAAAAAAAAAAAD6AAAAAAAAA=="))},loadTestFontId:0,loadingContext:{requests:[],nextRequestId:0},isSyncFontLoadingSupported:function(){if(T)return!1;var t=window.navigator.userAgent,e=/Mozilla\/5.0.*?rv:(\d+).*? Gecko/.exec(t);return e&&e[1]>=14?!0:!1}(),bind:function(t,e){a(!T,"bind() shall be called from main thread");for(var n=[],r=[],i=0,o=t.length;o>i;i++){var s=t[i];if(!s.attached&&s.loading!==!1){s.attached=!0;var c=s.bindDOM();c&&(n.push(c),r.push(s))}}var l=fe.queueLoadingCallback(e);n.length>0&&!this.isSyncFontLoadingSupported?fe.prepareFontLoadEvent(n,r,l):l.complete()},queueLoadingCallback:function(t){function e(){for(a(!i.end,"completeRequest() cannot be called twice"),i.end=Date.now();n.requests.length>0&&n.requests[0].end;){var t=n.requests.shift();setTimeout(t.callback,0)}}var n=fe.loadingContext,r="pdfjs-font-loading-"+n.nextRequestId++,i={id:r,complete:e,callback:t,started:Date.now()};return n.requests.push(i),i},prepareFontLoadEvent:function(t,n,r){function a(t,e){return t.charCodeAt(e)<<24|t.charCodeAt(e+1)<<16|t.charCodeAt(e+2)<<8|255&t.charCodeAt(e+3)}function i(t,e,n,r){var a=t.substr(0,e),i=t.substr(e+n);return a+r+i}function o(t,n){if(f++,f>30)return e("Load test font never loaded."),void n();u.font="30px "+t,u.fillText(".",0,20);var r=u.getImageData(0,0,1,1);return r.data[3]>0?void n():void setTimeout(o.bind(null,t,n))}var s,c,l=document.createElement("canvas");l.width=1,l.height=1;var u=l.getContext("2d"),f=0,d="lt"+Date.now()+this.loadTestFontId++,A=this.loadTestFont,p=976;A=i(A,p,d.length,d);var g=16,m=1482184792,v=a(A,g);for(s=0,c=d.length-3;c>s;s+=4)v=v-m+a(d,s)|0;s<d.length&&(v=v-m+a(d+"XXX",s)|0),A=i(A,g,4,h(v));var b="url(data:font/opentype;base64,"+btoa(A)+");",y='@font-face { font-family:"'+d+'";src:'+b+"}";fe.insertRule(y);var S=[];for(s=0,c=n.length;c>s;s++)S.push(n[s].loadedName);S.push(d);var x=document.createElement("div");for(x.setAttribute("style","visibility: hidden;width: 10px; height: 10px;position: absolute; top: 0px; left: 0px;"),s=0,c=S.length;c>s;++s){var P=document.createElement("span");P.textContent="Hi",P.style.fontFamily=S[s],x.appendChild(P)}document.body.appendChild(x),o(d,function(){document.body.removeChild(x),r.complete()})}},de=function(){function t(){if(this.compiledGlyphs={},1!==arguments.length);else{var t=arguments[0];for(var e in t)this[e]=t[e]}}return t.prototype={bindDOM:function(){if(!this.data)return null;if(PDFJS.disableFontFace)return this.disableFontFace=!0,null;var t=c(new Uint8Array(this.data)),e=this.loadedName,n="url(data:"+this.mimetype+";base64,"+window.btoa(t)+");",r='@font-face { font-family:"'+e+'";src:'+n+"}";return fe.insertRule(r),PDFJS.pdfBug&&"FontInspector"in D&&D.FontInspector.enabled&&D.FontInspector.fontAdded(this,n),r},getPathGenerator:function(t,e){if(!(e in this.compiledGlyphs)){var n=t.get(this.loadedName+"_path_"+e);this.compiledGlyphs[e]=new Function("c","size",n)}return this.compiledGlyphs[e]}},t}()}.call("undefined"==typeof window?this:window),PDFJS.workerSrc||"undefined"==typeof document||(PDFJS.workerSrc=function(){"use strict";var t=document.body||document.getElementsByTagName("head")[0],e=t.lastChild.src;return e&&e.replace(/\.js$/i,".worker.js")}());
\ No newline at end of file +"undefined"==typeof PDFJS&&(("undefined"!=typeof window?window:this).PDFJS={}),PDFJS.version="1.0.814",PDFJS.build="d6328bb",function(){"use strict";function info(msg){PDFJS.verbosity>=PDFJS.VERBOSITY_LEVELS.infos&&console.log("Info: "+msg)}function warn(msg){PDFJS.verbosity>=PDFJS.VERBOSITY_LEVELS.warnings&&console.log("Warning: "+msg)}function error(msg){if(arguments.length>1){var logArguments=["Error:"];logArguments.push.apply(logArguments,arguments),console.log.apply(console,logArguments),msg=[].join.call(arguments," ")}else console.log("Error: "+msg);throw console.log(backtrace()),UnsupportedManager.notify(UNSUPPORTED_FEATURES.unknown),new Error(msg)}function backtrace(){try{throw new Error}catch(e){return e.stack?e.stack.split("\n").slice(2).join("\n"):""}}function assert(cond,msg){cond||error(msg)}function combineUrl(baseUrl,url){if(!url)return baseUrl;if(/^[a-z][a-z0-9+\-.]*:/i.test(url))return url;var i;if("/"===url.charAt(0))return i=baseUrl.indexOf("://"),"/"===url.charAt(1)?++i:i=baseUrl.indexOf("/",i+3),baseUrl.substring(0,i)+url;var pathLength=baseUrl.length;i=baseUrl.lastIndexOf("#"),pathLength=i>=0?i:pathLength,i=baseUrl.lastIndexOf("?",pathLength),pathLength=i>=0?i:pathLength;var prefixLength=baseUrl.lastIndexOf("/",pathLength);return baseUrl.substring(0,prefixLength+1)+url}function isValidUrl(url,allowRelative){if(!url)return!1;var protocol=/^[a-z][a-z0-9+\-.]*(?=:)/i.exec(url);if(!protocol)return allowRelative;switch(protocol=protocol[0].toLowerCase()){case"http":case"https":case"ftp":case"mailto":return!0;default:return!1}}function shadow(obj,prop,value){return Object.defineProperty(obj,prop,{value:value,enumerable:!0,configurable:!0,writable:!1}),value}function bytesToString(bytes){var length=bytes.length,MAX_ARGUMENT_COUNT=8192;if(MAX_ARGUMENT_COUNT>length)return String.fromCharCode.apply(null,bytes);for(var strBuf=[],i=0;length>i;i+=MAX_ARGUMENT_COUNT){var chunkEnd=Math.min(i+MAX_ARGUMENT_COUNT,length),chunk=bytes.subarray(i,chunkEnd);strBuf.push(String.fromCharCode.apply(null,chunk))}return strBuf.join("")}function string32(value){return String.fromCharCode(value>>24&255,value>>16&255,value>>8&255,255&value)}function isLittleEndian(){var buffer8=new Uint8Array(2);buffer8[0]=1;var buffer16=new Uint16Array(buffer8.buffer);return 1===buffer16[0]}function hasCanvasTypedArrays(){var canvas=document.createElement("canvas");canvas.width=canvas.height=1;var ctx=canvas.getContext("2d"),imageData=ctx.createImageData(1,1);return"undefined"!=typeof imageData.data.buffer}function isNum(v){return"number"==typeof v}function isArray(v){return v instanceof Array}function isArrayBuffer(v){return"object"==typeof v&&null!==v&&void 0!==v.byteLength}function createPromiseCapability(){var capability={};return capability.promise=new Promise(function(resolve,reject){capability.resolve=resolve,capability.reject=reject}),capability}function MessageHandler(name,comObj){this.name=name,this.comObj=comObj,this.callbackIndex=1,this.postMessageTransfers=!0;var callbacksCapabilities=this.callbacksCapabilities={},ah=this.actionHandler={};ah.console_log=[function(data){console.log.apply(console,data)}],ah.console_error=[function(data){console.error.apply(console,data)}],ah._unsupported_feature=[function(data){UnsupportedManager.notify(data)}],comObj.onmessage=function(event){var data=event.data;if(data.isReply){var callbackId=data.callbackId;if(data.callbackId in callbacksCapabilities){var callback=callbacksCapabilities[callbackId];delete callbacksCapabilities[callbackId],"error"in data?callback.reject(data.error):callback.resolve(data.data)}else error("Cannot resolve callback "+callbackId)}else if(data.action in ah){var action=ah[data.action];data.callbackId?Promise.resolve().then(function(){return action[0].call(action[1],data.data)}).then(function(result){comObj.postMessage({isReply:!0,callbackId:data.callbackId,data:result})},function(reason){comObj.postMessage({isReply:!0,callbackId:data.callbackId,error:reason})}):action[0].call(action[1],data.data)}else error("Unknown action from worker: "+data.action)}}function loadJpegStream(id,imageUrl,objs){var img=new Image;img.onload=function(){objs.resolve(id,img)},img.onerror=function(){objs.resolve(id,null),warn("Error during JPEG image loading")},img.src=imageUrl}function createScratchCanvas(width,height){var canvas=document.createElement("canvas");return canvas.width=width,canvas.height=height,canvas}function addContextCurrentTransform(ctx){ctx.mozCurrentTransform||(ctx._scaleX=ctx._scaleX||1,ctx._scaleY=ctx._scaleY||1,ctx._originalSave=ctx.save,ctx._originalRestore=ctx.restore,ctx._originalRotate=ctx.rotate,ctx._originalScale=ctx.scale,ctx._originalTranslate=ctx.translate,ctx._originalTransform=ctx.transform,ctx._originalSetTransform=ctx.setTransform,ctx._transformMatrix=[ctx._scaleX,0,0,ctx._scaleY,0,0],ctx._transformStack=[],Object.defineProperty(ctx,"mozCurrentTransform",{get:function(){return this._transformMatrix}}),Object.defineProperty(ctx,"mozCurrentTransformInverse",{get:function(){var m=this._transformMatrix,a=m[0],b=m[1],c=m[2],d=m[3],e=m[4],f=m[5],ad_bc=a*d-b*c,bc_ad=b*c-a*d;return[d/ad_bc,b/bc_ad,c/bc_ad,a/ad_bc,(d*e-c*f)/bc_ad,(b*e-a*f)/ad_bc]}}),ctx.save=function(){var old=this._transformMatrix;this._transformStack.push(old),this._transformMatrix=old.slice(0,6),this._originalSave()},ctx.restore=function(){var prev=this._transformStack.pop();prev&&(this._transformMatrix=prev,this._originalRestore())},ctx.translate=function(x,y){var m=this._transformMatrix;m[4]=m[0]*x+m[2]*y+m[4],m[5]=m[1]*x+m[3]*y+m[5],this._originalTranslate(x,y)},ctx.scale=function(x,y){var m=this._transformMatrix;m[0]=m[0]*x,m[1]=m[1]*x,m[2]=m[2]*y,m[3]=m[3]*y,this._originalScale(x,y)},ctx.transform=function(a,b,c,d,e,f){var m=this._transformMatrix;this._transformMatrix=[m[0]*a+m[2]*b,m[1]*a+m[3]*b,m[0]*c+m[2]*d,m[1]*c+m[3]*d,m[0]*e+m[2]*f+m[4],m[1]*e+m[3]*f+m[5]],ctx._originalTransform(a,b,c,d,e,f)},ctx.setTransform=function(a,b,c,d,e,f){this._transformMatrix=[a,b,c,d,e,f],ctx._originalSetTransform(a,b,c,d,e,f)},ctx.rotate=function(angle){var cosValue=Math.cos(angle),sinValue=Math.sin(angle),m=this._transformMatrix;this._transformMatrix=[m[0]*cosValue+m[2]*sinValue,m[1]*cosValue+m[3]*sinValue,m[0]*-sinValue+m[2]*cosValue,m[1]*-sinValue+m[3]*cosValue,m[4],m[5]],this._originalRotate(angle)})}function compileType3Glyph(imgData){var i,j,j0,ii,POINT_TO_PROCESS_LIMIT=1e3,width=imgData.width,height=imgData.height,width1=width+1,points=new Uint8Array(width1*(height+1)),POINT_TYPES=new Uint8Array([0,2,4,0,1,0,5,4,8,10,0,8,0,2,1,0]),lineSize=width+7&-8,data0=imgData.data,data=new Uint8Array(lineSize*height),pos=0;for(i=0,ii=data0.length;ii>i;i++)for(var mask=128,elem=data0[i];mask>0;)data[pos++]=elem&mask?0:255,mask>>=1;var count=0;for(pos=0,0!==data[pos]&&(points[0]=1,++count),j=1;width>j;j++)data[pos]!==data[pos+1]&&(points[j]=data[pos]?2:1,++count),pos++;for(0!==data[pos]&&(points[j]=2,++count),i=1;height>i;i++){pos=i*lineSize,j0=i*width1,data[pos-lineSize]!==data[pos]&&(points[j0]=data[pos]?1:8,++count);var sum=(data[pos]?4:0)+(data[pos-lineSize]?8:0);for(j=1;width>j;j++)sum=(sum>>2)+(data[pos+1]?4:0)+(data[pos-lineSize+1]?8:0),POINT_TYPES[sum]&&(points[j0+j]=POINT_TYPES[sum],++count),pos++;if(data[pos-lineSize]!==data[pos]&&(points[j0+j]=data[pos]?2:4,++count),count>POINT_TO_PROCESS_LIMIT)return null}for(pos=lineSize*(height-1),j0=i*width1,0!==data[pos]&&(points[j0]=8,++count),j=1;width>j;j++)data[pos]!==data[pos+1]&&(points[j0+j]=data[pos]?4:8,++count),pos++;if(0!==data[pos]&&(points[j0+j]=4,++count),count>POINT_TO_PROCESS_LIMIT)return null;var steps=new Int32Array([0,width1,-1,0,-width1,0,0,0,1]),outlines=[];for(i=0;count&&height>=i;i++){for(var p=i*width1,end=p+width;end>p&&!points[p];)p++;if(p!==end){var pp,coords=[p%width1,i],type=points[p],p0=p;do{var step=steps[type];do p+=step;while(!points[p]);pp=points[p],5!==pp&&10!==pp?(type=pp,points[p]=0):(type=pp&51*type>>4,points[p]&=type>>2|type<<2),coords.push(p%width1),coords.push(p/width1|0),--count}while(p0!==p);outlines.push(coords),--i}}var drawOutline=function(c){c.save(),c.scale(1/width,-1/height),c.translate(0,-height),c.beginPath();for(var i=0,ii=outlines.length;ii>i;i++){var o=outlines[i];c.moveTo(o[0],o[1]);for(var j=2,jj=o.length;jj>j;j+=2)c.lineTo(o[j],o[j+1])}c.fill(),c.beginPath(),c.restore()};return drawOutline}function getShadingPatternFromIR(raw){var shadingIR=ShadingIRs[raw[0]];return shadingIR||error("Unknown IR type: "+raw[0]),shadingIR.fromIR(raw)}var globalScope="undefined"==typeof window?this:window,isWorker="undefined"==typeof window,FONT_IDENTITY_MATRIX=[.001,0,0,.001,0,0],TextRenderingMode={FILL:0,STROKE:1,FILL_STROKE:2,INVISIBLE:3,FILL_ADD_TO_PATH:4,STROKE_ADD_TO_PATH:5,FILL_STROKE_ADD_TO_PATH:6,ADD_TO_PATH:7,FILL_STROKE_MASK:3,ADD_TO_PATH_FLAG:4},ImageKind={GRAYSCALE_1BPP:1,RGB_24BPP:2,RGBA_32BPP:3},AnnotationType={WIDGET:1,TEXT:2,LINK:3};globalScope.PDFJS||(globalScope.PDFJS={}),globalScope.PDFJS.pdfBug=!1,PDFJS.VERBOSITY_LEVELS={errors:0,warnings:1,infos:5};var OPS=PDFJS.OPS={dependency:1,setLineWidth:2,setLineCap:3,setLineJoin:4,setMiterLimit:5,setDash:6,setRenderingIntent:7,setFlatness:8,setGState:9,save:10,restore:11,transform:12,moveTo:13,lineTo:14,curveTo:15,curveTo2:16,curveTo3:17,closePath:18,rectangle:19,stroke:20,closeStroke:21,fill:22,eoFill:23,fillStroke:24,eoFillStroke:25,closeFillStroke:26,closeEOFillStroke:27,endPath:28,clip:29,eoClip:30,beginText:31,endText:32,setCharSpacing:33,setWordSpacing:34,setHScale:35,setLeading:36,setFont:37,setTextRenderingMode:38,setTextRise:39,moveText:40,setLeadingMoveText:41,setTextMatrix:42,nextLine:43,showText:44,showSpacedText:45,nextLineShowText:46,nextLineSetSpacingShowText:47,setCharWidth:48,setCharWidthAndBounds:49,setStrokeColorSpace:50,setFillColorSpace:51,setStrokeColor:52,setStrokeColorN:53,setFillColor:54,setFillColorN:55,setStrokeGray:56,setFillGray:57,setStrokeRGBColor:58,setFillRGBColor:59,setStrokeCMYKColor:60,setFillCMYKColor:61,shadingFill:62,beginInlineImage:63,beginImageData:64,endInlineImage:65,paintXObject:66,markPoint:67,markPointProps:68,beginMarkedContent:69,beginMarkedContentProps:70,endMarkedContent:71,beginCompat:72,endCompat:73,paintFormXObjectBegin:74,paintFormXObjectEnd:75,beginGroup:76,endGroup:77,beginAnnotations:78,endAnnotations:79,beginAnnotation:80,endAnnotation:81,paintJpegXObject:82,paintImageMaskXObject:83,paintImageMaskXObjectGroup:84,paintImageXObject:85,paintInlineImageXObject:86,paintInlineImageXObjectGroup:87,paintImageXObjectRepeat:88,paintImageMaskXObjectRepeat:89,paintSolidColorImageMask:90,constructPath:91},UNSUPPORTED_FEATURES=PDFJS.UNSUPPORTED_FEATURES={unknown:"unknown",forms:"forms",javaScript:"javaScript",smask:"smask",shadingPattern:"shadingPattern",font:"font"},UnsupportedManager=PDFJS.UnsupportedManager=function(){var listeners=[];return{listen:function(cb){listeners.push(cb)},notify:function(featureId){warn('Unsupported feature "'+featureId+'"');for(var i=0,ii=listeners.length;ii>i;i++)listeners[i](featureId)}}}();PDFJS.isValidUrl=isValidUrl;var PasswordResponses=PDFJS.PasswordResponses={NEED_PASSWORD:1,INCORRECT_PASSWORD:2},PasswordException=function(){function PasswordException(msg,code){this.name="PasswordException",this.message=msg,this.code=code}return PasswordException.prototype=new Error,PasswordException.constructor=PasswordException,PasswordException}();PDFJS.PasswordException=PasswordException;var UnknownErrorException=function(){function UnknownErrorException(msg,details){this.name="UnknownErrorException",this.message=msg,this.details=details}return UnknownErrorException.prototype=new Error,UnknownErrorException.constructor=UnknownErrorException,UnknownErrorException}();PDFJS.UnknownErrorException=UnknownErrorException;var InvalidPDFException=function(){function InvalidPDFException(msg){this.name="InvalidPDFException",this.message=msg}return InvalidPDFException.prototype=new Error,InvalidPDFException.constructor=InvalidPDFException,InvalidPDFException}();PDFJS.InvalidPDFException=InvalidPDFException;var MissingPDFException=function(){function MissingPDFException(msg){this.name="MissingPDFException",this.message=msg}return MissingPDFException.prototype=new Error,MissingPDFException.constructor=MissingPDFException,MissingPDFException}();PDFJS.MissingPDFException=MissingPDFException;var UnexpectedResponseException=function(){function UnexpectedResponseException(msg,status){this.name="UnexpectedResponseException",this.message=msg,this.status=status}return UnexpectedResponseException.prototype=new Error,UnexpectedResponseException.constructor=UnexpectedResponseException,UnexpectedResponseException}();PDFJS.UnexpectedResponseException=UnexpectedResponseException;!function(){function NotImplementedException(msg){this.message=msg}return NotImplementedException.prototype=new Error,NotImplementedException.prototype.name="NotImplementedException",NotImplementedException.constructor=NotImplementedException,NotImplementedException}(),function(){function MissingDataException(begin,end){this.begin=begin,this.end=end,this.message="Missing data ["+begin+", "+end+")"}return MissingDataException.prototype=new Error,MissingDataException.prototype.name="MissingDataException",MissingDataException.constructor=MissingDataException,MissingDataException}(),function(){function XRefParseException(msg){this.message=msg}return XRefParseException.prototype=new Error,XRefParseException.prototype.name="XRefParseException",XRefParseException.constructor=XRefParseException,XRefParseException}();Object.defineProperty(PDFJS,"isLittleEndian",{configurable:!0,get:function(){return shadow(PDFJS,"isLittleEndian",isLittleEndian())}}),Object.defineProperty(PDFJS,"hasCanvasTypedArrays",{configurable:!0,get:function(){return shadow(PDFJS,"hasCanvasTypedArrays",hasCanvasTypedArrays())}});{var Uint32ArrayView=function(){function Uint32ArrayView(buffer,length){this.buffer=buffer,this.byteLength=buffer.length,this.length=void 0===length?this.byteLength>>2:length,ensureUint32ArrayViewProps(this.length)}function createUint32ArrayProp(index){return{get:function(){var buffer=this.buffer,offset=index<<2;return(buffer[offset]|buffer[offset+1]<<8|buffer[offset+2]<<16|buffer[offset+3]<<24)>>>0},set:function(value){var buffer=this.buffer,offset=index<<2;buffer[offset]=255&value,buffer[offset+1]=value>>8&255,buffer[offset+2]=value>>16&255,buffer[offset+3]=value>>>24&255}}}function ensureUint32ArrayViewProps(length){for(;length>uint32ArrayViewSetters;)Object.defineProperty(Uint32ArrayView.prototype,uint32ArrayViewSetters,createUint32ArrayProp(uint32ArrayViewSetters)),uint32ArrayViewSetters++}Uint32ArrayView.prototype=Object.create(null);var uint32ArrayViewSetters=0;return Uint32ArrayView}(),IDENTITY_MATRIX=[1,0,0,1,0,0],Util=PDFJS.Util=function(){function Util(){}var rgbBuf=["rgb(",0,",",0,",",0,")"];return Util.makeCssRgb=function(rgb){return rgbBuf[1]=rgb[0],rgbBuf[3]=rgb[1],rgbBuf[5]=rgb[2],rgbBuf.join("")},Util.transform=function(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]]},Util.applyTransform=function(p,m){var xt=p[0]*m[0]+p[1]*m[2]+m[4],yt=p[0]*m[1]+p[1]*m[3]+m[5];return[xt,yt]},Util.applyInverseTransform=function(p,m){var d=m[0]*m[3]-m[1]*m[2],xt=(p[0]*m[3]-p[1]*m[2]+m[2]*m[5]-m[4]*m[3])/d,yt=(-p[0]*m[1]+p[1]*m[0]+m[4]*m[1]-m[5]*m[0])/d;return[xt,yt]},Util.getAxialAlignedBoundingBox=function(r,m){var p1=Util.applyTransform(r,m),p2=Util.applyTransform(r.slice(2,4),m),p3=Util.applyTransform([r[0],r[3]],m),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])]},Util.inverseTransform=function(m){var 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]},Util.apply3dTransform=function(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]]},Util.singularValueDecompose2dScale=function(m){var transpose=[m[0],m[2],m[1],m[3]],a=m[0]*transpose[0]+m[1]*transpose[2],b=m[0]*transpose[1]+m[1]*transpose[3],c=m[2]*transpose[0]+m[3]*transpose[2],d=m[2]*transpose[1]+m[3]*transpose[3],first=(a+d)/2,second=Math.sqrt((a+d)*(a+d)-4*(a*d-c*b))/2,sx=first+second||1,sy=first-second||1;return[Math.sqrt(sx),Math.sqrt(sy)]},Util.normalizeRect=function(rect){var r=rect.slice(0);return rect[0]>rect[2]&&(r[0]=rect[2],r[2]=rect[0]),rect[1]>rect[3]&&(r[1]=rect[3],r[3]=rect[1]),r},Util.intersect=function(rect1,rect2){function compare(a,b){return a-b}var orderedX=[rect1[0],rect1[2],rect2[0],rect2[2]].sort(compare),orderedY=[rect1[1],rect1[3],rect2[1],rect2[3]].sort(compare),result=[];return rect1=Util.normalizeRect(rect1),rect2=Util.normalizeRect(rect2),orderedX[0]===rect1[0]&&orderedX[1]===rect2[0]||orderedX[0]===rect2[0]&&orderedX[1]===rect1[0]?(result[0]=orderedX[1],result[2]=orderedX[2],orderedY[0]===rect1[1]&&orderedY[1]===rect2[1]||orderedY[0]===rect2[1]&&orderedY[1]===rect1[1]?(result[1]=orderedY[1],result[3]=orderedY[2],result):!1):!1},Util.sign=function(num){return 0>num?-1:1},Util.appendToArray=function(arr1,arr2){Array.prototype.push.apply(arr1,arr2)},Util.prependToArray=function(arr1,arr2){Array.prototype.unshift.apply(arr1,arr2)},Util.extendObj=function(obj1,obj2){for(var key in obj2)obj1[key]=obj2[key]},Util.getInheritableProperty=function(dict,name){for(;dict&&!dict.has(name);)dict=dict.get("Parent");return dict?dict.get(name):null},Util.inherit=function(sub,base,prototype){sub.prototype=Object.create(base.prototype),sub.prototype.constructor=sub;for(var prop in prototype)sub.prototype[prop]=prototype[prop]},Util.loadScript=function(src,callback){var script=document.createElement("script"),loaded=!1;script.setAttribute("src",src),callback&&(script.onload=function(){loaded||callback(),loaded=!0}),document.getElementsByTagName("head")[0].appendChild(script)},Util}();PDFJS.PageViewport=function(){function PageViewport(viewBox,scale,rotation,offsetX,offsetY,dontFlip){this.viewBox=viewBox,this.scale=scale,this.rotation=rotation,this.offsetX=offsetX,this.offsetY=offsetY;var rotateA,rotateB,rotateC,rotateD,centerX=(viewBox[2]+viewBox[0])/2,centerY=(viewBox[3]+viewBox[1])/2;switch(rotation%=360,rotation=0>rotation?rotation+360: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;default:rotateA=1,rotateB=0,rotateC=0,rotateD=-1}dontFlip&&(rotateC=-rotateC,rotateD=-rotateD);var offsetCanvasX,offsetCanvasY,width,height;0===rotateA?(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):(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,this.fontScale=scale}return PageViewport.prototype={clone:function(args){args=args||{};var scale="scale"in args?args.scale:this.scale,rotation="rotation"in args?args.rotation:this.rotation;return new PageViewport(this.viewBox.slice(),scale,rotation,this.offsetX,this.offsetY,args.dontFlip)},convertToViewportPoint:function(x,y){return Util.applyTransform([x,y],this.transform)},convertToViewportRectangle:function(rect){var tl=Util.applyTransform([rect[0],rect[1]],this.transform),br=Util.applyTransform([rect[2],rect[3]],this.transform);return[tl[0],tl[1],br[0],br[1]]},convertToPdfPoint:function(x,y){return Util.applyInverseTransform([x,y],this.transform)}},PageViewport}()}PDFJS.createPromiseCapability=createPromiseCapability,function(){function Promise(resolver){this._status=STATUS_PENDING,this._handlers=[];try{resolver.call(this,this._resolve.bind(this),this._reject.bind(this))}catch(e){this._reject(e)}}if(globalScope.Promise)return"function"!=typeof globalScope.Promise.all&&(globalScope.Promise.all=function(iterable){var resolve,reject,count=0,results=[],promise=new globalScope.Promise(function(resolve_,reject_){resolve=resolve_,reject=reject_});return iterable.forEach(function(p,i){count++,p.then(function(result){results[i]=result,count--,0===count&&resolve(results)},reject)}),0===count&&resolve(results),promise}),"function"!=typeof globalScope.Promise.resolve&&(globalScope.Promise.resolve=function(value){return new globalScope.Promise(function(resolve){resolve(value)})}),"function"!=typeof globalScope.Promise.reject&&(globalScope.Promise.reject=function(reason){return new globalScope.Promise(function(resolve,reject){reject(reason)})}),void("function"!=typeof globalScope.Promise.prototype.catch&&(globalScope.Promise.prototype.catch=function(onReject){return globalScope.Promise.prototype.then(void 0,onReject)}));var STATUS_PENDING=0,STATUS_RESOLVED=1,STATUS_REJECTED=2,REJECTION_TIMEOUT=500,HandlerManager={handlers:[],running:!1,unhandledRejections:[],pendingRejectionCheck:!1,scheduleHandlers:function(promise){promise._status!==STATUS_PENDING&&(this.handlers=this.handlers.concat(promise._handlers),promise._handlers=[],this.running||(this.running=!0,setTimeout(this.runHandlers.bind(this),0)))},runHandlers:function(){for(var RUN_TIMEOUT=1,timeoutAt=Date.now()+RUN_TIMEOUT;this.handlers.length>0;){var handler=this.handlers.shift(),nextStatus=handler.thisPromise._status,nextValue=handler.thisPromise._value;try{nextStatus===STATUS_RESOLVED?"function"==typeof handler.onResolve&&(nextValue=handler.onResolve(nextValue)):"function"==typeof handler.onReject&&(nextValue=handler.onReject(nextValue),nextStatus=STATUS_RESOLVED,handler.thisPromise._unhandledRejection&&this.removeUnhandeledRejection(handler.thisPromise))}catch(ex){nextStatus=STATUS_REJECTED,nextValue=ex}if(handler.nextPromise._updateStatus(nextStatus,nextValue),Date.now()>=timeoutAt)break}return this.handlers.length>0?void setTimeout(this.runHandlers.bind(this),0):void(this.running=!1)},addUnhandledRejection:function(promise){this.unhandledRejections.push({promise:promise,time:Date.now()}),this.scheduleRejectionCheck()},removeUnhandeledRejection:function(promise){promise._unhandledRejection=!1;for(var i=0;i<this.unhandledRejections.length;i++)this.unhandledRejections[i].promise===promise&&(this.unhandledRejections.splice(i),i--)},scheduleRejectionCheck:function(){this.pendingRejectionCheck||(this.pendingRejectionCheck=!0,setTimeout(function(){this.pendingRejectionCheck=!1;for(var now=Date.now(),i=0;i<this.unhandledRejections.length;i++)if(now-this.unhandledRejections[i].time>REJECTION_TIMEOUT){var unhandled=this.unhandledRejections[i].promise._value,msg="Unhandled rejection: "+unhandled;unhandled.stack&&(msg+="\n"+unhandled.stack),warn(msg),this.unhandledRejections.splice(i),i--}this.unhandledRejections.length&&this.scheduleRejectionCheck()}.bind(this),REJECTION_TIMEOUT))}};Promise.all=function(promises){function reject(reason){deferred._status!==STATUS_REJECTED&&(results=[],rejectAll(reason))}var resolveAll,rejectAll,deferred=new Promise(function(resolve,reject){resolveAll=resolve,rejectAll=reject}),unresolved=promises.length,results=[];if(0===unresolved)return resolveAll(results),deferred;for(var i=0,ii=promises.length;ii>i;++i){var promise=promises[i],resolve=function(i){return function(value){deferred._status!==STATUS_REJECTED&&(results[i]=value,unresolved--,0===unresolved&&resolveAll(results))}}(i);Promise.isPromise(promise)?promise.then(resolve,reject):resolve(promise)}return deferred},Promise.isPromise=function(value){return value&&"function"==typeof value.then},Promise.resolve=function(value){return new Promise(function(resolve){resolve(value)})},Promise.reject=function(reason){return new Promise(function(resolve,reject){reject(reason)})},Promise.prototype={_status:null,_value:null,_handlers:null,_unhandledRejection:null,_updateStatus:function(status,value){if(this._status!==STATUS_RESOLVED&&this._status!==STATUS_REJECTED){if(status===STATUS_RESOLVED&&Promise.isPromise(value))return void value.then(this._updateStatus.bind(this,STATUS_RESOLVED),this._updateStatus.bind(this,STATUS_REJECTED));this._status=status,this._value=value,status===STATUS_REJECTED&&0===this._handlers.length&&(this._unhandledRejection=!0,HandlerManager.addUnhandledRejection(this)),HandlerManager.scheduleHandlers(this)}},_resolve:function(value){this._updateStatus(STATUS_RESOLVED,value)},_reject:function(reason){this._updateStatus(STATUS_REJECTED,reason)},then:function(onResolve,onReject){var nextPromise=new Promise(function(resolve,reject){this.resolve=resolve,this.reject=reject});return this._handlers.push({thisPromise:this,onResolve:onResolve,onReject:onReject,nextPromise:nextPromise}),HandlerManager.scheduleHandlers(this),nextPromise},"catch":function(onReject){return this.then(void 0,onReject)}},globalScope.Promise=Promise}();var StatTimer=function(){function rpad(str,pad,length){for(;str.length<length;)str+=pad;return str}function StatTimer(){this.started={},this.times=[],this.enabled=!0}return StatTimer.prototype={time:function(name){this.enabled&&(name in this.started&&warn("Timer is already running for "+name),this.started[name]=Date.now())},timeEnd:function(name){this.enabled&&(name in this.started||warn("Timer has not been started for "+name),this.times.push({name:name,start:this.started[name],end:Date.now()}),delete this.started[name])},toString:function(){var i,ii,times=this.times,out="",longest=0;for(i=0,ii=times.length;ii>i;++i){var name=times[i].name;name.length>longest&&(longest=name.length)}for(i=0,ii=times.length;ii>i;++i){var span=times[i],duration=span.end-span.start;out+=rpad(span.name," ",longest)+" "+duration+"ms\n"}return out}},StatTimer}();PDFJS.createBlob=function(data,contentType){if("undefined"!=typeof Blob)return new Blob([data],{type:contentType});var bb=new MozBlobBuilder;return bb.append(data),bb.getBlob(contentType)},PDFJS.createObjectURL=function(){var digits="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";return function(data,contentType){if(!PDFJS.disableCreateObjectURL&&"undefined"!=typeof URL&&URL.createObjectURL){var blob=PDFJS.createBlob(data,contentType);return URL.createObjectURL(blob)}for(var buffer="data:"+contentType+";base64,",i=0,ii=data.length;ii>i;i+=3){var b1=255&data[i],b2=255&data[i+1],b3=255&data[i+2],d1=b1>>2,d2=(3&b1)<<4|b2>>4,d3=ii>i+1?(15&b2)<<2|b3>>6:64,d4=ii>i+2?63&b3:64;buffer+=digits[d1]+digits[d2]+digits[d3]+digits[d4]}return buffer}}(),MessageHandler.prototype={on:function(actionName,handler,scope){var ah=this.actionHandler;ah[actionName]&&error('There is already an actionName called "'+actionName+'"'),ah[actionName]=[handler,scope]},send:function(actionName,data,transfers){var message={action:actionName,data:data};this.postMessage(message,transfers)},sendWithPromise:function(actionName,data,transfers){var callbackId=this.callbackIndex++,message={action:actionName,data:data,callbackId:callbackId},capability=createPromiseCapability();this.callbacksCapabilities[callbackId]=capability;try{this.postMessage(message,transfers)}catch(e){capability.reject(e)}return capability.promise},postMessage:function(message,transfers){transfers&&this.postMessageTransfers?this.comObj.postMessage(message,transfers):this.comObj.postMessage(message)}},PDFJS.maxImageSize=void 0===PDFJS.maxImageSize?-1:PDFJS.maxImageSize,PDFJS.cMapUrl=void 0===PDFJS.cMapUrl?null:PDFJS.cMapUrl,PDFJS.cMapPacked=void 0===PDFJS.cMapPacked?!1:PDFJS.cMapPacked,PDFJS.disableFontFace=void 0===PDFJS.disableFontFace?!1:PDFJS.disableFontFace,PDFJS.imageResourcesPath=void 0===PDFJS.imageResourcesPath?"":PDFJS.imageResourcesPath,PDFJS.disableWorker=void 0===PDFJS.disableWorker?!1:PDFJS.disableWorker,PDFJS.workerSrc=void 0===PDFJS.workerSrc?null:PDFJS.workerSrc,PDFJS.disableRange=void 0===PDFJS.disableRange?!1:PDFJS.disableRange,PDFJS.disableAutoFetch=void 0===PDFJS.disableAutoFetch?!1:PDFJS.disableAutoFetch,PDFJS.pdfBug=void 0===PDFJS.pdfBug?!1:PDFJS.pdfBug,PDFJS.postMessageTransfers=void 0===PDFJS.postMessageTransfers?!0:PDFJS.postMessageTransfers,PDFJS.disableCreateObjectURL=void 0===PDFJS.disableCreateObjectURL?!1:PDFJS.disableCreateObjectURL,PDFJS.disableWebGL=void 0===PDFJS.disableWebGL?!0:PDFJS.disableWebGL,PDFJS.useOnlyCssZoom=void 0===PDFJS.useOnlyCssZoom?!1:PDFJS.useOnlyCssZoom,PDFJS.verbosity=void 0===PDFJS.verbosity?PDFJS.VERBOSITY_LEVELS.warnings:PDFJS.verbosity,PDFJS.maxCanvasPixels=void 0===PDFJS.maxCanvasPixels?16777216:PDFJS.maxCanvasPixels,PDFJS.getDocument=function(source,pdfDataRangeTransport,passwordCallback,progressCallback){var workerInitializedCapability,workerReadyCapability,transport;"string"==typeof source?source={url:source}:isArrayBuffer(source)?source={data:source}:"object"!=typeof source&&error("Invalid parameter in getDocument, need either Uint8Array, string or a parameter object"),source.url||source.data||error("Invalid parameter array, need either .data or .url");var params={};for(var key in source)params[key]="url"!==key||"undefined"==typeof window?source[key]:combineUrl(window.location.href,source[key]);return workerInitializedCapability=createPromiseCapability(),workerReadyCapability=createPromiseCapability(),transport=new WorkerTransport(workerInitializedCapability,workerReadyCapability,pdfDataRangeTransport,progressCallback),workerInitializedCapability.promise.then(function(){transport.passwordCallback=passwordCallback,transport.fetchDocument(params)}),workerReadyCapability.promise};var PDFDocumentProxy=function(){function PDFDocumentProxy(pdfInfo,transport){this.pdfInfo=pdfInfo,this.transport=transport}return PDFDocumentProxy.prototype={get numPages(){return this.pdfInfo.numPages},get fingerprint(){return this.pdfInfo.fingerprint},getPage:function(pageNumber){return this.transport.getPage(pageNumber)},getPageIndex:function(ref){return this.transport.getPageIndex(ref)},getDestinations:function(){return this.transport.getDestinations()},getAttachments:function(){return this.transport.getAttachments()},getJavaScript:function(){return this.transport.getJavaScript()},getOutline:function(){return this.transport.getOutline()},getMetadata:function(){return this.transport.getMetadata()},getData:function(){return this.transport.getData()},getDownloadInfo:function(){return this.transport.downloadInfoCapability.promise},getStats:function(){return this.transport.getStats()},cleanup:function(){this.transport.startCleanup()},destroy:function(){this.transport.destroy()}},PDFDocumentProxy}(),PDFPageProxy=function(){function PDFPageProxy(pageIndex,pageInfo,transport){this.pageIndex=pageIndex,this.pageInfo=pageInfo,this.transport=transport,this.stats=new StatTimer,this.stats.enabled=!!globalScope.PDFJS.enableStats,this.commonObjs=transport.commonObjs,this.objs=new PDFObjects,this.cleanupAfterRender=!1,this.pendingDestroy=!1,this.intentStates={}}return PDFPageProxy.prototype={get pageNumber(){return this.pageIndex+1},get rotate(){return this.pageInfo.rotate},get ref(){return this.pageInfo.ref},get view(){return this.pageInfo.view},getViewport:function(scale,rotate){return arguments.length<2&&(rotate=this.rotate),new PDFJS.PageViewport(this.view,scale,rotate,0,0)},getAnnotations:function(){if(this.annotationsPromise)return this.annotationsPromise;var promise=this.transport.getAnnotations(this.pageIndex);return this.annotationsPromise=promise,promise},render:function(params){function complete(error){var i=intentState.renderTasks.indexOf(internalRenderTask);i>=0&&intentState.renderTasks.splice(i,1),self.cleanupAfterRender&&(self.pendingDestroy=!0),self._tryDestroy(),error?internalRenderTask.capability.reject(error):internalRenderTask.capability.resolve(),stats.timeEnd("Rendering"),stats.timeEnd("Overall") +}var stats=this.stats;stats.time("Overall"),this.pendingDestroy=!1;var renderingIntent="print"===params.intent?"print":"display";this.intentStates[renderingIntent]||(this.intentStates[renderingIntent]={});var intentState=this.intentStates[renderingIntent];intentState.displayReadyCapability||(intentState.receivingOperatorList=!0,intentState.displayReadyCapability=createPromiseCapability(),intentState.operatorList={fnArray:[],argsArray:[],lastChunk:!1},this.stats.time("Page Request"),this.transport.messageHandler.send("RenderPageRequest",{pageIndex:this.pageNumber-1,intent:renderingIntent}));var internalRenderTask=new InternalRenderTask(complete,params,this.objs,this.commonObjs,intentState.operatorList,this.pageNumber);intentState.renderTasks||(intentState.renderTasks=[]),intentState.renderTasks.push(internalRenderTask);var renderTask=new RenderTask(internalRenderTask),self=this;return intentState.displayReadyCapability.promise.then(function(transparency){return self.pendingDestroy?void complete():(stats.time("Rendering"),internalRenderTask.initalizeGraphics(transparency),void internalRenderTask.operatorListChanged())},function(reason){complete(reason)}),renderTask},getOperatorList:function(){function operatorListChanged(){intentState.operatorList.lastChunk&&intentState.opListReadCapability.resolve(intentState.operatorList)}var renderingIntent="oplist";this.intentStates[renderingIntent]||(this.intentStates[renderingIntent]={});var intentState=this.intentStates[renderingIntent];if(!intentState.opListReadCapability){var opListTask={};opListTask.operatorListChanged=operatorListChanged,intentState.receivingOperatorList=!0,intentState.opListReadCapability=createPromiseCapability(),intentState.renderTasks=[],intentState.renderTasks.push(opListTask),intentState.operatorList={fnArray:[],argsArray:[],lastChunk:!1},this.transport.messageHandler.send("RenderPageRequest",{pageIndex:this.pageIndex,intent:renderingIntent})}return intentState.opListReadCapability.promise},getTextContent:function(){return this.transport.messageHandler.sendWithPromise("GetTextContent",{pageIndex:this.pageNumber-1})},destroy:function(){this.pendingDestroy=!0,this._tryDestroy()},_tryDestroy:function(){this.pendingDestroy&&!Object.keys(this.intentStates).some(function(intent){var intentState=this.intentStates[intent];return 0!==intentState.renderTasks.length||intentState.receivingOperatorList},this)&&(Object.keys(this.intentStates).forEach(function(intent){delete this.intentStates[intent]},this),this.objs.clear(),this.annotationsPromise=null,this.pendingDestroy=!1)},_startRenderPage:function(transparency,intent){var intentState=this.intentStates[intent];intentState.displayReadyCapability&&intentState.displayReadyCapability.resolve(transparency)},_renderPageChunk:function(operatorListChunk,intent){var i,ii,intentState=this.intentStates[intent];for(i=0,ii=operatorListChunk.length;ii>i;i++)intentState.operatorList.fnArray.push(operatorListChunk.fnArray[i]),intentState.operatorList.argsArray.push(operatorListChunk.argsArray[i]);for(intentState.operatorList.lastChunk=operatorListChunk.lastChunk,i=0;i<intentState.renderTasks.length;i++)intentState.renderTasks[i].operatorListChanged();operatorListChunk.lastChunk&&(intentState.receivingOperatorList=!1,this._tryDestroy())}},PDFPageProxy}(),WorkerTransport=function(){function WorkerTransport(workerInitializedCapability,workerReadyCapability,pdfDataRangeTransport,progressCallback){if(this.pdfDataRangeTransport=pdfDataRangeTransport,this.workerInitializedCapability=workerInitializedCapability,this.workerReadyCapability=workerReadyCapability,this.progressCallback=progressCallback,this.commonObjs=new PDFObjects,this.pageCache=[],this.pagePromises=[],this.downloadInfoCapability=createPromiseCapability(),this.passwordCallback=null,!globalScope.PDFJS.disableWorker&&"undefined"!=typeof Worker){var workerSrc=PDFJS.workerSrc;workerSrc||error("No PDFJS.workerSrc specified");try{var worker=new Worker(workerSrc),messageHandler=new MessageHandler("main",worker);this.messageHandler=messageHandler,messageHandler.on("test",function(data){var supportTypedArray=data&&data.supportTypedArray;supportTypedArray?(this.worker=worker,data.supportTransfers||(PDFJS.postMessageTransfers=!1),this.setupMessageHandler(messageHandler),workerInitializedCapability.resolve()):this.setupFakeWorker()}.bind(this));var testObj=new Uint8Array([PDFJS.postMessageTransfers?255:0]);try{messageHandler.send("test",testObj,[testObj.buffer])}catch(ex){info("Cannot use postMessage transfers"),testObj[0]=0,messageHandler.send("test",testObj)}return}catch(e){info("The worker has been disabled.")}}this.setupFakeWorker()}return WorkerTransport.prototype={destroy:function(){this.pageCache=[],this.pagePromises=[];var self=this;this.messageHandler.sendWithPromise("Terminate",null).then(function(){FontLoader.clear(),self.worker&&self.worker.terminate()})},setupFakeWorker:function(){globalScope.PDFJS.disableWorker=!0,PDFJS.fakeWorkerFilesLoadedCapability||(PDFJS.fakeWorkerFilesLoadedCapability=createPromiseCapability(),Util.loadScript(PDFJS.workerSrc,function(){PDFJS.fakeWorkerFilesLoadedCapability.resolve()})),PDFJS.fakeWorkerFilesLoadedCapability.promise.then(function(){warn("Setting up fake worker.");var fakeWorker={postMessage:function(obj){fakeWorker.onmessage({data:obj})},terminate:function(){}},messageHandler=new MessageHandler("main",fakeWorker);this.setupMessageHandler(messageHandler),PDFJS.WorkerMessageHandler.setup(messageHandler),this.workerInitializedCapability.resolve()}.bind(this))},setupMessageHandler:function(messageHandler){function updatePassword(password){messageHandler.send("UpdatePassword",password)}this.messageHandler=messageHandler;var pdfDataRangeTransport=this.pdfDataRangeTransport;pdfDataRangeTransport&&(pdfDataRangeTransport.addRangeListener(function(begin,chunk){messageHandler.send("OnDataRange",{begin:begin,chunk:chunk})}),pdfDataRangeTransport.addProgressListener(function(loaded){messageHandler.send("OnDataProgress",{loaded:loaded})}),messageHandler.on("RequestDataRange",function(data){pdfDataRangeTransport.requestDataRange(data.begin,data.end)},this)),messageHandler.on("GetDoc",function(data){var pdfInfo=data.pdfInfo;this.numPages=data.pdfInfo.numPages;var pdfDocument=new PDFDocumentProxy(pdfInfo,this);this.pdfDocument=pdfDocument,this.workerReadyCapability.resolve(pdfDocument)},this),messageHandler.on("NeedPassword",function(exception){return this.passwordCallback?this.passwordCallback(updatePassword,PasswordResponses.NEED_PASSWORD):void this.workerReadyCapability.reject(new PasswordException(exception.message,exception.code))},this),messageHandler.on("IncorrectPassword",function(exception){return this.passwordCallback?this.passwordCallback(updatePassword,PasswordResponses.INCORRECT_PASSWORD):void this.workerReadyCapability.reject(new PasswordException(exception.message,exception.code))},this),messageHandler.on("InvalidPDF",function(exception){this.workerReadyCapability.reject(new InvalidPDFException(exception.message))},this),messageHandler.on("MissingPDF",function(exception){this.workerReadyCapability.reject(new MissingPDFException(exception.message))},this),messageHandler.on("UnexpectedResponse",function(exception){this.workerReadyCapability.reject(new UnexpectedResponseException(exception.message,exception.status))},this),messageHandler.on("UnknownError",function(exception){this.workerReadyCapability.reject(new UnknownErrorException(exception.message,exception.details))},this),messageHandler.on("DataLoaded",function(data){this.downloadInfoCapability.resolve(data)},this),messageHandler.on("StartRenderPage",function(data){var page=this.pageCache[data.pageIndex];page.stats.timeEnd("Page Request"),page._startRenderPage(data.transparency,data.intent)},this),messageHandler.on("RenderPageChunk",function(data){var page=this.pageCache[data.pageIndex];page._renderPageChunk(data.operatorList,data.intent)},this),messageHandler.on("commonobj",function(data){var id=data[0],type=data[1];if(!this.commonObjs.hasData(id))switch(type){case"Font":var font,exportedData=data[2];if("error"in exportedData){var error=exportedData.error;warn("Error during font loading: "+error),this.commonObjs.resolve(id,error);break}font=new FontFace(exportedData),FontLoader.bind([font],function(){this.commonObjs.resolve(id,font)}.bind(this));break;case"FontPath":this.commonObjs.resolve(id,data[2]);break;default:error("Got unknown common object type "+type)}},this),messageHandler.on("obj",function(data){var imageData,id=data[0],pageIndex=data[1],type=data[2],pageProxy=this.pageCache[pageIndex];if(!pageProxy.objs.hasData(id))switch(type){case"JpegStream":imageData=data[3],loadJpegStream(id,imageData,pageProxy.objs);break;case"Image":imageData=data[3],pageProxy.objs.resolve(id,imageData);var MAX_IMAGE_SIZE_TO_STORE=8e6;imageData&&"data"in imageData&&imageData.data.length>MAX_IMAGE_SIZE_TO_STORE&&(pageProxy.cleanupAfterRender=!0);break;default:error("Got unknown object type "+type)}},this),messageHandler.on("DocProgress",function(data){this.progressCallback&&this.progressCallback({loaded:data.loaded,total:data.total})},this),messageHandler.on("PageError",function(data){var page=this.pageCache[data.pageNum-1],intentState=page.intentStates[data.intent];intentState.displayReadyCapability?intentState.displayReadyCapability.reject(data.error):error(data.error)},this),messageHandler.on("JpegDecode",function(data){var imageUrl=data[0],components=data[1];return 3!==components&&1!==components?Promise.reject(new Error("Only 3 components or 1 component can be returned")):new Promise(function(resolve,reject){var img=new Image;img.onload=function(){var width=img.width,height=img.height,size=width*height,rgbaLength=4*size,buf=new Uint8Array(size*components),tmpCanvas=createScratchCanvas(width,height),tmpCtx=tmpCanvas.getContext("2d");tmpCtx.drawImage(img,0,0);var i,j,data=tmpCtx.getImageData(0,0,width,height).data;if(3===components)for(i=0,j=0;rgbaLength>i;i+=4,j+=3)buf[j]=data[i],buf[j+1]=data[i+1],buf[j+2]=data[i+2];else if(1===components)for(i=0,j=0;rgbaLength>i;i+=4,j++)buf[j]=data[i];resolve({data:buf,width:width,height:height})},img.onerror=function(){reject(new Error("JpegDecode failed to load image"))},img.src=imageUrl})})},fetchDocument:function(source){source.disableAutoFetch=PDFJS.disableAutoFetch,source.chunkedViewerLoading=!!this.pdfDataRangeTransport,this.messageHandler.send("GetDocRequest",{source:source,disableRange:PDFJS.disableRange,maxImageSize:PDFJS.maxImageSize,cMapUrl:PDFJS.cMapUrl,cMapPacked:PDFJS.cMapPacked,disableFontFace:PDFJS.disableFontFace,disableCreateObjectURL:PDFJS.disableCreateObjectURL,verbosity:PDFJS.verbosity})},getData:function(){return this.messageHandler.sendWithPromise("GetData",null)},getPage:function(pageNumber){if(0>=pageNumber||pageNumber>this.numPages||(0|pageNumber)!==pageNumber)return Promise.reject(new Error("Invalid page request"));var pageIndex=pageNumber-1;if(pageIndex in this.pagePromises)return this.pagePromises[pageIndex];var promise=this.messageHandler.sendWithPromise("GetPage",{pageIndex:pageIndex}).then(function(pageInfo){var page=new PDFPageProxy(pageIndex,pageInfo,this);return this.pageCache[pageIndex]=page,page}.bind(this));return this.pagePromises[pageIndex]=promise,promise},getPageIndex:function(ref){return this.messageHandler.sendWithPromise("GetPageIndex",{ref:ref})},getAnnotations:function(pageIndex){return this.messageHandler.sendWithPromise("GetAnnotations",{pageIndex:pageIndex})},getDestinations:function(){return this.messageHandler.sendWithPromise("GetDestinations",null)},getAttachments:function(){return this.messageHandler.sendWithPromise("GetAttachments",null)},getJavaScript:function(){return this.messageHandler.sendWithPromise("GetJavaScript",null)},getOutline:function(){return this.messageHandler.sendWithPromise("GetOutline",null)},getMetadata:function(){return this.messageHandler.sendWithPromise("GetMetadata",null).then(function(results){return{info:results[0],metadata:results[1]?new PDFJS.Metadata(results[1]):null}})},getStats:function(){return this.messageHandler.sendWithPromise("GetStats",null)},startCleanup:function(){this.messageHandler.sendWithPromise("Cleanup",null).then(function(){for(var i=0,ii=this.pageCache.length;ii>i;i++){var page=this.pageCache[i];page&&page.destroy()}this.commonObjs.clear(),FontLoader.clear()}.bind(this))}},WorkerTransport}(),PDFObjects=function(){function PDFObjects(){this.objs={}}return PDFObjects.prototype={ensureObj:function(objId){if(this.objs[objId])return this.objs[objId];var obj={capability:createPromiseCapability(),data:null,resolved:!1};return this.objs[objId]=obj,obj},get:function(objId,callback){if(callback)return this.ensureObj(objId).capability.promise.then(callback),null;var obj=this.objs[objId];return obj&&obj.resolved||error("Requesting object that isn't resolved yet "+objId),obj.data},resolve:function(objId,data){var obj=this.ensureObj(objId);obj.resolved=!0,obj.data=data,obj.capability.resolve(data)},isResolved:function(objId){var objs=this.objs;return objs[objId]?objs[objId].resolved:!1},hasData:function(objId){return this.isResolved(objId)},getData:function(objId){var objs=this.objs;return objs[objId]&&objs[objId].resolved?objs[objId].data:null},clear:function(){this.objs={}}},PDFObjects}(),RenderTask=function(){function RenderTask(internalRenderTask){this.internalRenderTask=internalRenderTask,this.promise=this.internalRenderTask.capability.promise}return RenderTask.prototype={cancel:function(){this.internalRenderTask.cancel()},then:function(onFulfilled,onRejected){return this.promise.then(onFulfilled,onRejected)}},RenderTask}(),InternalRenderTask=function(){function InternalRenderTask(callback,params,objs,commonObjs,operatorList,pageNumber){this.callback=callback,this.params=params,this.objs=objs,this.commonObjs=commonObjs,this.operatorListIdx=null,this.operatorList=operatorList,this.pageNumber=pageNumber,this.running=!1,this.graphicsReadyCallback=null,this.graphicsReady=!1,this.cancelled=!1,this.capability=createPromiseCapability(),this._continueBound=this._continue.bind(this),this._scheduleNextBound=this._scheduleNext.bind(this),this._nextBound=this._next.bind(this)}return InternalRenderTask.prototype={initalizeGraphics:function(transparency){if(!this.cancelled){PDFJS.pdfBug&&"StepperManager"in globalScope&&globalScope.StepperManager.enabled&&(this.stepper=globalScope.StepperManager.create(this.pageNumber-1),this.stepper.init(this.operatorList),this.stepper.nextBreakPoint=this.stepper.getNextBreakPoint());var params=this.params;this.gfx=new CanvasGraphics(params.canvasContext,this.commonObjs,this.objs,params.imageLayer),this.gfx.beginDrawing(params.viewport,transparency),this.operatorListIdx=0,this.graphicsReady=!0,this.graphicsReadyCallback&&this.graphicsReadyCallback()}},cancel:function(){this.running=!1,this.cancelled=!0,this.callback("cancelled")},operatorListChanged:function(){return this.graphicsReady?(this.stepper&&this.stepper.updateOperatorList(this.operatorList),void(this.running||this._continue())):void(this.graphicsReadyCallback||(this.graphicsReadyCallback=this._continueBound))},_continue:function(){this.running=!0,this.cancelled||(this.params.continueCallback?this.params.continueCallback(this._scheduleNextBound):this._scheduleNext())},_scheduleNext:function(){window.requestAnimationFrame(this._nextBound)},_next:function(){this.cancelled||(this.operatorListIdx=this.gfx.executeOperatorList(this.operatorList,this.operatorListIdx,this._continueBound,this.stepper),this.operatorListIdx===this.operatorList.argsArray.length&&(this.running=!1,this.operatorList.lastChunk&&(this.gfx.endDrawing(),this.callback())))}},InternalRenderTask}(),MIN_FONT_SIZE=(PDFJS.Metadata=function(){function fixMetadata(meta){return meta.replace(/>\\376\\377([^<]+)/g,function(all,codes){for(var bytes=codes.replace(/\\([0-3])([0-7])([0-7])/g,function(code,d1,d2,d3){return String.fromCharCode(64*d1+8*d2+1*d3)}),chars="",i=0;i<bytes.length;i+=2){var code=256*bytes.charCodeAt(i)+bytes.charCodeAt(i+1);chars+="&#x"+(65536+code).toString(16).substring(1)+";"}return">"+chars})}function Metadata(meta){if("string"==typeof meta){meta=fixMetadata(meta);var parser=new DOMParser;meta=parser.parseFromString(meta,"application/xml")}else meta instanceof Document||error("Metadata: Invalid metadata object");this.metaDocument=meta,this.metadata={},this.parse()}return Metadata.prototype={parse:function(){var doc=this.metaDocument,rdf=doc.documentElement;if("rdf:rdf"!==rdf.nodeName.toLowerCase())for(rdf=rdf.firstChild;rdf&&"rdf:rdf"!==rdf.nodeName.toLowerCase();)rdf=rdf.nextSibling;var nodeName=rdf?rdf.nodeName.toLowerCase():null;if(rdf&&"rdf:rdf"===nodeName&&rdf.hasChildNodes()){var desc,entry,name,i,ii,length,iLength,children=rdf.childNodes;for(i=0,length=children.length;length>i;i++)if(desc=children[i],"rdf:description"===desc.nodeName.toLowerCase())for(ii=0,iLength=desc.childNodes.length;iLength>ii;ii++)"#text"!==desc.childNodes[ii].nodeName.toLowerCase()&&(entry=desc.childNodes[ii],name=entry.nodeName.toLowerCase(),this.metadata[name]=entry.textContent.trim())}},get:function(name){return this.metadata[name]||null},has:function(name){return"undefined"!=typeof this.metadata[name]}},Metadata}(),16),MAX_GROUP_SIZE=4096,COMPILE_TYPE3_GLYPHS=!0,CachedCanvases=function(){var cache={};return{getCanvas:function(id,width,height,trackTransform){var canvasEntry;if(id in cache)canvasEntry=cache[id],canvasEntry.canvas.width=width,canvasEntry.canvas.height=height,canvasEntry.context.setTransform(1,0,0,1,0,0);else{var canvas=createScratchCanvas(width,height),ctx=canvas.getContext("2d");trackTransform&&addContextCurrentTransform(ctx),cache[id]=canvasEntry={canvas:canvas,context:ctx}}return canvasEntry},clear:function(){for(var id in cache){var canvasEntry=cache[id];canvasEntry.canvas.width=0,canvasEntry.canvas.height=0,delete cache[id]}}}}(),CanvasExtraState=function(){function CanvasExtraState(old){this.alphaIsShape=!1,this.fontSize=0,this.fontSizeScale=1,this.textMatrix=IDENTITY_MATRIX,this.textMatrixScale=1,this.fontMatrix=FONT_IDENTITY_MATRIX,this.leading=0,this.x=0,this.y=0,this.lineX=0,this.lineY=0,this.charSpacing=0,this.wordSpacing=0,this.textHScale=1,this.textRenderingMode=TextRenderingMode.FILL,this.textRise=0,this.fillColor="#000000",this.strokeColor="#000000",this.fillAlpha=1,this.strokeAlpha=1,this.lineWidth=1,this.activeSMask=null,this.old=old}return CanvasExtraState.prototype={clone:function(){return Object.create(this)},setCurrentPoint:function(x,y){this.x=x,this.y=y}},CanvasExtraState}(),CanvasGraphics=function(){function CanvasGraphics(canvasCtx,commonObjs,objs,imageLayer){this.ctx=canvasCtx,this.current=new CanvasExtraState,this.stateStack=[],this.pendingClip=null,this.pendingEOFill=!1,this.res=null,this.xobjs=null,this.commonObjs=commonObjs,this.objs=objs,this.imageLayer=imageLayer,this.groupStack=[],this.processingType3=null,this.baseTransform=null,this.baseTransformStack=[],this.groupLevel=0,this.smaskStack=[],this.smaskCounter=0,this.tempSMask=null,canvasCtx&&addContextCurrentTransform(canvasCtx)}function putBinaryImageData(ctx,imgData){if("undefined"!=typeof ImageData&&imgData instanceof ImageData)return void ctx.putImageData(imgData,0,0);var destPos,i,j,thisChunkHeight,elemsInThisChunk,height=imgData.height,width=imgData.width,fullChunkHeight=16,fracChunks=height/fullChunkHeight,fullChunks=Math.floor(fracChunks),totalChunks=Math.ceil(fracChunks),partialChunkHeight=height-fullChunks*fullChunkHeight,chunkImgData=ctx.createImageData(width,fullChunkHeight),srcPos=0,src=imgData.data,dest=chunkImgData.data;if(imgData.kind===ImageKind.GRAYSCALE_1BPP){var srcLength=src.byteLength,dest32=PDFJS.hasCanvasTypedArrays?new Uint32Array(dest.buffer):new Uint32ArrayView(dest),dest32DataLength=dest32.length,fullSrcDiff=width+7>>3,white=4294967295,black=PDFJS.isLittleEndian||!PDFJS.hasCanvasTypedArrays?4278190080:255;for(i=0;totalChunks>i;i++){for(thisChunkHeight=fullChunks>i?fullChunkHeight:partialChunkHeight,destPos=0,j=0;thisChunkHeight>j;j++){for(var srcDiff=srcLength-srcPos,k=0,kEnd=srcDiff>fullSrcDiff?width:8*srcDiff-7,kEndUnrolled=-8&kEnd,mask=0,srcByte=0;kEndUnrolled>k;k+=8)srcByte=src[srcPos++],dest32[destPos++]=128&srcByte?white:black,dest32[destPos++]=64&srcByte?white:black,dest32[destPos++]=32&srcByte?white:black,dest32[destPos++]=16&srcByte?white:black,dest32[destPos++]=8&srcByte?white:black,dest32[destPos++]=4&srcByte?white:black,dest32[destPos++]=2&srcByte?white:black,dest32[destPos++]=1&srcByte?white:black;for(;kEnd>k;k++)0===mask&&(srcByte=src[srcPos++],mask=128),dest32[destPos++]=srcByte&mask?white:black,mask>>=1}for(;dest32DataLength>destPos;)dest32[destPos++]=0;ctx.putImageData(chunkImgData,0,i*fullChunkHeight)}}else if(imgData.kind===ImageKind.RGBA_32BPP){for(j=0,elemsInThisChunk=width*fullChunkHeight*4,i=0;fullChunks>i;i++)dest.set(src.subarray(srcPos,srcPos+elemsInThisChunk)),srcPos+=elemsInThisChunk,ctx.putImageData(chunkImgData,0,j),j+=fullChunkHeight;totalChunks>i&&(elemsInThisChunk=width*partialChunkHeight*4,dest.set(src.subarray(srcPos,srcPos+elemsInThisChunk)),ctx.putImageData(chunkImgData,0,j))}else if(imgData.kind===ImageKind.RGB_24BPP)for(thisChunkHeight=fullChunkHeight,elemsInThisChunk=width*thisChunkHeight,i=0;totalChunks>i;i++){for(i>=fullChunks&&(thisChunkHeight=partialChunkHeight,elemsInThisChunk=width*thisChunkHeight),destPos=0,j=elemsInThisChunk;j--;)dest[destPos++]=src[srcPos++],dest[destPos++]=src[srcPos++],dest[destPos++]=src[srcPos++],dest[destPos++]=255;ctx.putImageData(chunkImgData,0,i*fullChunkHeight)}else error("bad image kind: "+imgData.kind)}function putBinaryImageMask(ctx,imgData){for(var height=imgData.height,width=imgData.width,fullChunkHeight=16,fracChunks=height/fullChunkHeight,fullChunks=Math.floor(fracChunks),totalChunks=Math.ceil(fracChunks),partialChunkHeight=height-fullChunks*fullChunkHeight,chunkImgData=ctx.createImageData(width,fullChunkHeight),srcPos=0,src=imgData.data,dest=chunkImgData.data,i=0;totalChunks>i;i++){for(var thisChunkHeight=fullChunks>i?fullChunkHeight:partialChunkHeight,destPos=3,j=0;thisChunkHeight>j;j++)for(var mask=0,k=0;width>k;k++){if(!mask){var elem=src[srcPos++];mask=128}dest[destPos]=elem&mask?0:255,destPos+=4,mask>>=1}ctx.putImageData(chunkImgData,0,i*fullChunkHeight)}}function copyCtxState(sourceCtx,destCtx){for(var properties=["strokeStyle","fillStyle","fillRule","globalAlpha","lineWidth","lineCap","lineJoin","miterLimit","globalCompositeOperation","font"],i=0,ii=properties.length;ii>i;i++){var property=properties[i];property in sourceCtx&&(destCtx[property]=sourceCtx[property])}"setLineDash"in sourceCtx?(destCtx.setLineDash(sourceCtx.getLineDash()),destCtx.lineDashOffset=sourceCtx.lineDashOffset):"mozDash"in sourceCtx&&(destCtx.mozDash=sourceCtx.mozDash,destCtx.mozDashOffset=sourceCtx.mozDashOffset)}function composeSMaskBackdrop(bytes,r0,g0,b0){for(var length=bytes.length,i=3;length>i;i+=4){var alpha=bytes[i];if(0===alpha)bytes[i-3]=r0,bytes[i-2]=g0,bytes[i-1]=b0;else if(255>alpha){var alpha_=255-alpha;bytes[i-3]=bytes[i-3]*alpha+r0*alpha_>>8,bytes[i-2]=bytes[i-2]*alpha+g0*alpha_>>8,bytes[i-1]=bytes[i-1]*alpha+b0*alpha_>>8}}}function composeSMaskAlpha(maskData,layerData){for(var length=maskData.length,scale=1/255,i=3;length>i;i+=4){var alpha=maskData[i];layerData[i]=layerData[i]*alpha*scale|0}}function composeSMaskLuminosity(maskData,layerData){for(var length=maskData.length,i=3;length>i;i+=4){var y=77*maskData[i-3]+152*maskData[i-2]+28*maskData[i-1]|0;layerData[i]=layerData[i]*y>>16}}function genericComposeSMask(maskCtx,layerCtx,width,height,subtype,backdrop){var composeFn,hasBackdrop=!!backdrop,r0=hasBackdrop?backdrop[0]:0,g0=hasBackdrop?backdrop[1]:0,b0=hasBackdrop?backdrop[2]:0;composeFn="Luminosity"===subtype?composeSMaskLuminosity:composeSMaskAlpha;for(var PIXELS_TO_PROCESS=65536,chunkSize=Math.min(height,Math.ceil(PIXELS_TO_PROCESS/width)),row=0;height>row;row+=chunkSize){var chunkHeight=Math.min(chunkSize,height-row),maskData=maskCtx.getImageData(0,row,width,chunkHeight),layerData=layerCtx.getImageData(0,row,width,chunkHeight);hasBackdrop&&composeSMaskBackdrop(maskData.data,r0,g0,b0),composeFn(maskData.data,layerData.data),maskCtx.putImageData(layerData,0,row)}}function composeSMask(ctx,smask,layerCtx){var mask=smask.canvas,maskCtx=smask.context;ctx.setTransform(smask.scaleX,0,0,smask.scaleY,smask.offsetX,smask.offsetY);var backdrop=smask.backdrop||null;if(WebGLUtils.isEnabled){var composed=WebGLUtils.composeSMask(layerCtx.canvas,mask,{subtype:smask.subtype,backdrop:backdrop});return ctx.setTransform(1,0,0,1,0,0),void ctx.drawImage(composed,smask.offsetX,smask.offsetY)}genericComposeSMask(maskCtx,layerCtx,mask.width,mask.height,smask.subtype,backdrop),ctx.drawImage(mask,0,0)}var EXECUTION_TIME=15,EXECUTION_STEPS=10,LINE_CAP_STYLES=["butt","round","square"],LINE_JOIN_STYLES=["miter","round","bevel"],NORMAL_CLIP={},EO_CLIP={};CanvasGraphics.prototype={beginDrawing:function(viewport,transparency){var width=this.ctx.canvas.width,height=this.ctx.canvas.height;transparency?this.ctx.clearRect(0,0,width,height):(this.ctx.mozOpaque=!0,this.ctx.save(),this.ctx.fillStyle="rgb(255, 255, 255)",this.ctx.fillRect(0,0,width,height),this.ctx.restore());var transform=viewport.transform;this.ctx.save(),this.ctx.transform.apply(this.ctx,transform),this.baseTransform=this.ctx.mozCurrentTransform.slice(),this.imageLayer&&this.imageLayer.beginLayout()},executeOperatorList:function(operatorList,executionStartIdx,continueCallback,stepper){var argsArray=operatorList.argsArray,fnArray=operatorList.fnArray,i=executionStartIdx||0,argsArrayLen=argsArray.length;if(argsArrayLen===i)return i;for(var fnId,chunkOperations=argsArrayLen-i>EXECUTION_STEPS&&"function"==typeof continueCallback,endTime=chunkOperations?Date.now()+EXECUTION_TIME:0,steps=0,commonObjs=this.commonObjs,objs=this.objs;;){if(void 0!==stepper&&i===stepper.nextBreakPoint)return stepper.breakIt(i,continueCallback),i;if(fnId=fnArray[i],fnId!==OPS.dependency)this[fnId].apply(this,argsArray[i]);else for(var deps=argsArray[i],n=0,nn=deps.length;nn>n;n++){var depObjId=deps[n],common="g"===depObjId[0]&&"_"===depObjId[1],objsPool=common?commonObjs:objs;if(!objsPool.isResolved(depObjId))return objsPool.get(depObjId,continueCallback),i}if(i++,i===argsArrayLen)return i;if(chunkOperations&&++steps>EXECUTION_STEPS){if(Date.now()>endTime)return continueCallback(),i;steps=0}}},endDrawing:function(){this.ctx.restore(),CachedCanvases.clear(),WebGLUtils.clear(),this.imageLayer&&this.imageLayer.endLayout()},setLineWidth:function(width){this.current.lineWidth=width,this.ctx.lineWidth=width},setLineCap:function(style){this.ctx.lineCap=LINE_CAP_STYLES[style]},setLineJoin:function(style){this.ctx.lineJoin=LINE_JOIN_STYLES[style]},setMiterLimit:function(limit){this.ctx.miterLimit=limit},setDash:function(dashArray,dashPhase){var ctx=this.ctx;"setLineDash"in ctx?(ctx.setLineDash(dashArray),ctx.lineDashOffset=dashPhase):(ctx.mozDash=dashArray,ctx.mozDashOffset=dashPhase)},setRenderingIntent:function(){},setFlatness:function(){},setGState:function(states){for(var i=0,ii=states.length;ii>i;i++){var state=states[i],key=state[0],value=state[1];switch(key){case"LW":this.setLineWidth(value);break;case"LC":this.setLineCap(value);break;case"LJ":this.setLineJoin(value);break;case"ML":this.setMiterLimit(value);break;case"D":this.setDash(value[0],value[1]);break;case"RI":this.setRenderingIntent(value);break;case"FL":this.setFlatness(value);break;case"Font":this.setFont(value[0],value[1]);break;case"CA":this.current.strokeAlpha=state[1];break;case"ca":this.current.fillAlpha=state[1],this.ctx.globalAlpha=state[1];break;case"BM":if(value&&value.name&&"Normal"!==value.name){var mode=value.name.replace(/([A-Z])/g,function(c){return"-"+c.toLowerCase()}).substring(1);this.ctx.globalCompositeOperation=mode,this.ctx.globalCompositeOperation!==mode&&warn('globalCompositeOperation "'+mode+'" is not supported')}else this.ctx.globalCompositeOperation="source-over";break;case"SMask":this.current.activeSMask&&this.endSMaskGroup(),this.current.activeSMask=value?this.tempSMask:null,this.current.activeSMask&&this.beginSMaskGroup(),this.tempSMask=null}}},beginSMaskGroup:function(){var activeSMask=this.current.activeSMask,drawnWidth=activeSMask.canvas.width,drawnHeight=activeSMask.canvas.height,cacheId="smaskGroupAt"+this.groupLevel,scratchCanvas=CachedCanvases.getCanvas(cacheId,drawnWidth,drawnHeight,!0),currentCtx=this.ctx,currentTransform=currentCtx.mozCurrentTransform;this.ctx.save();var groupCtx=scratchCanvas.context;groupCtx.scale(1/activeSMask.scaleX,1/activeSMask.scaleY),groupCtx.translate(-activeSMask.offsetX,-activeSMask.offsetY),groupCtx.transform.apply(groupCtx,currentTransform),copyCtxState(currentCtx,groupCtx),this.ctx=groupCtx,this.setGState([["BM","Normal"],["ca",1],["CA",1]]),this.groupStack.push(currentCtx),this.groupLevel++},endSMaskGroup:function(){var groupCtx=this.ctx;this.groupLevel--,this.ctx=this.groupStack.pop(),composeSMask(this.ctx,this.current.activeSMask,groupCtx),this.ctx.restore()},save:function(){this.ctx.save();var old=this.current;this.stateStack.push(old),this.current=old.clone(),this.current.activeSMask=null},restore:function(){0!==this.stateStack.length&&(null!==this.current.activeSMask&&this.endSMaskGroup(),this.current=this.stateStack.pop(),this.ctx.restore())},transform:function(a,b,c,d,e,f){this.ctx.transform(a,b,c,d,e,f)},constructPath:function(ops,args){for(var ctx=this.ctx,current=this.current,x=current.x,y=current.y,i=0,j=0,ii=ops.length;ii>i;i++)switch(0|ops[i]){case OPS.rectangle:x=args[j++],y=args[j++];var width=args[j++],height=args[j++];0===width&&(width=this.getSinglePixelWidth()),0===height&&(height=this.getSinglePixelWidth());var xw=x+width,yh=y+height;this.ctx.moveTo(x,y),this.ctx.lineTo(xw,y),this.ctx.lineTo(xw,yh),this.ctx.lineTo(x,yh),this.ctx.lineTo(x,y),this.ctx.closePath();break;case OPS.moveTo:x=args[j++],y=args[j++],ctx.moveTo(x,y);break;case OPS.lineTo:x=args[j++],y=args[j++],ctx.lineTo(x,y);break;case OPS.curveTo:x=args[j+4],y=args[j+5],ctx.bezierCurveTo(args[j],args[j+1],args[j+2],args[j+3],x,y),j+=6;break;case OPS.curveTo2:ctx.bezierCurveTo(x,y,args[j],args[j+1],args[j+2],args[j+3]),x=args[j+2],y=args[j+3],j+=4;break;case OPS.curveTo3:x=args[j+2],y=args[j+3],ctx.bezierCurveTo(args[j],args[j+1],x,y,x,y),j+=4;break;case OPS.closePath:ctx.closePath()}current.setCurrentPoint(x,y)},closePath:function(){this.ctx.closePath()},stroke:function(consumePath){consumePath="undefined"!=typeof consumePath?consumePath:!0;var ctx=this.ctx,strokeColor=this.current.strokeColor;0===this.current.lineWidth&&(ctx.lineWidth=this.getSinglePixelWidth()),ctx.globalAlpha=this.current.strokeAlpha,strokeColor&&strokeColor.hasOwnProperty("type")&&"Pattern"===strokeColor.type?(ctx.save(),ctx.strokeStyle=strokeColor.getPattern(ctx,this),ctx.stroke(),ctx.restore()):ctx.stroke(),consumePath&&this.consumePath(),ctx.globalAlpha=this.current.fillAlpha},closeStroke:function(){this.closePath(),this.stroke()},fill:function(consumePath){consumePath="undefined"!=typeof consumePath?consumePath:!0;var ctx=this.ctx,fillColor=this.current.fillColor,needRestore=!1;if(fillColor&&fillColor.hasOwnProperty("type")&&"Pattern"===fillColor.type&&(ctx.save(),ctx.fillStyle=fillColor.getPattern(ctx,this),needRestore=!0),this.pendingEOFill){if(void 0!==ctx.mozFillRule)ctx.mozFillRule="evenodd",ctx.fill(),ctx.mozFillRule="nonzero";else try{ctx.fill("evenodd")}catch(ex){ctx.fill()}this.pendingEOFill=!1}else ctx.fill();needRestore&&ctx.restore(),consumePath&&this.consumePath()},eoFill:function(){this.pendingEOFill=!0,this.fill()},fillStroke:function(){this.fill(!1),this.stroke(!1),this.consumePath()},eoFillStroke:function(){this.pendingEOFill=!0,this.fillStroke()},closeFillStroke:function(){this.closePath(),this.fillStroke()},closeEOFillStroke:function(){this.pendingEOFill=!0,this.closePath(),this.fillStroke()},endPath:function(){this.consumePath()},clip:function(){this.pendingClip=NORMAL_CLIP},eoClip:function(){this.pendingClip=EO_CLIP +},beginText:function(){this.current.textMatrix=IDENTITY_MATRIX,this.current.textMatrixScale=1,this.current.x=this.current.lineX=0,this.current.y=this.current.lineY=0},endText:function(){var paths=this.pendingTextPaths,ctx=this.ctx;if(void 0===paths)return void ctx.beginPath();ctx.save(),ctx.beginPath();for(var i=0;i<paths.length;i++){var path=paths[i];ctx.setTransform.apply(ctx,path.transform),ctx.translate(path.x,path.y),path.addToPath(ctx,path.fontSize)}ctx.restore(),ctx.clip(),ctx.beginPath(),delete this.pendingTextPaths},setCharSpacing:function(spacing){this.current.charSpacing=spacing},setWordSpacing:function(spacing){this.current.wordSpacing=spacing},setHScale:function(scale){this.current.textHScale=scale/100},setLeading:function(leading){this.current.leading=-leading},setFont:function(fontRefName,size){var fontObj=this.commonObjs.get(fontRefName),current=this.current;if(fontObj||error("Can't find font for "+fontRefName),current.fontMatrix=fontObj.fontMatrix?fontObj.fontMatrix:FONT_IDENTITY_MATRIX,(0===current.fontMatrix[0]||0===current.fontMatrix[3])&&warn("Invalid font matrix for font "+fontRefName),0>size?(size=-size,current.fontDirection=-1):current.fontDirection=1,this.current.font=fontObj,this.current.fontSize=size,!fontObj.isType3Font){var name=fontObj.loadedName||"sans-serif",bold=fontObj.black?fontObj.bold?"bolder":"bold":fontObj.bold?"bold":"normal",italic=fontObj.italic?"italic":"normal",typeface='"'+name+'", '+fontObj.fallbackName,browserFontSize=size>=MIN_FONT_SIZE?size:MIN_FONT_SIZE;this.current.fontSizeScale=browserFontSize!==MIN_FONT_SIZE?1:size/MIN_FONT_SIZE;var rule=italic+" "+bold+" "+browserFontSize+"px "+typeface;this.ctx.font=rule}},setTextRenderingMode:function(mode){this.current.textRenderingMode=mode},setTextRise:function(rise){this.current.textRise=rise},moveText:function(x,y){this.current.x=this.current.lineX+=x,this.current.y=this.current.lineY+=y},setLeadingMoveText:function(x,y){this.setLeading(-y),this.moveText(x,y)},setTextMatrix:function(a,b,c,d,e,f){this.current.textMatrix=[a,b,c,d,e,f],this.current.textMatrixScale=Math.sqrt(a*a+b*b),this.current.x=this.current.lineX=0,this.current.y=this.current.lineY=0},nextLine:function(){this.moveText(0,this.current.leading)},paintChar:function(character,x,y){var addToPath,ctx=this.ctx,current=this.current,font=current.font,textRenderingMode=current.textRenderingMode,fontSize=current.fontSize/current.fontSizeScale,fillStrokeMode=textRenderingMode&TextRenderingMode.FILL_STROKE_MASK,isAddToPathSet=!!(textRenderingMode&TextRenderingMode.ADD_TO_PATH_FLAG);if((font.disableFontFace||isAddToPathSet)&&(addToPath=font.getPathGenerator(this.commonObjs,character)),font.disableFontFace?(ctx.save(),ctx.translate(x,y),ctx.beginPath(),addToPath(ctx,fontSize),(fillStrokeMode===TextRenderingMode.FILL||fillStrokeMode===TextRenderingMode.FILL_STROKE)&&ctx.fill(),(fillStrokeMode===TextRenderingMode.STROKE||fillStrokeMode===TextRenderingMode.FILL_STROKE)&&ctx.stroke(),ctx.restore()):((fillStrokeMode===TextRenderingMode.FILL||fillStrokeMode===TextRenderingMode.FILL_STROKE)&&ctx.fillText(character,x,y),(fillStrokeMode===TextRenderingMode.STROKE||fillStrokeMode===TextRenderingMode.FILL_STROKE)&&ctx.strokeText(character,x,y)),isAddToPathSet){var paths=this.pendingTextPaths||(this.pendingTextPaths=[]);paths.push({transform:ctx.mozCurrentTransform,x:x,y:y,fontSize:fontSize,addToPath:addToPath})}},get isFontSubpixelAAEnabled(){var ctx=document.createElement("canvas").getContext("2d");ctx.scale(1.5,1),ctx.fillText("I",0,10);for(var data=ctx.getImageData(0,0,10,10).data,enabled=!1,i=3;i<data.length;i+=4)if(data[i]>0&&data[i]<255){enabled=!0;break}return shadow(this,"isFontSubpixelAAEnabled",enabled)},showText:function(glyphs){var current=this.current,font=current.font;if(font.isType3Font)return this.showType3Text(glyphs);var fontSize=current.fontSize;if(0!==fontSize){var ctx=this.ctx,fontSizeScale=current.fontSizeScale,charSpacing=current.charSpacing,wordSpacing=current.wordSpacing,fontDirection=current.fontDirection,textHScale=current.textHScale*fontDirection,glyphsLength=glyphs.length,vertical=font.vertical,defaultVMetrics=font.defaultVMetrics,widthAdvanceScale=fontSize*current.fontMatrix[0],simpleFillText=current.textRenderingMode===TextRenderingMode.FILL&&!font.disableFontFace;ctx.save(),ctx.transform.apply(ctx,current.textMatrix),ctx.translate(current.x,current.y+current.textRise),fontDirection>0?ctx.scale(textHScale,-1):ctx.scale(textHScale,1);var lineWidth=current.lineWidth,scale=current.textMatrixScale;0===scale||0===lineWidth?lineWidth=this.getSinglePixelWidth():lineWidth/=scale,1!==fontSizeScale&&(ctx.scale(fontSizeScale,fontSizeScale),lineWidth/=fontSizeScale),ctx.lineWidth=lineWidth;var i,x=0;for(i=0;glyphsLength>i;++i){var glyph=glyphs[i];if(null!==glyph)if(isNum(glyph))x+=-glyph*fontSize*.001;else{var scaledX,scaledY,scaledAccentX,scaledAccentY,restoreNeeded=!1,character=glyph.fontChar,accent=glyph.accent,width=glyph.width;if(vertical){var vmetric,vx,vy;vmetric=glyph.vmetric||defaultVMetrics,vx=glyph.vmetric?vmetric[1]:.5*width,vx=-vx*widthAdvanceScale,vy=vmetric[2]*widthAdvanceScale,width=vmetric?-vmetric[0]:width,scaledX=vx/fontSizeScale,scaledY=(x+vy)/fontSizeScale}else scaledX=x/fontSizeScale,scaledY=0;if(font.remeasure&&width>0&&this.isFontSubpixelAAEnabled){var measuredWidth=1e3*ctx.measureText(character).width/fontSize*fontSizeScale,characterScaleX=width/measuredWidth;restoreNeeded=!0,ctx.save(),ctx.scale(characterScaleX,1),scaledX/=characterScaleX}simpleFillText&&!accent?ctx.fillText(character,scaledX,scaledY):(this.paintChar(character,scaledX,scaledY),accent&&(scaledAccentX=scaledX+accent.offset.x/fontSizeScale,scaledAccentY=scaledY-accent.offset.y/fontSizeScale,this.paintChar(accent.fontChar,scaledAccentX,scaledAccentY)));var charWidth=width*widthAdvanceScale+charSpacing*fontDirection;x+=charWidth,restoreNeeded&&ctx.restore()}else x+=fontDirection*wordSpacing}vertical?current.y-=x*textHScale:current.x+=x*textHScale,ctx.restore()}},showType3Text:function(glyphs){var i,glyph,width,ctx=this.ctx,current=this.current,font=current.font,fontSize=current.fontSize,fontDirection=current.fontDirection,charSpacing=current.charSpacing,wordSpacing=current.wordSpacing,textHScale=current.textHScale*fontDirection,fontMatrix=current.fontMatrix||FONT_IDENTITY_MATRIX,glyphsLength=glyphs.length;if(0!==fontSize){for(ctx.save(),ctx.transform.apply(ctx,current.textMatrix),ctx.translate(current.x,current.y),ctx.scale(textHScale,fontDirection),i=0;glyphsLength>i;++i)if(glyph=glyphs[i],null!==glyph)if(isNum(glyph)){var spacingLength=.001*-glyph*fontSize;this.ctx.translate(spacingLength,0),current.x+=spacingLength*textHScale}else{var operatorList=font.charProcOperatorList[glyph.operatorListId];if(operatorList){this.processingType3=glyph,this.save(),ctx.scale(fontSize,fontSize),ctx.transform.apply(ctx,fontMatrix),this.executeOperatorList(operatorList),this.restore();var transformed=Util.applyTransform([glyph.width,0],fontMatrix);width=transformed[0]*fontSize+charSpacing,ctx.translate(width,0),current.x+=width*textHScale}else warn('Type3 character "'+glyph.operatorListId+'" is not available')}else this.ctx.translate(wordSpacing,0),current.x+=wordSpacing*textHScale;ctx.restore(),this.processingType3=null}},setCharWidth:function(){},setCharWidthAndBounds:function(xWidth,yWidth,llx,lly,urx,ury){this.ctx.rect(llx,lly,urx-llx,ury-lly),this.clip(),this.endPath()},getColorN_Pattern:function(IR){var pattern;if("TilingPattern"===IR[0]){var color=IR[1];pattern=new TilingPattern(IR,color,this.ctx,this.objs,this.commonObjs,this.baseTransform)}else pattern=getShadingPatternFromIR(IR);return pattern},setStrokeColorN:function(){this.current.strokeColor=this.getColorN_Pattern(arguments)},setFillColorN:function(){this.current.fillColor=this.getColorN_Pattern(arguments)},setStrokeRGBColor:function(){var color=Util.makeCssRgb(arguments);this.ctx.strokeStyle=color,this.current.strokeColor=color},setFillRGBColor:function(){var color=Util.makeCssRgb(arguments);this.ctx.fillStyle=color,this.current.fillColor=color},shadingFill:function(patternIR){var ctx=this.ctx;this.save();var pattern=getShadingPatternFromIR(patternIR);ctx.fillStyle=pattern.getPattern(ctx,this,!0);var inv=ctx.mozCurrentTransformInverse;if(inv){var canvas=ctx.canvas,width=canvas.width,height=canvas.height,bl=Util.applyTransform([0,0],inv),br=Util.applyTransform([0,height],inv),ul=Util.applyTransform([width,0],inv),ur=Util.applyTransform([width,height],inv),x0=Math.min(bl[0],br[0],ul[0],ur[0]),y0=Math.min(bl[1],br[1],ul[1],ur[1]),x1=Math.max(bl[0],br[0],ul[0],ur[0]),y1=Math.max(bl[1],br[1],ul[1],ur[1]);this.ctx.fillRect(x0,y0,x1-x0,y1-y0)}else this.ctx.fillRect(-1e10,-1e10,2e10,2e10);this.restore()},beginInlineImage:function(){error("Should not call beginInlineImage")},beginImageData:function(){error("Should not call beginImageData")},paintFormXObjectBegin:function(matrix,bbox){if(this.save(),this.baseTransformStack.push(this.baseTransform),isArray(matrix)&&6===matrix.length&&this.transform.apply(this,matrix),this.baseTransform=this.ctx.mozCurrentTransform,isArray(bbox)&&4===bbox.length){var width=bbox[2]-bbox[0],height=bbox[3]-bbox[1];this.ctx.rect(bbox[0],bbox[1],width,height),this.clip(),this.endPath()}},paintFormXObjectEnd:function(){this.restore(),this.baseTransform=this.baseTransformStack.pop()},beginGroup:function(group){this.save();var currentCtx=this.ctx;group.isolated||info("TODO: Support non-isolated groups."),group.knockout&&warn("Knockout groups not supported.");var currentTransform=currentCtx.mozCurrentTransform;group.matrix&¤tCtx.transform.apply(currentCtx,group.matrix),assert(group.bbox,"Bounding box is required.");var bounds=Util.getAxialAlignedBoundingBox(group.bbox,currentCtx.mozCurrentTransform),canvasBounds=[0,0,currentCtx.canvas.width,currentCtx.canvas.height];bounds=Util.intersect(bounds,canvasBounds)||[0,0,0,0];var offsetX=Math.floor(bounds[0]),offsetY=Math.floor(bounds[1]),drawnWidth=Math.max(Math.ceil(bounds[2])-offsetX,1),drawnHeight=Math.max(Math.ceil(bounds[3])-offsetY,1),scaleX=1,scaleY=1;drawnWidth>MAX_GROUP_SIZE&&(scaleX=drawnWidth/MAX_GROUP_SIZE,drawnWidth=MAX_GROUP_SIZE),drawnHeight>MAX_GROUP_SIZE&&(scaleY=drawnHeight/MAX_GROUP_SIZE,drawnHeight=MAX_GROUP_SIZE);var cacheId="groupAt"+this.groupLevel;group.smask&&(cacheId+="_smask_"+this.smaskCounter++%2);var scratchCanvas=CachedCanvases.getCanvas(cacheId,drawnWidth,drawnHeight,!0),groupCtx=scratchCanvas.context;groupCtx.scale(1/scaleX,1/scaleY),groupCtx.translate(-offsetX,-offsetY),groupCtx.transform.apply(groupCtx,currentTransform),group.smask?this.smaskStack.push({canvas:scratchCanvas.canvas,context:groupCtx,offsetX:offsetX,offsetY:offsetY,scaleX:scaleX,scaleY:scaleY,subtype:group.smask.subtype,backdrop:group.smask.backdrop}):(currentCtx.setTransform(1,0,0,1,0,0),currentCtx.translate(offsetX,offsetY),currentCtx.scale(scaleX,scaleY)),copyCtxState(currentCtx,groupCtx),this.ctx=groupCtx,this.setGState([["BM","Normal"],["ca",1],["CA",1]]),this.groupStack.push(currentCtx),this.groupLevel++},endGroup:function(group){this.groupLevel--;var groupCtx=this.ctx;this.ctx=this.groupStack.pop(),void 0!==this.ctx.imageSmoothingEnabled?this.ctx.imageSmoothingEnabled=!1:this.ctx.mozImageSmoothingEnabled=!1,group.smask?this.tempSMask=this.smaskStack.pop():this.ctx.drawImage(groupCtx.canvas,0,0),this.restore()},beginAnnotations:function(){this.save(),this.current=new CanvasExtraState},endAnnotations:function(){this.restore()},beginAnnotation:function(rect,transform,matrix){if(this.save(),isArray(rect)&&4===rect.length){var width=rect[2]-rect[0],height=rect[3]-rect[1];this.ctx.rect(rect[0],rect[1],width,height),this.clip(),this.endPath()}this.transform.apply(this,transform),this.transform.apply(this,matrix)},endAnnotation:function(){this.restore()},paintJpegXObject:function(objId,w,h){var domImage=this.objs.get(objId);if(!domImage)return void warn("Dependent image isn't ready yet");this.save();var ctx=this.ctx;if(ctx.scale(1/w,-1/h),ctx.drawImage(domImage,0,0,domImage.width,domImage.height,0,-h,w,h),this.imageLayer){var currentTransform=ctx.mozCurrentTransformInverse,position=this.getCanvasPosition(0,0);this.imageLayer.appendImage({objId:objId,left:position[0],top:position[1],width:w/currentTransform[0],height:h/currentTransform[3]})}this.restore()},paintImageMaskXObject:function(img){var ctx=this.ctx,width=img.width,height=img.height,glyph=this.processingType3;if(COMPILE_TYPE3_GLYPHS&&glyph&&!("compiled"in glyph)){var MAX_SIZE_TO_COMPILE=1e3;glyph.compiled=MAX_SIZE_TO_COMPILE>=width&&MAX_SIZE_TO_COMPILE>=height?compileType3Glyph({data:img.data,width:width,height:height}):null}if(glyph&&glyph.compiled)return void glyph.compiled(ctx);var maskCanvas=CachedCanvases.getCanvas("maskCanvas",width,height),maskCtx=maskCanvas.context;maskCtx.save(),putBinaryImageMask(maskCtx,img),maskCtx.globalCompositeOperation="source-in";var fillColor=this.current.fillColor;maskCtx.fillStyle=fillColor&&fillColor.hasOwnProperty("type")&&"Pattern"===fillColor.type?fillColor.getPattern(maskCtx,this):fillColor,maskCtx.fillRect(0,0,width,height),maskCtx.restore(),this.paintInlineImageXObject(maskCanvas.canvas)},paintImageMaskXObjectRepeat:function(imgData,scaleX,scaleY,positions){var width=imgData.width,height=imgData.height,ctx=this.ctx,maskCanvas=CachedCanvases.getCanvas("maskCanvas",width,height),maskCtx=maskCanvas.context;maskCtx.save(),putBinaryImageMask(maskCtx,imgData),maskCtx.globalCompositeOperation="source-in";var fillColor=this.current.fillColor;maskCtx.fillStyle=fillColor&&fillColor.hasOwnProperty("type")&&"Pattern"===fillColor.type?fillColor.getPattern(maskCtx,this):fillColor,maskCtx.fillRect(0,0,width,height),maskCtx.restore();for(var i=0,ii=positions.length;ii>i;i+=2)ctx.save(),ctx.transform(scaleX,0,0,scaleY,positions[i],positions[i+1]),ctx.scale(1,-1),ctx.drawImage(maskCanvas.canvas,0,0,width,height,0,-1,1,1),ctx.restore()},paintImageMaskXObjectGroup:function(images){for(var ctx=this.ctx,i=0,ii=images.length;ii>i;i++){var image=images[i],width=image.width,height=image.height,maskCanvas=CachedCanvases.getCanvas("maskCanvas",width,height),maskCtx=maskCanvas.context;maskCtx.save(),putBinaryImageMask(maskCtx,image),maskCtx.globalCompositeOperation="source-in";var fillColor=this.current.fillColor;maskCtx.fillStyle=fillColor&&fillColor.hasOwnProperty("type")&&"Pattern"===fillColor.type?fillColor.getPattern(maskCtx,this):fillColor,maskCtx.fillRect(0,0,width,height),maskCtx.restore(),ctx.save(),ctx.transform.apply(ctx,image.transform),ctx.scale(1,-1),ctx.drawImage(maskCanvas.canvas,0,0,width,height,0,-1,1,1),ctx.restore()}},paintImageXObject:function(objId){var imgData=this.objs.get(objId);return imgData?void this.paintInlineImageXObject(imgData):void warn("Dependent image isn't ready yet")},paintImageXObjectRepeat:function(objId,scaleX,scaleY,positions){var imgData=this.objs.get(objId);if(!imgData)return void warn("Dependent image isn't ready yet");for(var width=imgData.width,height=imgData.height,map=[],i=0,ii=positions.length;ii>i;i+=2)map.push({transform:[scaleX,0,0,scaleY,positions[i],positions[i+1]],x:0,y:0,w:width,h:height});this.paintInlineImageXObjectGroup(imgData,map)},paintInlineImageXObject:function(imgData){var width=imgData.width,height=imgData.height,ctx=this.ctx;this.save(),ctx.scale(1/width,-1/height);var imgToPaint,tmpCanvas,currentTransform=ctx.mozCurrentTransformInverse,a=currentTransform[0],b=currentTransform[1],widthScale=Math.max(Math.sqrt(a*a+b*b),1),c=currentTransform[2],d=currentTransform[3],heightScale=Math.max(Math.sqrt(c*c+d*d),1);if(imgData instanceof HTMLElement||!imgData.data)imgToPaint=imgData;else{tmpCanvas=CachedCanvases.getCanvas("inlineImage",width,height);var tmpCtx=tmpCanvas.context;putBinaryImageData(tmpCtx,imgData),imgToPaint=tmpCanvas.canvas}for(var paintWidth=width,paintHeight=height,tmpCanvasId="prescale1";widthScale>2&&paintWidth>1||heightScale>2&&paintHeight>1;){var newWidth=paintWidth,newHeight=paintHeight;widthScale>2&&paintWidth>1&&(newWidth=Math.ceil(paintWidth/2),widthScale/=paintWidth/newWidth),heightScale>2&&paintHeight>1&&(newHeight=Math.ceil(paintHeight/2),heightScale/=paintHeight/newHeight),tmpCanvas=CachedCanvases.getCanvas(tmpCanvasId,newWidth,newHeight),tmpCtx=tmpCanvas.context,tmpCtx.clearRect(0,0,newWidth,newHeight),tmpCtx.drawImage(imgToPaint,0,0,paintWidth,paintHeight,0,0,newWidth,newHeight),imgToPaint=tmpCanvas.canvas,paintWidth=newWidth,paintHeight=newHeight,tmpCanvasId="prescale1"===tmpCanvasId?"prescale2":"prescale1"}if(ctx.drawImage(imgToPaint,0,0,paintWidth,paintHeight,0,-height,width,height),this.imageLayer){var position=this.getCanvasPosition(0,-height);this.imageLayer.appendImage({imgData:imgData,left:position[0],top:position[1],width:width/currentTransform[0],height:height/currentTransform[3]})}this.restore()},paintInlineImageXObjectGroup:function(imgData,map){var ctx=this.ctx,w=imgData.width,h=imgData.height,tmpCanvas=CachedCanvases.getCanvas("inlineImage",w,h),tmpCtx=tmpCanvas.context;putBinaryImageData(tmpCtx,imgData);for(var i=0,ii=map.length;ii>i;i++){var entry=map[i];if(ctx.save(),ctx.transform.apply(ctx,entry.transform),ctx.scale(1,-1),ctx.drawImage(tmpCanvas.canvas,entry.x,entry.y,entry.w,entry.h,0,-1,1,1),this.imageLayer){var position=this.getCanvasPosition(entry.x,entry.y);this.imageLayer.appendImage({imgData:imgData,left:position[0],top:position[1],width:w,height:h})}ctx.restore()}},paintSolidColorImageMask:function(){this.ctx.fillRect(0,0,1,1)},markPoint:function(){},markPointProps:function(){},beginMarkedContent:function(){},beginMarkedContentProps:function(){},endMarkedContent:function(){},beginCompat:function(){},endCompat:function(){},consumePath:function(){var ctx=this.ctx;if(this.pendingClip){if(this.pendingClip===EO_CLIP)if(void 0!==ctx.mozFillRule)ctx.mozFillRule="evenodd",ctx.clip(),ctx.mozFillRule="nonzero";else try{ctx.clip("evenodd")}catch(ex){ctx.clip()}else ctx.clip();this.pendingClip=null}ctx.beginPath()},getSinglePixelWidth:function(){var inverse=this.ctx.mozCurrentTransformInverse;return Math.sqrt(Math.max(inverse[0]*inverse[0]+inverse[1]*inverse[1],inverse[2]*inverse[2]+inverse[3]*inverse[3]))},getCanvasPosition:function(x,y){var transform=this.ctx.mozCurrentTransform;return[transform[0]*x+transform[2]*y+transform[4],transform[1]*x+transform[3]*y+transform[5]]}};for(var op in OPS)CanvasGraphics.prototype[OPS[op]]=CanvasGraphics.prototype[op];return CanvasGraphics}(),WebGLUtils=function(){function loadShader(gl,code,shaderType){var shader=gl.createShader(shaderType);gl.shaderSource(shader,code),gl.compileShader(shader);var compiled=gl.getShaderParameter(shader,gl.COMPILE_STATUS);if(!compiled){var errorMsg=gl.getShaderInfoLog(shader);throw new Error("Error during shader compilation: "+errorMsg)}return shader}function createVertexShader(gl,code){return loadShader(gl,code,gl.VERTEX_SHADER)}function createFragmentShader(gl,code){return loadShader(gl,code,gl.FRAGMENT_SHADER)}function createProgram(gl,shaders){for(var program=gl.createProgram(),i=0,ii=shaders.length;ii>i;++i)gl.attachShader(program,shaders[i]);gl.linkProgram(program);var linked=gl.getProgramParameter(program,gl.LINK_STATUS);if(!linked){var errorMsg=gl.getProgramInfoLog(program);throw new Error("Error during program linking: "+errorMsg)}return program}function createTexture(gl,image,textureId){gl.activeTexture(textureId);var texture=gl.createTexture();return gl.bindTexture(gl.TEXTURE_2D,texture),gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE),gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE),gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.NEAREST),gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.NEAREST),gl.texImage2D(gl.TEXTURE_2D,0,gl.RGBA,gl.RGBA,gl.UNSIGNED_BYTE,image),texture}function generageGL(){currentGL||(currentCanvas=document.createElement("canvas"),currentGL=currentCanvas.getContext("webgl",{premultipliedalpha:!1}))}function initSmaskGL(){var canvas,gl;generageGL(),canvas=currentCanvas,currentCanvas=null,gl=currentGL,currentGL=null;var vertexShader=createVertexShader(gl,smaskVertexShaderCode),fragmentShader=createFragmentShader(gl,smaskFragmentShaderCode),program=createProgram(gl,[vertexShader,fragmentShader]);gl.useProgram(program);var cache={};cache.gl=gl,cache.canvas=canvas,cache.resolutionLocation=gl.getUniformLocation(program,"u_resolution"),cache.positionLocation=gl.getAttribLocation(program,"a_position"),cache.backdropLocation=gl.getUniformLocation(program,"u_backdrop"),cache.subtypeLocation=gl.getUniformLocation(program,"u_subtype");var texCoordLocation=gl.getAttribLocation(program,"a_texCoord"),texLayerLocation=gl.getUniformLocation(program,"u_image"),texMaskLocation=gl.getUniformLocation(program,"u_mask"),texCoordBuffer=gl.createBuffer();gl.bindBuffer(gl.ARRAY_BUFFER,texCoordBuffer),gl.bufferData(gl.ARRAY_BUFFER,new Float32Array([0,0,1,0,0,1,0,1,1,0,1,1]),gl.STATIC_DRAW),gl.enableVertexAttribArray(texCoordLocation),gl.vertexAttribPointer(texCoordLocation,2,gl.FLOAT,!1,0,0),gl.uniform1i(texLayerLocation,0),gl.uniform1i(texMaskLocation,1),smaskCache=cache}function composeSMask(layer,mask,properties){var width=layer.width,height=layer.height;smaskCache||initSmaskGL();var cache=smaskCache,canvas=cache.canvas,gl=cache.gl;canvas.width=width,canvas.height=height,gl.viewport(0,0,gl.drawingBufferWidth,gl.drawingBufferHeight),gl.uniform2f(cache.resolutionLocation,width,height),properties.backdrop?gl.uniform4f(cache.resolutionLocation,properties.backdrop[0],properties.backdrop[1],properties.backdrop[2],1):gl.uniform4f(cache.resolutionLocation,0,0,0,0),gl.uniform1i(cache.subtypeLocation,"Luminosity"===properties.subtype?1:0);var texture=createTexture(gl,layer,gl.TEXTURE0),maskTexture=createTexture(gl,mask,gl.TEXTURE1),buffer=gl.createBuffer();return gl.bindBuffer(gl.ARRAY_BUFFER,buffer),gl.bufferData(gl.ARRAY_BUFFER,new Float32Array([0,0,width,0,0,height,0,height,width,0,width,height]),gl.STATIC_DRAW),gl.enableVertexAttribArray(cache.positionLocation),gl.vertexAttribPointer(cache.positionLocation,2,gl.FLOAT,!1,0,0),gl.clearColor(0,0,0,0),gl.enable(gl.BLEND),gl.blendFunc(gl.ONE,gl.ONE_MINUS_SRC_ALPHA),gl.clear(gl.COLOR_BUFFER_BIT),gl.drawArrays(gl.TRIANGLES,0,6),gl.flush(),gl.deleteTexture(texture),gl.deleteTexture(maskTexture),gl.deleteBuffer(buffer),canvas}function initFiguresGL(){var canvas,gl;generageGL(),canvas=currentCanvas,currentCanvas=null,gl=currentGL,currentGL=null;var vertexShader=createVertexShader(gl,figuresVertexShaderCode),fragmentShader=createFragmentShader(gl,figuresFragmentShaderCode),program=createProgram(gl,[vertexShader,fragmentShader]);gl.useProgram(program);var cache={};cache.gl=gl,cache.canvas=canvas,cache.resolutionLocation=gl.getUniformLocation(program,"u_resolution"),cache.scaleLocation=gl.getUniformLocation(program,"u_scale"),cache.offsetLocation=gl.getUniformLocation(program,"u_offset"),cache.positionLocation=gl.getAttribLocation(program,"a_position"),cache.colorLocation=gl.getAttribLocation(program,"a_color"),figuresCache=cache}function drawFigures(width,height,backgroundColor,figures,context){figuresCache||initFiguresGL();var cache=figuresCache,canvas=cache.canvas,gl=cache.gl;canvas.width=width,canvas.height=height,gl.viewport(0,0,gl.drawingBufferWidth,gl.drawingBufferHeight),gl.uniform2f(cache.resolutionLocation,width,height);var i,ii,rows,count=0;for(i=0,ii=figures.length;ii>i;i++)switch(figures[i].type){case"lattice":rows=figures[i].coords.length/figures[i].verticesPerRow|0,count+=(rows-1)*(figures[i].verticesPerRow-1)*6;break;case"triangles":count+=figures[i].coords.length}var coords=new Float32Array(2*count),colors=new Uint8Array(3*count),coordsMap=context.coords,colorsMap=context.colors,pIndex=0,cIndex=0;for(i=0,ii=figures.length;ii>i;i++){var figure=figures[i],ps=figure.coords,cs=figure.colors;switch(figure.type){case"lattice":var cols=figure.verticesPerRow;rows=ps.length/cols|0;for(var row=1;rows>row;row++)for(var offset=row*cols+1,col=1;cols>col;col++,offset++)coords[pIndex]=coordsMap[ps[offset-cols-1]],coords[pIndex+1]=coordsMap[ps[offset-cols-1]+1],coords[pIndex+2]=coordsMap[ps[offset-cols]],coords[pIndex+3]=coordsMap[ps[offset-cols]+1],coords[pIndex+4]=coordsMap[ps[offset-1]],coords[pIndex+5]=coordsMap[ps[offset-1]+1],colors[cIndex]=colorsMap[cs[offset-cols-1]],colors[cIndex+1]=colorsMap[cs[offset-cols-1]+1],colors[cIndex+2]=colorsMap[cs[offset-cols-1]+2],colors[cIndex+3]=colorsMap[cs[offset-cols]],colors[cIndex+4]=colorsMap[cs[offset-cols]+1],colors[cIndex+5]=colorsMap[cs[offset-cols]+2],colors[cIndex+6]=colorsMap[cs[offset-1]],colors[cIndex+7]=colorsMap[cs[offset-1]+1],colors[cIndex+8]=colorsMap[cs[offset-1]+2],coords[pIndex+6]=coords[pIndex+2],coords[pIndex+7]=coords[pIndex+3],coords[pIndex+8]=coords[pIndex+4],coords[pIndex+9]=coords[pIndex+5],coords[pIndex+10]=coordsMap[ps[offset]],coords[pIndex+11]=coordsMap[ps[offset]+1],colors[cIndex+9]=colors[cIndex+3],colors[cIndex+10]=colors[cIndex+4],colors[cIndex+11]=colors[cIndex+5],colors[cIndex+12]=colors[cIndex+6],colors[cIndex+13]=colors[cIndex+7],colors[cIndex+14]=colors[cIndex+8],colors[cIndex+15]=colorsMap[cs[offset]],colors[cIndex+16]=colorsMap[cs[offset]+1],colors[cIndex+17]=colorsMap[cs[offset]+2],pIndex+=12,cIndex+=18;break;case"triangles":for(var j=0,jj=ps.length;jj>j;j++)coords[pIndex]=coordsMap[ps[j]],coords[pIndex+1]=coordsMap[ps[j]+1],colors[cIndex]=colorsMap[cs[i]],colors[cIndex+1]=colorsMap[cs[j]+1],colors[cIndex+2]=colorsMap[cs[j]+2],pIndex+=2,cIndex+=3}}backgroundColor?gl.clearColor(backgroundColor[0]/255,backgroundColor[1]/255,backgroundColor[2]/255,1):gl.clearColor(0,0,0,0),gl.clear(gl.COLOR_BUFFER_BIT);var coordsBuffer=gl.createBuffer();gl.bindBuffer(gl.ARRAY_BUFFER,coordsBuffer),gl.bufferData(gl.ARRAY_BUFFER,coords,gl.STATIC_DRAW),gl.enableVertexAttribArray(cache.positionLocation),gl.vertexAttribPointer(cache.positionLocation,2,gl.FLOAT,!1,0,0);var colorsBuffer=gl.createBuffer();return gl.bindBuffer(gl.ARRAY_BUFFER,colorsBuffer),gl.bufferData(gl.ARRAY_BUFFER,colors,gl.STATIC_DRAW),gl.enableVertexAttribArray(cache.colorLocation),gl.vertexAttribPointer(cache.colorLocation,3,gl.UNSIGNED_BYTE,!1,0,0),gl.uniform2f(cache.scaleLocation,context.scaleX,context.scaleY),gl.uniform2f(cache.offsetLocation,context.offsetX,context.offsetY),gl.drawArrays(gl.TRIANGLES,0,count),gl.flush(),gl.deleteBuffer(coordsBuffer),gl.deleteBuffer(colorsBuffer),canvas}function cleanup(){smaskCache&&smaskCache.canvas&&(smaskCache.canvas.width=0,smaskCache.canvas.height=0),figuresCache&&figuresCache.canvas&&(figuresCache.canvas.width=0,figuresCache.canvas.height=0),smaskCache=null,figuresCache=null}var currentGL,currentCanvas,smaskVertexShaderCode=" attribute vec2 a_position; attribute vec2 a_texCoord; uniform vec2 u_resolution; varying vec2 v_texCoord; void main() { vec2 clipSpace = (a_position / u_resolution) * 2.0 - 1.0; gl_Position = vec4(clipSpace * vec2(1, -1), 0, 1); v_texCoord = a_texCoord; } ",smaskFragmentShaderCode=" precision mediump float; uniform vec4 u_backdrop; uniform int u_subtype; uniform sampler2D u_image; uniform sampler2D u_mask; varying vec2 v_texCoord; void main() { vec4 imageColor = texture2D(u_image, v_texCoord); vec4 maskColor = texture2D(u_mask, v_texCoord); if (u_backdrop.a > 0.0) { maskColor.rgb = maskColor.rgb * maskColor.a + u_backdrop.rgb * (1.0 - maskColor.a); } float lum; if (u_subtype == 0) { lum = maskColor.a; } else { lum = maskColor.r * 0.3 + maskColor.g * 0.59 + maskColor.b * 0.11; } imageColor.a *= lum; imageColor.rgb *= imageColor.a; gl_FragColor = imageColor; } ",smaskCache=null,figuresVertexShaderCode=" attribute vec2 a_position; attribute vec3 a_color; uniform vec2 u_resolution; uniform vec2 u_scale; uniform vec2 u_offset; varying vec4 v_color; void main() { vec2 position = (a_position + u_offset) * u_scale; vec2 clipSpace = (position / u_resolution) * 2.0 - 1.0; gl_Position = vec4(clipSpace * vec2(1, -1), 0, 1); v_color = vec4(a_color / 255.0, 1.0); } ",figuresFragmentShaderCode=" precision mediump float; varying vec4 v_color; void main() { gl_FragColor = v_color; } ",figuresCache=null;return{get isEnabled(){if(PDFJS.disableWebGL)return!1;var enabled=!1;try{generageGL(),enabled=!!currentGL}catch(e){}return shadow(this,"isEnabled",enabled)},composeSMask:composeSMask,drawFigures:drawFigures,clear:cleanup}}(),ShadingIRs={};ShadingIRs.RadialAxial={fromIR:function(raw){var type=raw[1],colorStops=raw[2],p0=raw[3],p1=raw[4],r0=raw[5],r1=raw[6];return{type:"Pattern",getPattern:function(ctx){var grad;"axial"===type?grad=ctx.createLinearGradient(p0[0],p0[1],p1[0],p1[1]):"radial"===type&&(grad=ctx.createRadialGradient(p0[0],p0[1],r0,p1[0],p1[1],r1));for(var i=0,ii=colorStops.length;ii>i;++i){var c=colorStops[i];grad.addColorStop(c[0],c[1])}return grad}}}};var createMeshCanvas=function(){function drawTriangle(data,context,p1,p2,p3,c1,c2,c3){var tmp,coords=context.coords,colors=context.colors,bytes=data.data,rowSize=4*data.width;coords[p1+1]>coords[p2+1]&&(tmp=p1,p1=p2,p2=tmp,tmp=c1,c1=c2,c2=tmp),coords[p2+1]>coords[p3+1]&&(tmp=p2,p2=p3,p3=tmp,tmp=c2,c2=c3,c3=tmp),coords[p1+1]>coords[p2+1]&&(tmp=p1,p1=p2,p2=tmp,tmp=c1,c1=c2,c2=tmp);var x1=(coords[p1]+context.offsetX)*context.scaleX,y1=(coords[p1+1]+context.offsetY)*context.scaleY,x2=(coords[p2]+context.offsetX)*context.scaleX,y2=(coords[p2+1]+context.offsetY)*context.scaleY,x3=(coords[p3]+context.offsetX)*context.scaleX,y3=(coords[p3+1]+context.offsetY)*context.scaleY; +if(!(y1>=y3))for(var xa,car,cag,cab,xb,cbr,cbg,cbb,k,c1r=colors[c1],c1g=colors[c1+1],c1b=colors[c1+2],c2r=colors[c2],c2g=colors[c2+1],c2b=colors[c2+2],c3r=colors[c3],c3g=colors[c3+1],c3b=colors[c3+2],minY=Math.round(y1),maxY=Math.round(y3),y=minY;maxY>=y;y++){y2>y?(k=y1>y?0:y1===y2?1:(y1-y)/(y1-y2),xa=x1-(x1-x2)*k,car=c1r-(c1r-c2r)*k,cag=c1g-(c1g-c2g)*k,cab=c1b-(c1b-c2b)*k):(k=y>y3?1:y2===y3?0:(y2-y)/(y2-y3),xa=x2-(x2-x3)*k,car=c2r-(c2r-c3r)*k,cag=c2g-(c2g-c3g)*k,cab=c2b-(c2b-c3b)*k),k=y1>y?0:y>y3?1:(y1-y)/(y1-y3),xb=x1-(x1-x3)*k,cbr=c1r-(c1r-c3r)*k,cbg=c1g-(c1g-c3g)*k,cbb=c1b-(c1b-c3b)*k;for(var x1_=Math.round(Math.min(xa,xb)),x2_=Math.round(Math.max(xa,xb)),j=rowSize*y+4*x1_,x=x1_;x2_>=x;x++)k=(xa-x)/(xa-xb),k=0>k?0:k>1?1:k,bytes[j++]=car-(car-cbr)*k|0,bytes[j++]=cag-(cag-cbg)*k|0,bytes[j++]=cab-(cab-cbb)*k|0,bytes[j++]=255}}function drawFigure(data,figure,context){var i,ii,ps=figure.coords,cs=figure.colors;switch(figure.type){case"lattice":var verticesPerRow=figure.verticesPerRow,rows=Math.floor(ps.length/verticesPerRow)-1,cols=verticesPerRow-1;for(i=0;rows>i;i++)for(var q=i*verticesPerRow,j=0;cols>j;j++,q++)drawTriangle(data,context,ps[q],ps[q+1],ps[q+verticesPerRow],cs[q],cs[q+1],cs[q+verticesPerRow]),drawTriangle(data,context,ps[q+verticesPerRow+1],ps[q+1],ps[q+verticesPerRow],cs[q+verticesPerRow+1],cs[q+1],cs[q+verticesPerRow]);break;case"triangles":for(i=0,ii=ps.length;ii>i;i+=3)drawTriangle(data,context,ps[i],ps[i+1],ps[i+2],cs[i],cs[i+1],cs[i+2]);break;default:error("illigal figure")}}function createMeshCanvas(bounds,combinesScale,coords,colors,figures,backgroundColor){var canvas,tmpCanvas,i,ii,EXPECTED_SCALE=1.1,MAX_PATTERN_SIZE=3e3,offsetX=Math.floor(bounds[0]),offsetY=Math.floor(bounds[1]),boundsWidth=Math.ceil(bounds[2])-offsetX,boundsHeight=Math.ceil(bounds[3])-offsetY,width=Math.min(Math.ceil(Math.abs(boundsWidth*combinesScale[0]*EXPECTED_SCALE)),MAX_PATTERN_SIZE),height=Math.min(Math.ceil(Math.abs(boundsHeight*combinesScale[1]*EXPECTED_SCALE)),MAX_PATTERN_SIZE),scaleX=boundsWidth/width,scaleY=boundsHeight/height,context={coords:coords,colors:colors,offsetX:-offsetX,offsetY:-offsetY,scaleX:1/scaleX,scaleY:1/scaleY};if(WebGLUtils.isEnabled)canvas=WebGLUtils.drawFigures(width,height,backgroundColor,figures,context),tmpCanvas=CachedCanvases.getCanvas("mesh",width,height,!1),tmpCanvas.context.drawImage(canvas,0,0),canvas=tmpCanvas.canvas;else{tmpCanvas=CachedCanvases.getCanvas("mesh",width,height,!1);var tmpCtx=tmpCanvas.context,data=tmpCtx.createImageData(width,height);if(backgroundColor){var bytes=data.data;for(i=0,ii=bytes.length;ii>i;i+=4)bytes[i]=backgroundColor[0],bytes[i+1]=backgroundColor[1],bytes[i+2]=backgroundColor[2],bytes[i+3]=255}for(i=0;i<figures.length;i++)drawFigure(data,figures[i],context);tmpCtx.putImageData(data,0,0),canvas=tmpCanvas.canvas}return{canvas:canvas,offsetX:offsetX,offsetY:offsetY,scaleX:scaleX,scaleY:scaleY}}return createMeshCanvas}();ShadingIRs.Mesh={fromIR:function(raw){var coords=raw[2],colors=raw[3],figures=raw[4],bounds=raw[5],matrix=raw[6],background=raw[8];return{type:"Pattern",getPattern:function(ctx,owner,shadingFill){var scale;if(shadingFill)scale=Util.singularValueDecompose2dScale(ctx.mozCurrentTransform);else if(scale=Util.singularValueDecompose2dScale(owner.baseTransform),matrix){var matrixScale=Util.singularValueDecompose2dScale(matrix);scale=[scale[0]*matrixScale[0],scale[1]*matrixScale[1]]}var temporaryPatternCanvas=createMeshCanvas(bounds,scale,coords,colors,figures,shadingFill?null:background);return shadingFill||(ctx.setTransform.apply(ctx,owner.baseTransform),matrix&&ctx.transform.apply(ctx,matrix)),ctx.translate(temporaryPatternCanvas.offsetX,temporaryPatternCanvas.offsetY),ctx.scale(temporaryPatternCanvas.scaleX,temporaryPatternCanvas.scaleY),ctx.createPattern(temporaryPatternCanvas.canvas,"no-repeat")}}}},ShadingIRs.Dummy={fromIR:function(){return{type:"Pattern",getPattern:function(){return"hotpink"}}}};var TilingPattern=function(){function TilingPattern(IR,color,ctx,objs,commonObjs,baseTransform){this.operatorList=IR[2],this.matrix=IR[3]||[1,0,0,1,0,0],this.bbox=IR[4],this.xstep=IR[5],this.ystep=IR[6],this.paintType=IR[7],this.tilingType=IR[8],this.color=color,this.objs=objs,this.commonObjs=commonObjs,this.baseTransform=baseTransform,this.type="Pattern",this.ctx=ctx}var PaintType={COLORED:1,UNCOLORED:2},MAX_PATTERN_SIZE=3e3;return TilingPattern.prototype={createPatternCanvas:function(owner){var operatorList=this.operatorList,bbox=this.bbox,xstep=this.xstep,ystep=this.ystep,paintType=this.paintType,tilingType=this.tilingType,color=this.color,objs=this.objs,commonObjs=this.commonObjs;info("TilingType: "+tilingType);var x0=bbox[0],y0=bbox[1],x1=bbox[2],y1=bbox[3],topLeft=[x0,y0],botRight=[x0+xstep,y0+ystep],width=botRight[0]-topLeft[0],height=botRight[1]-topLeft[1],matrixScale=Util.singularValueDecompose2dScale(this.matrix),curMatrixScale=Util.singularValueDecompose2dScale(this.baseTransform),combinedScale=[matrixScale[0]*curMatrixScale[0],matrixScale[1]*curMatrixScale[1]];width=Math.min(Math.ceil(Math.abs(width*combinedScale[0])),MAX_PATTERN_SIZE),height=Math.min(Math.ceil(Math.abs(height*combinedScale[1])),MAX_PATTERN_SIZE);var tmpCanvas=CachedCanvases.getCanvas("pattern",width,height,!0),tmpCtx=tmpCanvas.context,graphics=new CanvasGraphics(tmpCtx,commonObjs,objs);graphics.groupLevel=owner.groupLevel,this.setFillAndStrokeStyleToContext(tmpCtx,paintType,color),this.setScale(width,height,xstep,ystep),this.transformToScale(graphics);var tmpTranslate=[1,0,0,1,-topLeft[0],-topLeft[1]];return graphics.transform.apply(graphics,tmpTranslate),this.clipBbox(graphics,bbox,x0,y0,x1,y1),graphics.executeOperatorList(operatorList),tmpCanvas.canvas},setScale:function(width,height,xstep,ystep){this.scale=[width/xstep,height/ystep]},transformToScale:function(graphics){var scale=this.scale,tmpScale=[scale[0],0,0,scale[1],0,0];graphics.transform.apply(graphics,tmpScale)},scaleToContext:function(){var scale=this.scale;this.ctx.scale(1/scale[0],1/scale[1])},clipBbox:function(graphics,bbox,x0,y0,x1,y1){if(bbox&&isArray(bbox)&&4===bbox.length){var bboxWidth=x1-x0,bboxHeight=y1-y0;graphics.ctx.rect(x0,y0,bboxWidth,bboxHeight),graphics.clip(),graphics.endPath()}},setFillAndStrokeStyleToContext:function(context,paintType,color){switch(paintType){case PaintType.COLORED:var ctx=this.ctx;context.fillStyle=ctx.fillStyle,context.strokeStyle=ctx.strokeStyle;break;case PaintType.UNCOLORED:var cssColor=Util.makeCssRgb(color);context.fillStyle=cssColor,context.strokeStyle=cssColor;break;default:error("Unsupported paint type: "+paintType)}},getPattern:function(ctx,owner){var temporaryPatternCanvas=this.createPatternCanvas(owner);return ctx=this.ctx,ctx.setTransform.apply(ctx,this.baseTransform),ctx.transform.apply(ctx,this.matrix),this.scaleToContext(),ctx.createPattern(temporaryPatternCanvas,"repeat")}},TilingPattern}();PDFJS.disableFontFace=!1;var FontLoader={insertRule:function(rule){var styleElement=document.getElementById("PDFJS_FONT_STYLE_TAG");styleElement||(styleElement=document.createElement("style"),styleElement.id="PDFJS_FONT_STYLE_TAG",document.documentElement.getElementsByTagName("head")[0].appendChild(styleElement));var styleSheet=styleElement.sheet;styleSheet.insertRule(rule,styleSheet.cssRules.length)},clear:function(){var styleElement=document.getElementById("PDFJS_FONT_STYLE_TAG");styleElement&&styleElement.parentNode.removeChild(styleElement)},get loadTestFont(){return shadow(this,"loadTestFont",atob("T1RUTwALAIAAAwAwQ0ZGIDHtZg4AAAOYAAAAgUZGVE1lkzZwAAAEHAAAABxHREVGABQAFQAABDgAAAAeT1MvMlYNYwkAAAEgAAAAYGNtYXABDQLUAAACNAAAAUJoZWFk/xVFDQAAALwAAAA2aGhlYQdkA+oAAAD0AAAAJGhtdHgD6AAAAAAEWAAAAAZtYXhwAAJQAAAAARgAAAAGbmFtZVjmdH4AAAGAAAAAsXBvc3T/hgAzAAADeAAAACAAAQAAAAEAALZRFsRfDzz1AAsD6AAAAADOBOTLAAAAAM4KHDwAAAAAA+gDIQAAAAgAAgAAAAAAAAABAAADIQAAAFoD6AAAAAAD6AABAAAAAAAAAAAAAAAAAAAAAQAAUAAAAgAAAAQD6AH0AAUAAAKKArwAAACMAooCvAAAAeAAMQECAAACAAYJAAAAAAAAAAAAAQAAAAAAAAAAAAAAAFBmRWQAwAAuAC4DIP84AFoDIQAAAAAAAQAAAAAAAAAAACAAIAABAAAADgCuAAEAAAAAAAAAAQAAAAEAAAAAAAEAAQAAAAEAAAAAAAIAAQAAAAEAAAAAAAMAAQAAAAEAAAAAAAQAAQAAAAEAAAAAAAUAAQAAAAEAAAAAAAYAAQAAAAMAAQQJAAAAAgABAAMAAQQJAAEAAgABAAMAAQQJAAIAAgABAAMAAQQJAAMAAgABAAMAAQQJAAQAAgABAAMAAQQJAAUAAgABAAMAAQQJAAYAAgABWABYAAAAAAAAAwAAAAMAAAAcAAEAAAAAADwAAwABAAAAHAAEACAAAAAEAAQAAQAAAC7//wAAAC7////TAAEAAAAAAAABBgAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAD/gwAyAAAAAQAAAAAAAAAAAAAAAAAAAAABAAQEAAEBAQJYAAEBASH4DwD4GwHEAvgcA/gXBIwMAYuL+nz5tQXkD5j3CBLnEQACAQEBIVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYAAABAQAADwACAQEEE/t3Dov6fAH6fAT+fPp8+nwHDosMCvm1Cvm1DAz6fBQAAAAAAAABAAAAAMmJbzEAAAAAzgTjFQAAAADOBOQpAAEAAAAAAAAADAAUAAQAAAABAAAAAgABAAAAAAAAAAAD6AAAAAAAAA=="))},loadTestFontId:0,loadingContext:{requests:[],nextRequestId:0},isSyncFontLoadingSupported:function(){if(isWorker)return!1;var userAgent=window.navigator.userAgent,m=/Mozilla\/5.0.*?rv:(\d+).*? Gecko/.exec(userAgent);return m&&m[1]>=14?!0:"node"===userAgent?!0:!1}(),bind:function(fonts,callback){assert(!isWorker,"bind() shall be called from main thread");for(var rules=[],fontsToLoad=[],i=0,ii=fonts.length;ii>i;i++){var font=fonts[i];if(!font.attached&&font.loading!==!1){font.attached=!0;var rule=font.bindDOM();rule&&(rules.push(rule),fontsToLoad.push(font))}}var request=FontLoader.queueLoadingCallback(callback);rules.length>0&&!this.isSyncFontLoadingSupported?FontLoader.prepareFontLoadEvent(rules,fontsToLoad,request):request.complete()},queueLoadingCallback:function(callback){function LoadLoader_completeRequest(){for(assert(!request.end,"completeRequest() cannot be called twice"),request.end=Date.now();context.requests.length>0&&context.requests[0].end;){var otherRequest=context.requests.shift();setTimeout(otherRequest.callback,0)}}var context=FontLoader.loadingContext,requestId="pdfjs-font-loading-"+context.nextRequestId++,request={id:requestId,complete:LoadLoader_completeRequest,callback:callback,started:Date.now()};return context.requests.push(request),request},prepareFontLoadEvent:function(rules,fonts,request){function int32(data,offset){return data.charCodeAt(offset)<<24|data.charCodeAt(offset+1)<<16|data.charCodeAt(offset+2)<<8|255&data.charCodeAt(offset+3)}function spliceString(s,offset,remove,insert){var chunk1=s.substr(0,offset),chunk2=s.substr(offset+remove);return chunk1+insert+chunk2}function isFontReady(name,callback){if(called++,called>30)return warn("Load test font never loaded."),void callback();ctx.font="30px "+name,ctx.fillText(".",0,20);var imageData=ctx.getImageData(0,0,1,1);return imageData.data[3]>0?void callback():void setTimeout(isFontReady.bind(null,name,callback))}var i,ii,canvas=document.createElement("canvas");canvas.width=1,canvas.height=1;var ctx=canvas.getContext("2d"),called=0,loadTestFontId="lt"+Date.now()+this.loadTestFontId++,data=this.loadTestFont,COMMENT_OFFSET=976;data=spliceString(data,COMMENT_OFFSET,loadTestFontId.length,loadTestFontId);var CFF_CHECKSUM_OFFSET=16,XXXX_VALUE=1482184792,checksum=int32(data,CFF_CHECKSUM_OFFSET);for(i=0,ii=loadTestFontId.length-3;ii>i;i+=4)checksum=checksum-XXXX_VALUE+int32(loadTestFontId,i)|0;i<loadTestFontId.length&&(checksum=checksum-XXXX_VALUE+int32(loadTestFontId+"XXX",i)|0),data=spliceString(data,CFF_CHECKSUM_OFFSET,4,string32(checksum));var url="url(data:font/opentype;base64,"+btoa(data)+");",rule='@font-face { font-family:"'+loadTestFontId+'";src:'+url+"}";FontLoader.insertRule(rule);var names=[];for(i=0,ii=fonts.length;ii>i;i++)names.push(fonts[i].loadedName);names.push(loadTestFontId);var div=document.createElement("div");for(div.setAttribute("style","visibility: hidden;width: 10px; height: 10px;position: absolute; top: 0px; left: 0px;"),i=0,ii=names.length;ii>i;++i){var span=document.createElement("span");span.textContent="Hi",span.style.fontFamily=names[i],div.appendChild(span)}document.body.appendChild(div),isFontReady(loadTestFontId,function(){document.body.removeChild(div),request.complete()})}},FontFace=function(){function FontFace(){if(this.compiledGlyphs={},1!==arguments.length);else{var data=arguments[0];for(var i in data)this[i]=data[i]}}return FontFace.prototype={bindDOM:function(){if(!this.data)return null;if(PDFJS.disableFontFace)return this.disableFontFace=!0,null;var data=bytesToString(new Uint8Array(this.data)),fontName=this.loadedName,url="url(data:"+this.mimetype+";base64,"+window.btoa(data)+");",rule='@font-face { font-family:"'+fontName+'";src:'+url+"}";return FontLoader.insertRule(rule),PDFJS.pdfBug&&"FontInspector"in globalScope&&globalScope.FontInspector.enabled&&globalScope.FontInspector.fontAdded(this,url),rule},getPathGenerator:function(objs,character){if(!(character in this.compiledGlyphs)){var js=objs.get(this.loadedName+"_path_"+character);this.compiledGlyphs[character]=new Function("c","size",js)}return this.compiledGlyphs[character]}},FontFace}(),HIGHLIGHT_OFFSET=4,ANNOT_MIN_SIZE=10,AnnotationUtils=function(){function setTextStyles(element,item,fontObj){var style=element.style;if(style.fontSize=item.fontSize+"px",style.direction=item.fontDirection<0?"rtl":"ltr",fontObj){style.fontWeight=fontObj.black?fontObj.bold?"bolder":"bold":fontObj.bold?"bold":"normal",style.fontStyle=fontObj.italic?"italic":"normal";var fontName=fontObj.loadedName,fontFamily=fontName?'"'+fontName+'", ':"",fallbackName=fontObj.fallbackName||"Helvetica, sans-serif";style.fontFamily=fontFamily+fallbackName}}function getEmptyContainer(tagName,rect,borderWidth){var bWidth=borderWidth||0,element=document.createElement(tagName);element.style.borderWidth=bWidth+"px";var width=rect[2]-rect[0]-2*bWidth,height=rect[3]-rect[1]-2*bWidth;return element.style.width=width+"px",element.style.height=height+"px",element}function initContainer(item){var container=getEmptyContainer("section",item.rect,item.borderWidth);container.style.backgroundColor=item.color;for(var color=item.color,rgb=[],i=0;3>i;++i)rgb[i]=Math.round(255*color[i]);item.colorCssRgb=Util.makeCssRgb(rgb);var highlight=document.createElement("div");return highlight.className="annotationHighlight",highlight.style.left=highlight.style.top=-HIGHLIGHT_OFFSET+"px",highlight.style.right=highlight.style.bottom=-HIGHLIGHT_OFFSET+"px",highlight.setAttribute("hidden",!0),item.highlightElement=highlight,container.appendChild(item.highlightElement),container}function getHtmlElementForTextWidgetAnnotation(item,commonObjs){var element=getEmptyContainer("div",item.rect,0);element.style.display="table";var content=document.createElement("div");content.textContent=item.fieldValue;var textAlignment=item.textAlignment;content.style.textAlign=["left","center","right"][textAlignment],content.style.verticalAlign="middle",content.style.display="table-cell";var fontObj=item.fontRefName?commonObjs.getData(item.fontRefName):null;return setTextStyles(content,item,fontObj),element.appendChild(content),element}function getHtmlElementForTextAnnotation(item){var rect=item.rect;rect[3]-rect[1]<ANNOT_MIN_SIZE&&(rect[3]=rect[1]+ANNOT_MIN_SIZE),rect[2]-rect[0]<ANNOT_MIN_SIZE&&(rect[2]=rect[0]+(rect[3]-rect[1]));var container=initContainer(item);container.className="annotText";var image=document.createElement("img");image.style.height=container.style.height,image.style.width=container.style.width;var iconName=item.name;image.src=PDFJS.imageResourcesPath+"annotation-"+iconName.toLowerCase()+".svg",image.alt="[{{type}} Annotation]",image.dataset.l10nId="text_annotation_type",image.dataset.l10nArgs=JSON.stringify({type:iconName});var contentWrapper=document.createElement("div");contentWrapper.className="annotTextContentWrapper",contentWrapper.style.left=Math.floor(rect[2]-rect[0]+5)+"px",contentWrapper.style.top="-10px";var content=document.createElement("div");content.className="annotTextContent",content.setAttribute("hidden",!0);var i,ii;if(item.hasBgColor){var color=item.color,rgb=[];for(i=0;3>i;++i){var c=Math.round(255*color[i]);rgb[i]=Math.round(.7*(255-c))+c}content.style.backgroundColor=Util.makeCssRgb(rgb)}var title=document.createElement("h1"),text=document.createElement("p");if(title.textContent=item.title,item.content||item.title){var e=document.createElement("span"),lines=item.content.split(/(?:\r\n?|\n)/);for(i=0,ii=lines.length;ii>i;++i){var line=lines[i];e.appendChild(document.createTextNode(line)),ii-1>i&&e.appendChild(document.createElement("br"))}text.appendChild(e);var pinned=!1,showAnnotation=function(pin){pin&&(pinned=!0),content.hasAttribute("hidden")&&(container.style.zIndex+=1,content.removeAttribute("hidden"))},hideAnnotation=function(unpin){unpin&&(pinned=!1),content.hasAttribute("hidden")||pinned||(container.style.zIndex-=1,content.setAttribute("hidden",!0))},toggleAnnotation=function(){pinned?hideAnnotation(!0):showAnnotation(!0)};image.addEventListener("click",function(){toggleAnnotation()},!1),image.addEventListener("mouseover",function(){showAnnotation()},!1),image.addEventListener("mouseout",function(){hideAnnotation()},!1),content.addEventListener("click",function(){hideAnnotation(!0)},!1)}else content.setAttribute("hidden",!0);return content.appendChild(title),content.appendChild(text),contentWrapper.appendChild(content),container.appendChild(image),container.appendChild(contentWrapper),container}function getHtmlElementForLinkAnnotation(item){var container=initContainer(item);container.className="annotLink",container.style.borderColor=item.colorCssRgb,container.style.borderStyle="solid";var link=document.createElement("a");return link.href=link.title=item.url||"",container.appendChild(link),container}function getHtmlElement(data,objs){switch(data.annotationType){case AnnotationType.WIDGET:return getHtmlElementForTextWidgetAnnotation(data,objs);case AnnotationType.TEXT:return getHtmlElementForTextAnnotation(data);case AnnotationType.LINK:return getHtmlElementForLinkAnnotation(data);default:throw new Error("Unsupported annotationType: "+data.annotationType)}}return{getHtmlElement:getHtmlElement}}();PDFJS.AnnotationUtils=AnnotationUtils;var SVG_DEFAULTS={fontStyle:"normal",fontWeight:"normal",fillColor:"#000000"},convertImgDataToPng=function(){function crc32(data,start,end){for(var crc=-1,i=start;end>i;i++){var a=255&(crc^data[i]),b=crcTable[a];crc=crc>>>8^b}return-1^crc}function writePngChunk(type,body,data,offset){var p=offset,len=body.length;data[p]=len>>24&255,data[p+1]=len>>16&255,data[p+2]=len>>8&255,data[p+3]=255&len,p+=4,data[p]=255&type.charCodeAt(0),data[p+1]=255&type.charCodeAt(1),data[p+2]=255&type.charCodeAt(2),data[p+3]=255&type.charCodeAt(3),p+=4,data.set(body,p),p+=body.length;var crc=crc32(data,offset+4,p);data[p]=crc>>24&255,data[p+1]=crc>>16&255,data[p+2]=crc>>8&255,data[p+3]=255&crc}function adler32(data,start,end){for(var a=1,b=0,i=start;end>i;++i)a=(a+(255&data[i]))%65521,b=(b+a)%65521;return b<<16|a}function encode(imgData,kind){var bitDepth,colorType,lineSize,width=imgData.width,height=imgData.height,bytes=imgData.data;switch(kind){case ImageKind.GRAYSCALE_1BPP:colorType=0,bitDepth=1,lineSize=width+7>>3;break;case ImageKind.RGB_24BPP:colorType=2,bitDepth=8,lineSize=3*width;break;case ImageKind.RGBA_32BPP:colorType=6,bitDepth=8,lineSize=4*width;break;default:throw new Error("invalid format")}var y,i,literals=new Uint8Array((1+lineSize)*height),offsetLiterals=0,offsetBytes=0;for(y=0;height>y;++y)literals[offsetLiterals++]=0,literals.set(bytes.subarray(offsetBytes,offsetBytes+lineSize),offsetLiterals),offsetBytes+=lineSize,offsetLiterals+=lineSize;if(kind===ImageKind.GRAYSCALE_1BPP)for(offsetLiterals=0,y=0;height>y;y++)for(offsetLiterals++,i=0;lineSize>i;i++)literals[offsetLiterals++]^=255;var ihdr=new Uint8Array([width>>24&255,width>>16&255,width>>8&255,255&width,height>>24&255,height>>16&255,height>>8&255,255&height,bitDepth,colorType,0,0,0]),len=literals.length,maxBlockLength=65535,deflateBlocks=Math.ceil(len/maxBlockLength),idat=new Uint8Array(2+len+5*deflateBlocks+4),pi=0;idat[pi++]=120,idat[pi++]=156;for(var pos=0;len>maxBlockLength;)idat[pi++]=0,idat[pi++]=255,idat[pi++]=255,idat[pi++]=0,idat[pi++]=0,idat.set(literals.subarray(pos,pos+maxBlockLength),pi),pi+=maxBlockLength,pos+=maxBlockLength,len-=maxBlockLength;idat[pi++]=1,idat[pi++]=255&len,idat[pi++]=len>>8&255,idat[pi++]=65535&~len&255,idat[pi++]=(65535&~len)>>8&255,idat.set(literals.subarray(pos),pi),pi+=literals.length-pos;var adler=adler32(literals,0,literals.length);idat[pi++]=adler>>24&255,idat[pi++]=adler>>16&255,idat[pi++]=adler>>8&255,idat[pi++]=255&adler;var pngLength=PNG_HEADER.length+3*CHUNK_WRAPPER_SIZE+ihdr.length+idat.length,data=new Uint8Array(pngLength),offset=0;return data.set(PNG_HEADER,offset),offset+=PNG_HEADER.length,writePngChunk("IHDR",ihdr,data,offset),offset+=CHUNK_WRAPPER_SIZE+ihdr.length,writePngChunk("IDATA",idat,data,offset),offset+=CHUNK_WRAPPER_SIZE+idat.length,writePngChunk("IEND",new Uint8Array(0),data,offset),PDFJS.createObjectURL(data,"image/png")}for(var PNG_HEADER=new Uint8Array([137,80,78,71,13,10,26,10]),CHUNK_WRAPPER_SIZE=12,crcTable=new Int32Array(256),i=0;256>i;i++){for(var c=i,h=0;8>h;h++)c=1&c?3988292384^c>>1&2147483647:c>>1&2147483647;crcTable[i]=c}return function(imgData){var kind=void 0===imgData.kind?ImageKind.GRAYSCALE_1BPP:imgData.kind;return encode(imgData,kind)}}(),SVGExtraState=function(){function SVGExtraState(){this.fontSizeScale=1,this.fontWeight=SVG_DEFAULTS.fontWeight,this.fontSize=0,this.textMatrix=IDENTITY_MATRIX,this.fontMatrix=FONT_IDENTITY_MATRIX,this.leading=0,this.x=0,this.y=0,this.lineX=0,this.lineY=0,this.charSpacing=0,this.wordSpacing=0,this.textHScale=1,this.textRise=0,this.fillColor=SVG_DEFAULTS.fillColor,this.strokeColor="#000000",this.fillAlpha=1,this.strokeAlpha=1,this.lineWidth=1,this.lineJoin="",this.lineCap="",this.miterLimit=0,this.dashArray=[],this.dashPhase=0,this.dependencies=[],this.clipId="",this.pendingClip=!1,this.maskId=""}return SVGExtraState.prototype={clone:function(){return Object.create(this)},setCurrentPoint:function(x,y){this.x=x,this.y=y}},SVGExtraState}(),SVGGraphics=function(){function createScratchSVG(width,height){var NS="http://www.w3.org/2000/svg",svg=document.createElementNS(NS,"svg:svg");return svg.setAttributeNS(null,"version","1.1"),svg.setAttributeNS(null,"width",width+"px"),svg.setAttributeNS(null,"height",height+"px"),svg.setAttributeNS(null,"viewBox","0 0 "+width+" "+height),svg}function opListToTree(opList){for(var opTree=[],tmp=[],opListLen=opList.length,x=0;opListLen>x;x++)"save"!==opList[x].fn?"restore"===opList[x].fn?opTree=tmp.pop():opTree.push(opList[x]):(opTree.push({fnId:92,fn:"group",items:[]}),tmp.push(opTree),opTree=opTree[opTree.length-1].items);return opTree}function pf(value){if(value===(0|value))return value.toString();var s=value.toFixed(10),i=s.length-1;if("0"!==s[i])return s;do i--;while("0"===s[i]);return s.substr(0,"."===s[i]?i:i+1)}function pm(m){if(0===m[4]&&0===m[5]){if(0===m[1]&&0===m[2])return 1===m[0]&&1===m[3]?"":"scale("+pf(m[0])+" "+pf(m[3])+")";if(m[0]===m[3]&&m[1]===-m[2]){var a=180*Math.acos(m[0])/Math.PI;return"rotate("+pf(a)+")"}}else if(1===m[0]&&0===m[1]&&0===m[2]&&1===m[3])return"translate("+pf(m[4])+" "+pf(m[5])+")";return"matrix("+pf(m[0])+" "+pf(m[1])+" "+pf(m[2])+" "+pf(m[3])+" "+pf(m[4])+" "+pf(m[5])+")"}function SVGGraphics(commonObjs,objs){this.current=new SVGExtraState,this.transformMatrix=IDENTITY_MATRIX,this.transformStack=[],this.extraStack=[],this.commonObjs=commonObjs,this.objs=objs,this.pendingEOFill=!1,this.embedFonts=!1,this.embeddedFonts={},this.cssStyle=null}var NS="http://www.w3.org/2000/svg",XML_NS="http://www.w3.org/XML/1998/namespace",XLINK_NS="http://www.w3.org/1999/xlink",LINE_CAP_STYLES=["butt","round","square"],LINE_JOIN_STYLES=["miter","round","bevel"],clipCount=0,maskCount=0;return SVGGraphics.prototype={save:function(){this.transformStack.push(this.transformMatrix);var old=this.current;this.extraStack.push(old),this.current=old.clone()},restore:function(){this.transformMatrix=this.transformStack.pop(),this.current=this.extraStack.pop(),this.tgrp=document.createElementNS(NS,"svg:g"),this.tgrp.setAttributeNS(null,"transform",pm(this.transformMatrix)),this.pgrp.appendChild(this.tgrp)},group:function(items){this.save(),this.executeOpTree(items),this.restore()},loadDependencies:function(operatorList){for(var fnArray=operatorList.fnArray,fnArrayLen=fnArray.length,argsArray=operatorList.argsArray,self=this,i=0;fnArrayLen>i;i++)if(OPS.dependency===fnArray[i])for(var deps=argsArray[i],n=0,nn=deps.length;nn>n;n++){var promise,obj=deps[n],common="g_"===obj.substring(0,2);promise=new Promise(common?function(resolve){self.commonObjs.get(obj,resolve)}:function(resolve){self.objs.get(obj,resolve)}),this.current.dependencies.push(promise)}return Promise.all(this.current.dependencies)},transform:function(a,b,c,d,e,f){var transformMatrix=[a,b,c,d,e,f];this.transformMatrix=PDFJS.Util.transform(this.transformMatrix,transformMatrix),this.tgrp=document.createElementNS(NS,"svg:g"),this.tgrp.setAttributeNS(null,"transform",pm(this.transformMatrix))},getSVG:function(operatorList,viewport){return this.svg=createScratchSVG(viewport.width,viewport.height),this.viewport=viewport,this.loadDependencies(operatorList).then(function(){this.transformMatrix=IDENTITY_MATRIX,this.pgrp=document.createElementNS(NS,"svg:g"),this.pgrp.setAttributeNS(null,"transform",pm(viewport.transform)),this.tgrp=document.createElementNS(NS,"svg:g"),this.tgrp.setAttributeNS(null,"transform",pm(this.transformMatrix)),this.defs=document.createElementNS(NS,"svg:defs"),this.pgrp.appendChild(this.defs),this.pgrp.appendChild(this.tgrp),this.svg.appendChild(this.pgrp);var opTree=this.convertOpList(operatorList);return this.executeOpTree(opTree),this.svg}.bind(this))},convertOpList:function(operatorList){var argsArray=operatorList.argsArray,fnArray=operatorList.fnArray,fnArrayLen=fnArray.length,REVOPS=[],opList=[];for(var op in OPS)REVOPS[OPS[op]]=op;for(var x=0;fnArrayLen>x;x++){var fnId=fnArray[x];opList.push({fnId:fnId,fn:REVOPS[fnId],args:argsArray[x]})}return opListToTree(opList)},executeOpTree:function(opTree){for(var opTreeLen=opTree.length,x=0;opTreeLen>x;x++){var fn=opTree[x].fn,fnId=opTree[x].fnId,args=opTree[x].args;switch(0|fnId){case OPS.beginText:this.beginText();break;case OPS.setLeading:this.setLeading(args);break;case OPS.setLeadingMoveText:this.setLeadingMoveText(args[0],args[1]);break;case OPS.setFont:this.setFont(args);break;case OPS.showText:this.showText(args[0]);break;case OPS.showSpacedText:this.showText(args[0]);break;case OPS.endText:this.endText();break;case OPS.moveText:this.moveText(args[0],args[1]);break;case OPS.setCharSpacing:this.setCharSpacing(args[0]);break;case OPS.setWordSpacing:this.setWordSpacing(args[0]);break;case OPS.setTextMatrix:this.setTextMatrix(args[0],args[1],args[2],args[3],args[4],args[5]);break;case OPS.setLineWidth:this.setLineWidth(args[0]);break;case OPS.setLineJoin:this.setLineJoin(args[0]);break;case OPS.setLineCap:this.setLineCap(args[0]);break;case OPS.setMiterLimit:this.setMiterLimit(args[0]);break;case OPS.setFillRGBColor:this.setFillRGBColor(args[0],args[1],args[2]);break;case OPS.setStrokeRGBColor:this.setStrokeRGBColor(args[0],args[1],args[2]);break;case OPS.setDash:this.setDash(args[0],args[1]);break;case OPS.setGState:this.setGState(args[0]);break;case OPS.fill:this.fill();break;case OPS.eoFill:this.eoFill();break;case OPS.stroke:this.stroke();break;case OPS.fillStroke:this.fillStroke();break;case OPS.eoFillStroke:this.eoFillStroke();break;case OPS.clip:this.clip("nonzero");break;case OPS.eoClip:this.clip("evenodd");break;case OPS.paintSolidColorImageMask:this.paintSolidColorImageMask();break;case OPS.paintJpegXObject:this.paintJpegXObject(args[0],args[1],args[2]);break;case OPS.paintImageXObject:this.paintImageXObject(args[0]);break;case OPS.paintInlineImageXObject:this.paintInlineImageXObject(args[0]);break;case OPS.paintImageMaskXObject:this.paintImageMaskXObject(args[0]);break;case OPS.paintFormXObjectBegin:this.paintFormXObjectBegin(args[0],args[1]);break;case OPS.paintFormXObjectEnd:this.paintFormXObjectEnd();break;case OPS.closePath:this.closePath();break;case OPS.closeStroke:this.closeStroke();break;case OPS.closeFillStroke:this.closeFillStroke();break;case OPS.nextLine:this.nextLine();break;case OPS.transform:this.transform(args[0],args[1],args[2],args[3],args[4],args[5]);break;case OPS.constructPath:this.constructPath(args[0],args[1]);break;case OPS.endPath:this.endPath();break;case 92:this.group(opTree[x].items);break;default:warn("Unimplemented method "+fn)}}},setWordSpacing:function(wordSpacing){this.current.wordSpacing=wordSpacing},setCharSpacing:function(charSpacing){this.current.charSpacing=charSpacing},nextLine:function(){this.moveText(0,this.current.leading)},setTextMatrix:function(a,b,c,d,e,f){var current=this.current;this.current.textMatrix=this.current.lineMatrix=[a,b,c,d,e,f],this.current.x=this.current.lineX=0,this.current.y=this.current.lineY=0,current.xcoords=[],current.tspan=document.createElementNS(NS,"svg:tspan"),current.tspan.setAttributeNS(null,"font-family",current.fontFamily),current.tspan.setAttributeNS(null,"font-size",pf(current.fontSize)+"px"),current.tspan.setAttributeNS(null,"y",pf(-current.y)),current.txtElement=document.createElementNS(NS,"svg:text"),current.txtElement.appendChild(current.tspan)},beginText:function(){this.current.x=this.current.lineX=0,this.current.y=this.current.lineY=0,this.current.textMatrix=IDENTITY_MATRIX,this.current.lineMatrix=IDENTITY_MATRIX,this.current.tspan=document.createElementNS(NS,"svg:tspan"),this.current.txtElement=document.createElementNS(NS,"svg:text"),this.current.txtgrp=document.createElementNS(NS,"svg:g"),this.current.xcoords=[]},moveText:function(x,y){var current=this.current;this.current.x=this.current.lineX+=x,this.current.y=this.current.lineY+=y,current.xcoords=[],current.tspan=document.createElementNS(NS,"svg:tspan"),current.tspan.setAttributeNS(null,"font-family",current.fontFamily),current.tspan.setAttributeNS(null,"font-size",pf(current.fontSize)+"px"),current.tspan.setAttributeNS(null,"y",pf(-current.y))},showText:function(glyphs){var current=this.current,font=current.font,fontSize=current.fontSize;if(0!==fontSize){var i,charSpacing=current.charSpacing,wordSpacing=current.wordSpacing,fontDirection=current.fontDirection,textHScale=current.textHScale*fontDirection,glyphsLength=glyphs.length,vertical=font.vertical,widthAdvanceScale=fontSize*current.fontMatrix[0],x=0;for(i=0;glyphsLength>i;++i){var glyph=glyphs[i];if(null!==glyph)if(isNum(glyph))x+=-glyph*fontSize*.001;else{current.xcoords.push(current.x+x*textHScale);var width=glyph.width,character=glyph.fontChar,charWidth=width*widthAdvanceScale+charSpacing*fontDirection;x+=charWidth,current.tspan.textContent+=character}else x+=fontDirection*wordSpacing}vertical?current.y-=x*textHScale:current.x+=x*textHScale,current.tspan.setAttributeNS(null,"x",current.xcoords.map(pf).join(" ")),current.tspan.setAttributeNS(null,"y",pf(-current.y)),current.tspan.setAttributeNS(null,"font-family",current.fontFamily),current.tspan.setAttributeNS(null,"font-size",pf(current.fontSize)+"px"),current.fontStyle!==SVG_DEFAULTS.fontStyle&¤t.tspan.setAttributeNS(null,"font-style",current.fontStyle),current.fontWeight!==SVG_DEFAULTS.fontWeight&¤t.tspan.setAttributeNS(null,"font-weight",current.fontWeight),current.fillColor!==SVG_DEFAULTS.fillColor&¤t.tspan.setAttributeNS(null,"fill",current.fillColor),current.txtElement.setAttributeNS(null,"transform",pm(current.textMatrix)+" scale(1, -1)"),current.txtElement.setAttributeNS(XML_NS,"xml:space","preserve"),current.txtElement.appendChild(current.tspan),current.txtgrp.appendChild(current.txtElement),this.tgrp.appendChild(current.txtElement)}},setLeadingMoveText:function(x,y){this.setLeading(-y),this.moveText(x,y)},addFontStyle:function(fontObj){this.cssStyle||(this.cssStyle=document.createElementNS(NS,"svg:style"),this.cssStyle.setAttributeNS(null,"type","text/css"),this.defs.appendChild(this.cssStyle)); +var url=PDFJS.createObjectURL(fontObj.data,fontObj.mimetype);this.cssStyle.textContent+='@font-face { font-family: "'+fontObj.loadedName+'"; src: url('+url+"); }\n"},setFont:function(details){var current=this.current,fontObj=this.commonObjs.get(details[0]),size=details[1];this.current.font=fontObj,this.embedFonts&&fontObj.data&&!this.embeddedFonts[fontObj.loadedName]&&(this.addFontStyle(fontObj),this.embeddedFonts[fontObj.loadedName]=fontObj),current.fontMatrix=fontObj.fontMatrix?fontObj.fontMatrix:FONT_IDENTITY_MATRIX;var bold=fontObj.black?fontObj.bold?"bolder":"bold":fontObj.bold?"bold":"normal",italic=fontObj.italic?"italic":"normal";0>size?(size=-size,current.fontDirection=-1):current.fontDirection=1,current.fontSize=size,current.fontFamily=fontObj.loadedName,current.fontWeight=bold,current.fontStyle=italic,current.tspan=document.createElementNS(NS,"svg:tspan"),current.tspan.setAttributeNS(null,"y",pf(-current.y)),current.xcoords=[]},endText:function(){this.current.pendingClip?(this.cgrp.appendChild(this.tgrp),this.pgrp.appendChild(this.cgrp)):this.pgrp.appendChild(this.tgrp),this.tgrp=document.createElementNS(NS,"svg:g"),this.tgrp.setAttributeNS(null,"transform",pm(this.transformMatrix))},setLineWidth:function(width){this.current.lineWidth=width},setLineCap:function(style){this.current.lineCap=LINE_CAP_STYLES[style]},setLineJoin:function(style){this.current.lineJoin=LINE_JOIN_STYLES[style]},setMiterLimit:function(limit){this.current.miterLimit=limit},setStrokeRGBColor:function(){var color=Util.makeCssRgb(arguments);this.current.strokeColor=color},setFillRGBColor:function(){var color=Util.makeCssRgb(arguments);this.current.fillColor=color,this.current.tspan=document.createElementNS(NS,"svg:tspan"),this.current.xcoords=[]},setDash:function(dashArray,dashPhase){this.current.dashArray=dashArray,this.current.dashPhase=dashPhase},constructPath:function(ops,args){var current=this.current,x=current.x,y=current.y;current.path=document.createElementNS(NS,"svg:path");for(var d=[],opLength=ops.length,i=0,j=0;opLength>i;i++)switch(0|ops[i]){case OPS.rectangle:x=args[j++],y=args[j++];var width=args[j++],height=args[j++],xw=x+width,yh=y+height;d.push("M",pf(x),pf(y),"L",pf(xw),pf(y),"L",pf(xw),pf(yh),"L",pf(x),pf(yh),"Z");break;case OPS.moveTo:x=args[j++],y=args[j++],d.push("M",pf(x),pf(y));break;case OPS.lineTo:x=args[j++],y=args[j++],d.push("L",pf(x),pf(y));break;case OPS.curveTo:x=args[j+4],y=args[j+5],d.push("C",pf(args[j]),pf(args[j+1]),pf(args[j+2]),pf(args[j+3]),pf(x),pf(y)),j+=6;break;case OPS.curveTo2:x=args[j+2],y=args[j+3],d.push("C",pf(x),pf(y),pf(args[j]),pf(args[j+1]),pf(args[j+2]),pf(args[j+3])),j+=4;break;case OPS.curveTo3:x=args[j+2],y=args[j+3],d.push("C",pf(args[j]),pf(args[j+1]),pf(x),pf(y),pf(x),pf(y)),j+=4;break;case OPS.closePath:d.push("Z")}current.path.setAttributeNS(null,"d",d.join(" ")),current.path.setAttributeNS(null,"stroke-miterlimit",pf(current.miterLimit)),current.path.setAttributeNS(null,"stroke-linecap",current.lineCap),current.path.setAttributeNS(null,"stroke-linejoin",current.lineJoin),current.path.setAttributeNS(null,"stroke-width",pf(current.lineWidth)+"px"),current.path.setAttributeNS(null,"stroke-dasharray",current.dashArray.map(pf).join(" ")),current.path.setAttributeNS(null,"stroke-dashoffset",pf(current.dashPhase)+"px"),current.path.setAttributeNS(null,"fill","none"),this.tgrp.appendChild(current.path),current.pendingClip?(this.cgrp.appendChild(this.tgrp),this.pgrp.appendChild(this.cgrp)):this.pgrp.appendChild(this.tgrp),current.element=current.path,current.setCurrentPoint(x,y)},endPath:function(){var current=this.current;current.pendingClip?(this.cgrp.appendChild(this.tgrp),this.pgrp.appendChild(this.cgrp)):this.pgrp.appendChild(this.tgrp),this.tgrp=document.createElementNS(NS,"svg:g"),this.tgrp.setAttributeNS(null,"transform",pm(this.transformMatrix))},clip:function(type){var current=this.current;current.clipId="clippath"+clipCount,clipCount++,this.clippath=document.createElementNS(NS,"svg:clipPath"),this.clippath.setAttributeNS(null,"id",current.clipId);var clipElement=current.element.cloneNode();"evenodd"===type?clipElement.setAttributeNS(null,"clip-rule","evenodd"):clipElement.setAttributeNS(null,"clip-rule","nonzero"),this.clippath.setAttributeNS(null,"transform",pm(this.transformMatrix)),this.clippath.appendChild(clipElement),this.defs.appendChild(this.clippath),current.pendingClip=!0,this.cgrp=document.createElementNS(NS,"svg:g"),this.cgrp.setAttributeNS(null,"clip-path","url(#"+current.clipId+")"),this.pgrp.appendChild(this.cgrp)},closePath:function(){var current=this.current,d=current.path.getAttributeNS(null,"d");d+="Z",current.path.setAttributeNS(null,"d",d)},setLeading:function(leading){this.current.leading=-leading},setTextRise:function(textRise){this.current.textRise=textRise},setHScale:function(scale){this.current.textHScale=scale/100},setGState:function(states){for(var i=0,ii=states.length;ii>i;i++){var state=states[i],key=state[0],value=state[1];switch(key){case"LW":this.setLineWidth(value);break;case"LC":this.setLineCap(value);break;case"LJ":this.setLineJoin(value);break;case"ML":this.setMiterLimit(value);break;case"D":this.setDash(value[0],value[1]);break;case"RI":break;case"FL":break;case"Font":this.setFont(value);break;case"CA":break;case"ca":break;case"BM":break;case"SMask":}}},fill:function(){var current=this.current;current.element.setAttributeNS(null,"fill",current.fillColor)},stroke:function(){var current=this.current;current.element.setAttributeNS(null,"stroke",current.strokeColor),current.element.setAttributeNS(null,"fill","none")},eoFill:function(){var current=this.current;current.element.setAttributeNS(null,"fill",current.fillColor),current.element.setAttributeNS(null,"fill-rule","evenodd")},fillStroke:function(){this.stroke(),this.fill()},eoFillStroke:function(){this.current.element.setAttributeNS(null,"fill-rule","evenodd"),this.fillStroke()},closeStroke:function(){this.closePath(),this.stroke()},closeFillStroke:function(){this.closePath(),this.fillStroke()},paintSolidColorImageMask:function(){var current=this.current,rect=document.createElementNS(NS,"svg:rect");rect.setAttributeNS(null,"x","0"),rect.setAttributeNS(null,"y","0"),rect.setAttributeNS(null,"width","1px"),rect.setAttributeNS(null,"height","1px"),rect.setAttributeNS(null,"fill",current.fillColor),this.tgrp.appendChild(rect)},paintJpegXObject:function(objId,w,h){var current=this.current,imgObj=this.objs.get(objId),imgEl=document.createElementNS(NS,"svg:image");imgEl.setAttributeNS(XLINK_NS,"xlink:href",imgObj.src),imgEl.setAttributeNS(null,"width",imgObj.width+"px"),imgEl.setAttributeNS(null,"height",imgObj.height+"px"),imgEl.setAttributeNS(null,"x","0"),imgEl.setAttributeNS(null,"y",pf(-h)),imgEl.setAttributeNS(null,"transform","scale("+pf(1/w)+" "+pf(-1/h)+")"),this.tgrp.appendChild(imgEl),current.pendingClip?(this.cgrp.appendChild(this.tgrp),this.pgrp.appendChild(this.cgrp)):this.pgrp.appendChild(this.tgrp)},paintImageXObject:function(objId){var imgData=this.objs.get(objId);return imgData?void this.paintInlineImageXObject(imgData):void warn("Dependent image isn't ready yet")},paintInlineImageXObject:function(imgData,mask){var current=this.current,width=imgData.width,height=imgData.height,imgSrc=convertImgDataToPng(imgData),cliprect=document.createElementNS(NS,"svg:rect");cliprect.setAttributeNS(null,"x","0"),cliprect.setAttributeNS(null,"y","0"),cliprect.setAttributeNS(null,"width",pf(width)),cliprect.setAttributeNS(null,"height",pf(height)),current.element=cliprect,this.clip("nonzero");var imgEl=document.createElementNS(NS,"svg:image");imgEl.setAttributeNS(XLINK_NS,"xlink:href",imgSrc),imgEl.setAttributeNS(null,"x","0"),imgEl.setAttributeNS(null,"y",pf(-height)),imgEl.setAttributeNS(null,"width",pf(width)+"px"),imgEl.setAttributeNS(null,"height",pf(height)+"px"),imgEl.setAttributeNS(null,"transform","scale("+pf(1/width)+" "+pf(-1/height)+")"),mask?mask.appendChild(imgEl):this.tgrp.appendChild(imgEl),current.pendingClip?(this.cgrp.appendChild(this.tgrp),this.pgrp.appendChild(this.cgrp)):this.pgrp.appendChild(this.tgrp)},paintImageMaskXObject:function(imgData){var current=this.current,width=imgData.width,height=imgData.height,fillColor=current.fillColor;current.maskId="mask"+maskCount++;var mask=document.createElementNS(NS,"svg:mask");mask.setAttributeNS(null,"id",current.maskId);var rect=document.createElementNS(NS,"svg:rect");rect.setAttributeNS(null,"x","0"),rect.setAttributeNS(null,"y","0"),rect.setAttributeNS(null,"width",pf(width)),rect.setAttributeNS(null,"height",pf(height)),rect.setAttributeNS(null,"fill",fillColor),rect.setAttributeNS(null,"mask","url(#"+current.maskId+")"),this.defs.appendChild(mask),this.tgrp.appendChild(rect),this.paintInlineImageXObject(imgData,mask)},paintFormXObjectBegin:function(matrix,bbox){if(this.save(),isArray(matrix)&&6===matrix.length&&this.transform(matrix[0],matrix[1],matrix[2],matrix[3],matrix[4],matrix[5]),isArray(bbox)&&4===bbox.length){var width=bbox[2]-bbox[0],height=bbox[3]-bbox[1],cliprect=document.createElementNS(NS,"svg:rect");cliprect.setAttributeNS(null,"x",bbox[0]),cliprect.setAttributeNS(null,"y",bbox[1]),cliprect.setAttributeNS(null,"width",pf(width)),cliprect.setAttributeNS(null,"height",pf(height)),this.current.element=cliprect,this.clip("nonzero"),this.endPath()}},paintFormXObjectEnd:function(){this.restore()}},SVGGraphics}();PDFJS.SVGGraphics=SVGGraphics}.call("undefined"==typeof window?this:window),PDFJS.workerSrc||"undefined"==typeof document||(PDFJS.workerSrc=function(){"use strict";var scriptTagContainer=document.body||document.getElementsByTagName("head")[0],pdfjsSrc=scriptTagContainer.lastChild.src;return pdfjsSrc&&pdfjsSrc.replace(/\.js$/i,".worker.js")}());
\ No newline at end of file |
