2020-09-13 21:56:45 +00:00
System . register ( [ ] , ( function ( er , tr ) { "use strict" ; return { execute : function ( ) { var er = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : { } ; function createCommonjsModule ( er , tr , rr ) { return er ( rr = { path : tr , exports : { } , require : function ( er , tr ) { return function commonjsRequire ( ) { throw new Error ( "Dynamic requires are not currently supported by @rollup/plugin-commonjs" ) } ( null == tr && rr . path ) } } , rr . exports ) , rr . exports } var check = function ( er ) { return er && er . Math == Math && er } , rr = check ( "object" == typeof globalThis && globalThis ) || check ( "object" == typeof window && window ) || check ( "object" == typeof self && self ) || check ( "object" == typeof er && er ) || Function ( "return this" ) ( ) , fails = function ( er ) { try { return ! ! er ( ) } catch ( er ) { return ! 0 } } , nr = ! fails ( ( function ( ) { return 7 != Object . defineProperty ( { } , 1 , { get : function ( ) { return 7 } } ) [ 1 ] } ) ) , ar = { } . propertyIsEnumerable , ir = Object . getOwnPropertyDescriptor , or = { f : ir && ! ar . call ( { 1 : 2 } , 1 ) ? function propertyIsEnumerable ( er ) { var tr = ir ( this , er ) ; return ! ! tr && tr . enumerable } : ar } , createPropertyDescriptor = function ( er , tr ) { return { enumerable : ! ( 1 & er ) , configurable : ! ( 2 & er ) , writable : ! ( 4 & er ) , value : tr } } , sr = { } . toString , classofRaw = function ( er ) { return sr . call ( er ) . slice ( 8 , - 1 ) } , lr = "" . split , cr = fails ( ( function ( ) { return ! Object ( "z" ) . propertyIsEnumerable ( 0 ) } ) ) ? function ( er ) { return "String" == classofRaw ( er ) ? lr . call ( er , "" ) : Object ( er ) } : Object , requireObjectCoercible = function ( er ) { if ( null == er ) throw TypeError ( "Can't call method on " + er ) ; return er } , toIndexedObject = function ( er ) { return cr ( requireObjectCoercible ( er ) ) } , isObject = function ( er ) { return "object" == typeof er ? null !== er : "function" == typeof er } , toPrimitive = function ( er , tr ) { if ( ! isObject ( er ) ) return er ; var rr , nr ; if ( tr && "function" == typeof ( rr = er . toString ) && ! isObject ( nr = rr . call ( er ) ) ) return nr ; if ( "function" == typeof ( rr = er . valueOf ) && ! isObject ( nr = rr . call ( er ) ) ) return nr ; if ( ! tr && "function" == typeof ( rr = er . toString ) && ! isObject ( nr = rr . call ( er ) ) ) return nr ; throw TypeError ( "Can't convert object to primitive value" ) } , ur = { } . hasOwnProperty , has = function ( er , tr ) { return ur . call ( er , tr ) } , dr = rr . document , hr = isObject ( dr ) && isObject ( dr . createElement ) , documentCreateElement = function ( er ) { return hr ? dr . createElement ( er ) : { } } , Ar = ! nr && ! fails ( ( function ( ) { return 7 != Object . defineProperty ( documentCreateElement ( "div" ) , "a" , { get : function ( ) { return 7 } } ) . a } ) ) , pr = Object . getOwnPropertyDescriptor , gr = { f : nr ? pr : function getOwnPropertyDescriptor ( er , tr ) { if ( er = toIndexedObject ( er ) , tr = toPrimitive ( tr , ! 0 ) , Ar ) try { return pr ( er , tr ) } catch ( er ) { } if ( has ( er , tr ) ) return createPropertyDescriptor ( ! or . f . call ( er , tr ) , er [ tr ] ) } } , anObject = function ( er ) { if ( ! isObject ( er ) ) throw TypeError ( String ( er ) + " is not an object" ) ; return er } , fr = Object . defineProperty , mr = { f : nr ? fr : function defineProperty ( er , tr , rr ) { if ( anObject ( er ) , tr = toPrimitive ( tr , ! 0 ) , anObject ( rr ) , Ar ) try { return fr ( er , tr , rr ) } catch ( er ) { } if ( "get" in rr || "set" in rr ) throw TypeError ( "Accessors not supported" ) ; return "value" in rr && ( er [ tr ] = rr . value ) , er } } , _r = nr ? function ( er , tr , rr ) { return mr . f ( er , tr , createPropertyDescriptor ( 1 , rr ) ) } : function ( er , tr , rr ) { return er [ tr ] = rr , er } , setGlobal = function ( er , tr ) { try { _r ( rr , er , tr ) } catch ( nr ) { rr [ er ] = tr } return tr } , vr = "__core-js_shared__" , yr = rr [ vr ] || setGlobal ( vr , { } ) , br = Function . toString ; "function" != typeof yr . inspectSource && ( yr . inspectSource = function ( er ) { return br . call ( er ) } ) ; var wr , kr , xr , Sr = yr . inspectSource , Cr = rr . WeakMap , Br = "function" == typeof Cr && /native code/ . test ( Sr ( Cr ) ) , Er = createCommonjsModule ( ( function ( er ) { ( er . exports = function ( er , tr ) { return yr [ er ] || ( yr [ er ] = void 0 !== tr ? tr : { } ) } ) ( "versions" , [ ] ) . push ( { version : "3.6.5" , mode : "global" , copyright : "© 2020 Denis Pushkarev (zloirock.ru)" } ) } ) ) , Nr = 0 , Lr = Math . random ( ) , uid = function ( er ) { return "Symbol(" + String ( void 0 === er ? "" : er ) + ")_" + ( ++ Nr + Lr ) . toString ( 36 ) } , Tr = Er ( "keys" ) , sharedKey = function ( er ) { return Tr [ er ] || ( Tr [ er ] = uid ( er ) ) } , Pr = { } , Ur = rr . WeakMap ; if ( Br ) { var Fr = new Ur , Ir = Fr . get , Rr = Fr . has , Mr = Fr . set ; wr = function ( er , tr ) { return Mr . call ( Fr , er , tr ) , tr } , kr = function ( er ) { return Ir . call ( Fr , er ) || { } } , xr = function ( er ) { return Rr . call ( Fr , er ) } } else { var Qr = sharedKey ( "state" ) ; Pr [ Qr ] = ! 0 , wr = function ( er , tr ) { return _r ( er , Qr , tr ) , tr } , kr = function ( er ) { retur
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* Namespaces or tools therefor .
* @ module namespaces
* @ license MIT
* /
2020-09-13 21:56:45 +00:00
var wd = { HTML : "http://www.w3.org/1999/xhtml" , MATH : "http://www.w3.org/1998/Math/MathML" , SE : "http://svg-edit.googlecode.com" , SVG : "http://www.w3.org/2000/svg" , XLINK : "http://www.w3.org/1999/xlink" , XML : "http://www.w3.org/XML/1998/namespace" , XMLNS : "http://www.w3.org/2000/xmlns/" } , kd = function getReverseNS ( ) { var er = { } ; return Object . entries ( wd ) . forEach ( ( function ( tr ) { var rr = _slicedToArray ( tr , 2 ) , nr = rr [ 0 ] , ar = rr [ 1 ] ; er [ ar ] = nr . toLowerCase ( ) } ) ) , er } , xd = arrayMethodHasSpeciesSupport ( "splice" ) , Sd = arrayMethodUsesToLength ( "splice" , { ACCESSORS : ! 0 , 0 : 0 , 1 : 2 } ) , Cd = Math . max , Bd = Math . min , Ed = 9007199254740991 , Nd = "Maximum allowed length exceeded" ; _export ( { target : "Array" , proto : ! 0 , forced : ! xd || ! Sd } , { splice : function splice ( er , tr ) { var rr , nr , ar , ir , or , sr , lr = toObject ( this ) , cr = toLength ( lr . length ) , ur = toAbsoluteIndex ( er , cr ) , dr = arguments . length ; if ( 0 === dr ? rr = nr = 0 : 1 === dr ? ( rr = 0 , nr = cr - ur ) : ( rr = dr - 2 , nr = Bd ( Cd ( toInteger ( tr ) , 0 ) , cr - ur ) ) , cr + rr - nr > Ed ) throw TypeError ( Nd ) ; for ( ar = arraySpeciesCreate ( lr , nr ) , ir = 0 ; ir < nr ; ir ++ ) ( or = ur + ir ) in lr && createProperty ( ar , ir , lr [ or ] ) ; if ( ar . length = nr , rr < nr ) { for ( ir = ur ; ir < cr - nr ; ir ++ ) sr = ir + rr , ( or = ir + nr ) in lr ? lr [ sr ] = lr [ or ] : delete lr [ sr ] ; for ( ir = cr ; ir > cr - nr + rr ; ir -- ) delete lr [ ir - 1 ] } else if ( rr > nr ) for ( ir = cr - nr ; ir > ur ; ir -- ) sr = ir + rr - 1 , ( or = ir + nr - 1 ) in lr ? lr [ sr ] = lr [ or ] : delete lr [ sr ] ; for ( ir = 0 ; ir < rr ; ir ++ ) lr [ ir + ur ] = arguments [ ir + 2 ] ; return lr . length = cr - nr + rr , ar } } ) , _export ( { target : "Object" , stat : ! 0 , forced : ! nr , sham : ! nr } , { defineProperties : ba } ) , function ( ) { if ( ! ( "SVGPathSeg" in window ) ) { var er = function ( ) { function _SVGPathSeg ( er , tr , rr ) { _classCallCheck ( this , _SVGPathSeg ) , this . pathSegType = er , this . pathSegTypeAsLetter = tr , this . _owningPathSegList = rr } return _createClass ( _SVGPathSeg , [ { key : "_segmentChanged" , value : function _segmentChanged ( ) { this . _owningPathSegList && this . _owningPathSegList . segmentChanged ( this ) } } ] ) , _SVGPathSeg } ( ) ; er . prototype . classname = "SVGPathSeg" , er . PATHSEG _UNKNOWN = 0 , er . PATHSEG _CLOSEPATH = 1 , er . PATHSEG _MOVETO _ABS = 2 , er . PATHSEG _MOVETO _REL = 3 , er . PATHSEG _LINETO _ABS = 4 , er . PATHSEG _LINETO _REL = 5 , er . PATHSEG _CURVETO _CUBIC _ABS = 6 , er . PATHSEG _CURVETO _CUBIC _REL = 7 , er . PATHSEG _CURVETO _QUADRATIC _ABS = 8 , er . PATHSEG _CURVETO _QUADRATIC _REL = 9 , er . PATHSEG _ARC _ABS = 10 , er . PATHSEG _ARC _REL = 11 , er . PATHSEG _LINETO _HORIZONTAL _ABS = 12 , er . PATHSEG _LINETO _HORIZONTAL _REL = 13 , er . PATHSEG _LINETO _VERTICAL _ABS = 14 , er . PATHSEG _LINETO _VERTICAL _REL = 15 , er . PATHSEG _CURVETO _CUBIC _SMOOTH _ABS = 16 , er . PATHSEG _CURVETO _CUBIC _SMOOTH _REL = 17 , er . PATHSEG _CURVETO _QUADRATIC _SMOOTH _ABS = 18 , er . PATHSEG _CURVETO _QUADRATIC _SMOOTH _REL = 19 ; var tr = function ( tr ) { _inherits ( _SVGPathSegClosePath , tr ) ; var rr = _createSuper ( _SVGPathSegClosePath ) ; function _SVGPathSegClosePath ( tr ) { return _classCallCheck ( this , _SVGPathSegClosePath ) , rr . call ( this , er . PATHSEG _CLOSEPATH , "z" , tr ) } return _createClass ( _SVGPathSegClosePath , [ { key : "toString" , value : function toString ( ) { return "[object SVGPathSegClosePath]" } } , { key : "_asPathString" , value : function _asPathString ( ) { return this . pathSegTypeAsLetter } } , { key : "clone" , value : function clone ( ) { return new _SVGPathSegClosePath ( void 0 ) } } ] ) , _SVGPathSegClosePath } ( er ) , rr = function ( tr ) { _inherits ( _SVGPathSegMovetoAbs , tr ) ; var rr = _createSuper ( _SVGPathSegMovetoAbs ) ; function _SVGPathSegMovetoAbs ( tr , nr , ar ) { var ir ; return _classCallCheck ( this , _SVGPathSegMovetoAbs ) , ( ir = rr . call ( this , er . PATHSEG _MOVETO _ABS , "M" , tr ) ) . _x = nr , ir . _y = ar , ir } return _createClass ( _SVGPathSegMovetoAbs , [ { key : "toString" , value : function toString ( ) { return "[object SVGPathSegMovetoAbs]" } } , { key : "_asPathString" , value : function _asPathString ( ) { return this . pathSegTypeAsLetter + " " + this . _x + " " + this . _y } } , { key : "clone" , value : function clone ( ) { return new _SVGPathSegMovetoAbs ( void 0 , this . _x , this . _y ) } } ] ) , _SVGPathSegMovetoAbs } ( er ) ; Object . defineProperties ( rr . prototype , { x : { get : function get ( ) { return this . _x } , set : function set ( er ) { this . _x = er , this . _segmentChanged ( ) } , enumerable : ! 0 } , y : { get : function get ( ) { return this . _y } , set : function set ( er ) { this . _y = er , this . _segmentChanged ( ) } , enumerable : ! 0 } } ) ; var nr = function ( tr ) { _inherits ( _SVGPathSegMovetoRel , tr ) ; var rr = _createSuper ( _SVGPathSegMovetoRel ) ; function _SVGPathSegMovetoRel ( tr , nr , ar ) { var ir ; return _classCallCheck ( this , _SVGPathSegMovetoRel ) , ( ir = rr . call ( this , er . PATHSEG _MOVETO _REL , "m" , tr ) ) . _
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* A jQuery module to work with SVG attributes .
* @ module jQueryAttr
* @ license MIT
* /
2020-09-13 21:56:45 +00:00
function jQueryPluginSVG ( er ) { var tr = er . fn . attr ; return er . fn . attr = function ( er , rr ) { var nr = this . length ; if ( ! nr ) return tr . call ( this , er , rr ) ; for ( var ar = 0 ; ar < nr ; ++ ar ) { var ir = this [ ar ] ; if ( "http://www.w3.org/2000/svg" !== ir . namespaceURI ) return tr . call ( this , er , rr ) ; if ( void 0 !== rr ) ir . setAttribute ( er , rr ) ; else if ( Array . isArray ( er ) ) { for ( var or = { } , sr = er . length ; sr -- ; ) { var lr = er [ sr ] , cr = ir . getAttribute ( lr ) ; ( cr || "0" === cr ) && ( cr = isNaN ( cr ) ? cr : cr - 0 ) , or [ lr ] = cr } return or } if ( "object" !== _typeof ( er ) ) { var ur = ir . getAttribute ( er ) ; return ( ur || "0" === ur ) && ( ur = isNaN ( ur ) ? ur : ur - 0 ) , ur } for ( var dr = 0 , hr = Object . entries ( er ) ; dr < hr . length ; dr ++ ) { var Ar = _slicedToArray ( hr [ dr ] , 2 ) , pr = Ar [ 0 ] , gr = Ar [ 1 ] ; ir . setAttribute ( pr , gr ) } } return this } , er } vp ( "toString" , wp , xp ) ; var Sp = document . createElementNS ( wd . SVG , "svg" ) ; function transformToString ( er ) { var tr = er . matrix , rr = "" ; switch ( er . type ) { case 1 : rr = "matrix(" + [ tr . a , tr . b , tr . c , tr . d , tr . e , tr . f ] . join ( "," ) + ")" ; break ; case 2 : rr = "translate(" + tr . e + "," + tr . f + ")" ; break ; case 3 : rr = tr . a === tr . d ? "scale(" + tr . a + ")" : "scale(" + tr . a + "," + tr . d + ")" ; break ; case 4 : var nr = 0 , ar = 0 ; if ( 0 !== er . angle ) { var ir = 1 - tr . a ; ar = ( ir * tr . f + tr . b * tr . e ) / ( ir * ir + tr . b * tr . b ) , nr = ( tr . e - tr . b * ar ) / ir } rr = "rotate(" + er . angle + " " + nr + "," + ar + ")" } return rr } var Cp , Bp = { } , Ep = function ( ) { function SVGTransformList ( er ) { _classCallCheck ( this , SVGTransformList ) , this . _elem = er || null , this . _xforms = [ ] , this . _update = function ( ) { for ( var er = "" , tr = 0 ; tr < this . numberOfItems ; ++ tr ) { er += transformToString ( this . _list . getItem ( tr ) ) + " " } this . _elem . setAttribute ( "transform" , er ) } , this . _list = this , this . _init = function ( ) { var er = this , tr = this . _elem . getAttribute ( "transform" ) ; if ( tr ) for ( var rr = /\s*((scale|matrix|rotate|translate)\s*\(.*?\))\s*,?\s*/ , nr = ! 0 ; nr ; ) nr = tr . match ( rr ) , tr = tr . replace ( rr , "" ) , nr && nr [ 1 ] && function ( ) { var tr = nr [ 1 ] . split ( /\s*\(/ ) , rr = tr [ 0 ] , ar = tr [ 1 ] . match ( /\s*(.*?)\s*\)/ ) ; ar [ 1 ] = ar [ 1 ] . replace ( /(\d)-/g , "$1 -" ) ; var ir = ar [ 1 ] . split ( /[, ]+/ ) , or = "abcdef" . split ( "" ) , sr = Sp . createSVGMatrix ( ) ; Object . values ( ir ) . forEach ( ( function ( er , tr ) { ir [ tr ] = Number . parseFloat ( er ) , "matrix" === rr && ( sr [ or [ tr ] ] = ir [ tr ] ) } ) ) ; var lr = Sp . createSVGTransform ( ) , cr = "set" + rr . charAt ( 0 ) . toUpperCase ( ) + rr . slice ( 1 ) , ur = "matrix" === rr ? [ sr ] : ir ; "scale" === rr && 1 === ur . length ? ur . push ( ur [ 0 ] ) : "translate" === rr && 1 === ur . length ? ur . push ( 0 ) : "rotate" === rr && 1 === ur . length && ur . push ( 0 , 0 ) , lr [ cr ] . apply ( lr , _toConsumableArray ( ur ) ) , er . _list . appendItem ( lr ) } ( ) } , this . _removeFromOtherLists = function ( er ) { er && Object . values ( Bp ) . some ( ( function ( tr ) { for ( var rr = 0 , nr = tr . _xforms . length ; rr < nr ; ++ rr ) if ( tr . _xforms [ rr ] === er ) return tr . removeItem ( rr ) , ! 0 ; return ! 1 } ) ) } , this . numberOfItems = 0 } return _createClass ( SVGTransformList , [ { key : "clear" , value : function clear ( ) { this . numberOfItems = 0 , this . _xforms = [ ] } } , { key : "initialize" , value : function initialize ( er ) { this . numberOfItems = 1 , this . _removeFromOtherLists ( er ) , this . _xforms = [ er ] } } , { key : "getItem" , value : function getItem ( er ) { if ( er < this . numberOfItems && er >= 0 ) return this . _xforms [ er ] ; var tr = new Error ( "DOMException with code=INDEX_SIZE_ERR" ) ; throw tr . code = 1 , tr } } , { key : "insertItemBefore" , value : function insertItemBefore ( er , tr ) { var rr = null ; if ( tr >= 0 ) if ( tr < this . numberOfItems ) { this . _removeFromOtherLists ( er ) ; var nr , ar = new Array ( this . numberOfItems + 1 ) ; for ( nr = 0 ; nr < tr ; ++ nr ) ar [ nr ] = this . _xforms [ nr ] ; ar [ nr ] = er ; for ( var ir = nr + 1 ; nr < this . numberOfItems ; ++ ir , ++ nr ) ar [ ir ] = this . _xforms [ nr ] ; this . numberOfItems ++ , this . _xforms = ar , rr = er , this . _list . _update ( ) } else rr = this . _list . appendItem ( er ) ; return rr } } , { key : "replaceItem" , value : function replaceItem ( er , tr ) { var rr = null ; return tr < this . numberOfItems && tr >= 0 && ( this . _removeFromOtherLists ( er ) , this . _xforms [ tr ] = er , rr = er , this . _list . _update ( ) ) , rr } } , { key : "removeItem" , value : function removeItem ( er ) { if ( er < this . numberOfItems && er >= 0 ) { var tr , rr = this . _xforms [ er ] , nr = new Array ( this . numberOfItems - 1 ) ; for ( tr = 0 ; tr < er ; ++ tr ) nr [ tr ] = this . _xforms [ tr ] ; for ( var ar = tr ; ar < this . numberOfItems - 1 ; ++ ar , ++ tr ) nr [ ar ] = this . _xforms [ tr + 1 ] ; return this . numberOfItems -- , this . _xforms = nr , this . _list . _update ( ) , rr } var ir = new Error ( "DOMException with code=INDEX_SIZE_ERR" ) ; throw ir . code = 1 , ir } } , { key : "appendItem" , value : function appendItem ( er ) { return this . _removeFromOtherLists ( er ) , this . _xforms . push ( er ) , this . numberOfItems ++ , this . _list . _update ( ) , er } } ] )
2020-09-04 20:34:30 +00:00
/ * * @ l i c e n s e
2020-09-08 23:35:47 +00:00
*
* jsPDF - PDF Document creation from JavaScript
2020-09-09 22:54:17 +00:00
* Version 2.1 . 1 Built on 2020 - 09 - 07 T12 : 58 : 19.950 Z
2020-09-08 23:35:47 +00:00
* CommitID 00000000
*
* Copyright ( c ) 2010 - 2020 James Hall < james @ parall . ax > , https : //github.com/MrRio/jsPDF
* 2015 - 2020 yWorks GmbH , http : //www.yworks.com
* 2015 - 2020 Lukas Holländer < lukas . hollaender @ yworks . com > , https : //github.com/HackbrettXXX
* 2016 - 2018 Aras Abbasi < aras . abbasi @ gmail . com >
* 2010 Aaron Spike , https : //github.com/acspike
* 2012 Willow Systems Corporation , willow - systems . com
* 2012 Pablo Hess , https : //github.com/pablohess
* 2012 Florian Jenett , https : //github.com/fjenett
* 2013 Warren Weckesser , https : //github.com/warrenweckesser
* 2013 Youssef Beddad , https : //github.com/lifof
* 2013 Lee Driscoll , https : //github.com/lsdriscoll
* 2013 Stefan Slonevskiy , https : //github.com/stefslon
* 2013 Jeremy Morel , https : //github.com/jmorel
* 2013 Christoph Hartmann , https : //github.com/chris-rock
* 2014 Juan Pablo Gaviria , https : //github.com/juanpgaviria
* 2014 James Makes , https : //github.com/dollaruw
* 2014 Diego Casorran , https : //github.com/diegocr
* 2014 Steven Spungin , https : //github.com/Flamenco
* 2014 Kenneth Glassey , https : //github.com/Gavvers
*
* Permission is hereby granted , free of charge , to any person obtaining
* a copy of this software and associated documentation files ( the
* "Software" ) , to deal in the Software without restriction , including
* without limitation the rights to use , copy , modify , merge , publish ,
* distribute , sublicense , and / or sell copies of the Software , and to
* permit persons to whom the Software is furnished to do so , subject to
* the following conditions :
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software .
*
* THE SOFTWARE IS PROVIDED "AS IS" , WITHOUT WARRANTY OF ANY KIND ,
* EXPRESS OR IMPLIED , INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY , FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT . IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM , DAMAGES OR OTHER LIABILITY , WHETHER IN AN ACTION
* OF CONTRACT , TORT OR OTHERWISE , ARISING FROM , OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE .
*
* Contributor ( s ) :
* siefkenj , ahwolf , rickygu , Midnith , saintclair , eaparango ,
* kim3er , mfo , alnorth , Flamenco
* /
2020-09-13 21:56:45 +00:00
var af = function ( ) { return "undefined" != typeof window ? window : void 0 !== qg ? qg : "undefined" != typeof self ? self : this } ( ) ; function e ( ) { af . console && "function" == typeof af . console . log && af . console . log . apply ( af . console , arguments ) } var of = { log : e , warn : function warn ( er ) { af . console && ( "function" == typeof af . console . warn ? af . console . warn . apply ( af . console , arguments ) : e . call ( null , arguments ) ) } , error : function error ( er ) { af . console && ( "function" == typeof af . console . error ? af . console . error . apply ( af . console , arguments ) : e ( er ) ) } } ;
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* FileSaver . js
* A saveAs ( ) FileSaver implementation .
*
* By Eli Grey , http : //eligrey.com
*
* License : https : //github.com/eligrey/FileSaver.js/blob/master/LICENSE.md (MIT)
* source : http : //purl.eligrey.com/github/FileSaver.js
2020-09-13 21:56:45 +00:00
* /function r(er,tr,rr){var nr=new XMLHttpRequest;nr.open("GET",er),nr.responseType="blob",nr.onload=function(){cf(nr.response,tr,rr)},nr.onerror=function(){of.error("could not download file")},nr.send()}function i(er){var tr=new XMLHttpRequest;tr.open("HEAD",er,!1);try{tr.send()}catch(er){}return tr.status>=200&&tr.status<=299}function a(er){try{er.dispatchEvent(new MouseEvent("click"))}catch(rr){var tr=document.createEvent("MouseEvents");tr.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),er.dispatchEvent(tr)}}var sf,lf,cf=af.saveAs||("object"!=("undefined"==typeof window?"undefined":_typeof(window))||window!==af?function(){}:"download"in HTMLAnchorElement.prototype?function(er,tr,rr){var nr=af.URL||af.webkitURL,ar=document.createElement("a");tr=tr||er.name||"download",ar.download=tr,ar.rel="noopener","string"==typeof er?(ar.href=er,ar.origin!==location.origin?i(ar.href)?r(er,tr,rr):a(ar,ar.target="_blank"):a(ar)):(ar.href=nr.createObjectURL(er),setTimeout((function(){nr.revokeObjectURL(ar.href)}),4e4),setTimeout((function(){a(ar)}),0))}:"msSaveOrOpenBlob"in navigator?function(er,tr,rr){if(tr=tr||er.name||"download","string"==typeof er)if(i(er))r(er,tr,rr);else{var nr=document.createElement("a");nr.href=er,nr.target="_blank",setTimeout((function(){a(nr)}))}else navigator.msSaveOrOpenBlob(function(er,tr){return void 0===tr?tr={autoBom:!1}:"object"!=_typeof(tr)&&(of.warn("Deprecated: Expected third argument to be a object"),tr={autoBom:!tr}),tr.autoBom&&/ ^ \ s * ( ? : text \ / \ S * | application \ / xml | \ S * \ / \ S * \ + xml ) \ s * ; . * charset \ s *= \ s * utf - 8 / i . test ( er . type ) ? new Blob ( [ String . fromCharCode ( 65279 ) , er ] , { type : er . type } ) : er } ( er , rr ) , tr ) } : function ( er , tr , rr , nr ) { if ( ( nr = nr || open ( "" , "_blank" ) ) && ( nr . document . title = nr . document . body . innerText = "downloading..." ) , "string" == typeof er ) return r ( er , tr , rr ) ; var ar = "application/octet-stream" === er . type , ir = /constructor/i . test ( af . HTMLElement ) || af . safari , or = /CriOS\/[\d]+/ . test ( navigator . userAgent ) ; if ( ( or || ar && ir ) && "object" == ( "undefined" == typeof FileReader ? "undefined" : _typeof ( FileReader ) ) ) { var sr = new FileReader ; sr . onloadend = function ( ) { var er = sr . result ; er = or ? er : er . replace ( /^data:[^;]*;/ , "data:attachment/file;" ) , nr ? nr . location . href = er : location = er , nr = null } , sr . readAsDataURL ( er ) } else { var lr = af . URL || af . webkitURL , cr = lr . createObjectURL ( er ) ; nr ? nr . location = cr : location . href = cr , nr = null , setTimeout ( ( function ( ) { lr . revokeObjectURL ( cr ) } ) , 4e4 ) } } ) ;
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* A class to parse color values
* @ author Stoyan Stefanov < sstoo @ gmail . com >
* { @ link http : //www.phpied.com/rgb-color-parser-in-javascript/}
* @ license Use it if you like it
2020-09-13 21:56:45 +00:00
* /function c(er){var tr;er=er||"",this.ok=!1,"#"==er.charAt(0)&&(er=er.substr(1,6)),er={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"}[er=(er=er.replace(/ /g,"")).toLowerCase()]||er;for(var rr=[{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function process(er){return[parseInt(er[1]),parseInt(er[2]),parseInt(er[3])]}},{re:/ ^ ( \ w { 2 } ) ( \ w { 2 } ) ( \ w { 2 } ) $ / , example : [ "#00ff00" , "336699" ] , process : function process ( er ) { return [ parseInt ( er [ 1 ] , 16 ) , parseInt ( er [ 2 ] , 16 ) , parseInt ( er [ 3 ] , 16 ) ] } } , { re : /^(\w{1})(\w{1})(\w{1})$/ , example : [ "#fb0" , "f0f" ] , process : function process ( er ) { return [ parseInt ( er [ 1 ] + er [ 1 ] , 16 ) , parseInt ( er [ 2 ] + er [ 2 ] , 16 ) , parseInt ( er [ 3 ] + er [ 3 ] , 16 ) ] } } ] , nr = 0 ; nr < rr . length ; nr ++ ) { var ar = rr [ nr ] . re , ir = rr [ nr ] . process , or = ar . exec ( er ) ; or && ( tr = ir ( or ) , this . r = tr [ 0 ] , this . g = tr [ 1 ] , this . b = tr [ 2 ] , this . ok = ! 0 ) } this . r = this . r < 0 || isNaN ( this . r ) ? 0 : this . r > 255 ? 255 : this . r , this . g = this . g < 0 || isNaN ( this . g ) ? 0 : this . g > 255 ? 255 : this . g , this . b = this . b < 0 || isNaN ( this . b ) ? 0 : this . b > 255 ? 255 : this . b , this . toRGB = function ( ) { return "rgb(" + this . r + ", " + this . g + ", " + this . b + ")" } , this . toHex = function ( ) { var er = this . r . toString ( 16 ) , tr = this . g . toString ( 16 ) , rr = this . b . toString ( 16 ) ; return 1 == er . length && ( er = "0" + er ) , 1 == tr . length && ( tr = "0" + tr ) , 1 == rr . length && ( rr = "0" + rr ) , "#" + er + tr + rr } } function h ( er ) { if ( "object" != _typeof ( er ) ) throw new Error ( "Invalid Context passed to initialize PubSub (jsPDF-module)" ) ; var tr = { } ; this . subscribe = function ( er , rr
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* Copyright ( c ) 2014 Steven Spungin ( TwelveTone LLC ) steven @ twelvetone . tv
*
* Licensed under the MIT License .
* http : //opensource.org/licenses/mit-license
* /
2020-09-13 21:56:45 +00:00
function ( er ) { var tr = function e ( er ) { if ( void 0 !== er && "" != er ) return ! 0 } ; g . API . events . push ( [ "addPage" , function ( er ) { this . internal . getPageInfo ( er . pageNumber ) . pageContext . annotations = [ ] } ] ) , er . events . push ( [ "putPage" , function ( er ) { for ( var rr , nr , ar , ir = this . internal . getCoordinateString , or = this . internal . getVerticalCoordinateString , sr = this . internal . getPageInfoByObjId ( er . objId ) , lr = er . pageContext . annotations , cr = ! 1 , ur = 0 ; ur < lr . length && ! cr ; ur ++ ) switch ( ( rr = lr [ ur ] ) . type ) { case "link" : ( tr ( rr . options . url ) || tr ( rr . options . pageNumber ) ) && ( cr = ! 0 ) ; break ; case "reference" : case "text" : case "freetext" : cr = ! 0 } if ( 0 != cr ) { this . internal . write ( "/Annots [" ) ; for ( var dr = 0 ; dr < lr . length ; dr ++ ) switch ( ( rr = lr [ dr ] ) . type ) { case "reference" : this . internal . write ( " " + rr . object . objId + " 0 R " ) ; break ; case "text" : var hr = this . internal . newAdditionalObject ( ) , Ar = this . internal . newAdditionalObject ( ) , pr = rr . title || "Note" ; ar = "<</Type /Annot /Subtype /Text " + ( nr = "/Rect [" + ir ( rr . bounds . x ) + " " + or ( rr . bounds . y + rr . bounds . h ) + " " + ir ( rr . bounds . x + rr . bounds . w ) + " " + or ( rr . bounds . y ) + "] " ) + "/Contents (" + rr . contents + ")" , ar += " /Popup " + Ar . objId + " 0 R" , ar += " /P " + sr . objId + " 0 R" , ar += " /T (" + pr + ") >>" , hr . content = ar ; var gr = hr . objId + " 0 R" ; ar = "<</Type /Annot /Subtype /Popup " + ( nr = "/Rect [" + ir ( rr . bounds . x + 30 ) + " " + or ( rr . bounds . y + rr . bounds . h ) + " " + ir ( rr . bounds . x + rr . bounds . w + 30 ) + " " + or ( rr . bounds . y ) + "] " ) + " /Parent " + gr , rr . open && ( ar += " /Open true" ) , ar += " >>" , Ar . content = ar , this . internal . write ( hr . objId , "0 R" , Ar . objId , "0 R" ) ; break ; case "freetext" : nr = "/Rect [" + ir ( rr . bounds . x ) + " " + or ( rr . bounds . y ) + " " + ir ( rr . bounds . x + rr . bounds . w ) + " " + or ( rr . bounds . y + rr . bounds . h ) + "] " ; var fr = rr . color || "#000000" ; ar = "<</Type /Annot /Subtype /FreeText " + nr + "/Contents (" + rr . contents + ")" , ar += " /DS(font: Helvetica,sans-serif 12.0pt; text-align:left; color:#" + fr + ")" , ar += " /Border [0 0 0]" , ar += " >>" , this . internal . write ( ar ) ; break ; case "link" : if ( rr . options . name ) { var mr = this . annotations . _nameMap [ rr . options . name ] ; rr . options . pageNumber = mr . page , rr . options . top = mr . y } else rr . options . top || ( rr . options . top = 0 ) ; if ( nr = "/Rect [" + ir ( rr . x ) + " " + or ( rr . y ) + " " + ir ( rr . x + rr . w ) + " " + or ( rr . y + rr . h ) + "] " , ar = "" , rr . options . url ) ar = "<</Type /Annot /Subtype /Link " + nr + "/Border [0 0 0] /A <</S /URI /URI (" + rr . options . url + ") >>" ; else if ( rr . options . pageNumber ) switch ( ar = "<</Type /Annot /Subtype /Link " + nr + "/Border [0 0 0] /Dest [" + this . internal . getPageInfo ( rr . options . pageNumber ) . objId + " 0 R" , rr . options . magFactor = rr . options . magFactor || "XYZ" , rr . options . magFactor ) { case "Fit" : ar += " /Fit]" ; break ; case "FitH" : ar += " /FitH " + rr . options . top + "]" ; break ; case "FitV" : rr . options . left = rr . options . left || 0 , ar += " /FitV " + rr . options . left + "]" ; break ; case "XYZ" : default : var _r = or ( rr . options . top ) ; rr . options . left = rr . options . left || 0 , void 0 === rr . options . zoom && ( rr . options . zoom = 0 ) , ar += " /XYZ " + rr . options . left + " " + _r + " " + rr . options . zoom + "]" } "" != ar && ( ar += " >>" , this . internal . write ( ar ) ) } this . internal . write ( "]" ) } } ] ) , er . createAnnotation = function ( er ) { var tr = this . internal . getCurrentPageInfo ( ) ; switch ( er . type ) { case "link" : this . link ( er . bounds . x , er . bounds . y , er . bounds . w , er . bounds . h , er ) ; break ; case "text" : case "freetext" : tr . pageContext . annotations . push ( er ) } } , er . link = function ( er , tr , rr , nr , ar ) { this . internal . getCurrentPageInfo ( ) . pageContext . annotations . push ( { x : er , y : tr , w : rr , h : nr , options : ar , type : "link" } ) } , er . textWithLink = function ( er , tr , rr , nr ) { var ar = this . getTextWidth ( er ) , ir = this . internal . getLineHeight ( ) / this . internal . scaleFactor ; return this . text ( er , tr , rr , nr ) , rr += . 2 * ir , this . link ( tr , rr - ir , ar , ir , nr ) , ar } , er . getTextWidth = function ( er ) { var tr = this . internal . getFontSize ( ) ; return this . getStringUnitWidth ( er ) * tr / this . internal . scaleFactor } } ( g . API ) ,
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* Copyright ( c ) 2017 Aras Abbasi
*
* Licensed under the MIT License .
* http : //opensource.org/licenses/mit-license
* /
2020-09-13 21:56:45 +00:00
function ( er ) { var tr = { 1569 : [ 65152 ] , 1570 : [ 65153 , 65154 ] , 1571 : [ 65155 , 65156 ] , 1572 : [ 65157 , 65158 ] , 1573 : [ 65159 , 65160 ] , 1574 : [ 65161 , 65162 , 65163 , 65164 ] , 1575 : [ 65165 , 65166 ] , 1576 : [ 65167 , 65168 , 65169 , 65170 ] , 1577 : [ 65171 , 65172 ] , 1578 : [ 65173 , 65174 , 65175 , 65176 ] , 1579 : [ 65177 , 65178 , 65179 , 65180 ] , 1580 : [ 65181 , 65182 , 65183 , 65184 ] , 1581 : [ 65185 , 65186 , 65187 , 65188 ] , 1582 : [ 65189 , 65190 , 65191 , 65192 ] , 1583 : [ 65193 , 65194 ] , 1584 : [ 65195 , 65196 ] , 1585 : [ 65197 , 65198 ] , 1586 : [ 65199 , 65200 ] , 1587 : [ 65201 , 65202 , 65203 , 65204 ] , 1588 : [ 65205 , 65206 , 65207 , 65208 ] , 1589 : [ 65209 , 65210 , 65211 , 65212 ] , 1590 : [ 65213 , 65214 , 65215 , 65216 ] , 1591 : [ 65217 , 65218 , 65219 , 65220 ] , 1592 : [ 65221 , 65222 , 65223 , 65224 ] , 1593 : [ 65225 , 65226 , 65227 , 65228 ] , 1594 : [ 65229 , 65230 , 65231 , 65232 ] , 1601 : [ 65233 , 65234 , 65235 , 65236 ] , 1602 : [ 65237 , 65238 , 65239 , 65240 ] , 1603 : [ 65241 , 65242 , 65243 , 65244 ] , 1604 : [ 65245 , 65246 , 65247 , 65248 ] , 1605 : [ 65249 , 65250 , 65251 , 65252 ] , 1606 : [ 65253 , 65254 , 65255 , 65256 ] , 1607 : [ 65257 , 65258 , 65259 , 65260 ] , 1608 : [ 65261 , 65262 ] , 1609 : [ 65263 , 65264 , 64488 , 64489 ] , 1610 : [ 65265 , 65266 , 65267 , 65268 ] , 1649 : [ 64336 , 64337 ] , 1655 : [ 64477 ] , 1657 : [ 64358 , 64359 , 64360 , 64361 ] , 1658 : [ 64350 , 64351 , 64352 , 64353 ] , 1659 : [ 64338 , 64339 , 64340 , 64341 ] , 1662 : [ 64342 , 64343 , 64344 , 64345 ] , 1663 : [ 64354 , 64355 , 64356 , 64357 ] , 1664 : [ 64346 , 64347 , 64348 , 64349 ] , 1667 : [ 64374 , 64375 , 64376 , 64377 ] , 1668 : [ 64370 , 64371 , 64372 , 64373 ] , 1670 : [ 64378 , 64379 , 64380 , 64381 ] , 1671 : [ 64382 , 64383 , 64384 , 64385 ] , 1672 : [ 64392 , 64393 ] , 1676 : [ 64388 , 64389 ] , 1677 : [ 64386 , 64387 ] , 1678 : [ 64390 , 64391 ] , 1681 : [ 64396 , 64397 ] , 1688 : [ 64394 , 64395 ] , 1700 : [ 64362 , 64363 , 64364 , 64365 ] , 1702 : [ 64366 , 64367 , 64368 , 64369 ] , 1705 : [ 64398 , 64399 , 64400 , 64401 ] , 1709 : [ 64467 , 64468 , 64469 , 64470 ] , 1711 : [ 64402 , 64403 , 64404 , 64405 ] , 1713 : [ 64410 , 64411 , 64412 , 64413 ] , 1715 : [ 64406 , 64407 , 64408 , 64409 ] , 1722 : [ 64414 , 64415 ] , 1723 : [ 64416 , 64417 , 64418 , 64419 ] , 1726 : [ 64426 , 64427 , 64428 , 64429 ] , 1728 : [ 64420 , 64421 ] , 1729 : [ 64422 , 64423 , 64424 , 64425 ] , 1733 : [ 64480 , 64481 ] , 1734 : [ 64473 , 64474 ] , 1735 : [ 64471 , 64472 ] , 1736 : [ 64475 , 64476 ] , 1737 : [ 64482 , 64483 ] , 1739 : [ 64478 , 64479 ] , 1740 : [ 64508 , 64509 , 64510 , 64511 ] , 1744 : [ 64484 , 64485 , 64486 , 64487 ] , 1746 : [ 64430 , 64431 ] , 1747 : [ 64432 , 64433 ] } , rr = { 65247 : { 65154 : 65269 , 65156 : 65271 , 65160 : 65273 , 65166 : 65275 } , 65248 : { 65154 : 65270 , 65156 : 65272 , 65160 : 65274 , 65166 : 65276 } , 65165 : { 65247 : { 65248 : { 65258 : 65010 } } } , 1617 : { 1612 : 64606 , 1613 : 64607 , 1614 : 64608 , 1615 : 64609 , 1616 : 64610 } } , nr = { 1612 : 64606 , 1613 : 64607 , 1614 : 64608 , 1615 : 64609 , 1616 : 64610 } , ar = [ 1570 , 1571 , 1573 , 1575 ] ; er . _ _arabicParser _ _ = { } ; var ir = er . _ _arabicParser _ _ . isInArabicSubstitutionA = function ( er ) { return void 0 !== tr [ er . charCodeAt ( 0 ) ] } , or = er . _ _arabicParser _ _ . isArabicLetter = function ( er ) { return "string" == typeof er && /^[\u0600-\u06FF\u0750-\u077F\u08A0-\u08FF\uFB50-\uFDFF\uFE70-\uFEFF]+$/ . test ( er ) } , sr = er . _ _arabicParser _ _ . isArabicEndLetter = function ( er ) { return or ( er ) && ir ( er ) && tr [ er . charCodeAt ( 0 ) ] . length <= 2 } , lr = er . _ _arabicParser _ _ . isArabicAlfLetter = function ( er ) { return or ( er ) && ar . indexOf ( er . charCodeAt ( 0 ) ) >= 0 } ; er . _ _arabicParser _ _ . arabicLetterHasIsolatedForm = function ( er ) { return or ( er ) && ir ( er ) && tr [ er . charCodeAt ( 0 ) ] . length >= 1 } ; var cr = er . _ _arabicParser _ _ . arabicLetterHasFinalForm = function ( er ) { return or ( er ) && ir ( er ) && tr [ er . charCodeAt ( 0 ) ] . length >= 2 } ; er . _ _arabicParser _ _ . arabicLetterHasInitialForm = function ( er ) { return or ( er ) && ir ( er ) && tr [ er . charCodeAt ( 0 ) ] . length >= 3 } ; var ur = er . _ _arabicParser _ _ . arabicLetterHasMedialForm = function ( er ) { return or ( er ) && ir ( er ) && 4 == tr [ er . charCodeAt ( 0 ) ] . length } , dr = er . _ _arabicParser _ _ . resolveLigatures = function ( er ) { var tr = 0 , nr = rr , ar = "" , ir = 0 ; for ( tr = 0 ; tr < er . length ; tr += 1 ) void 0 !== nr [ er . charCodeAt ( tr ) ] ? ( ir ++ , "number" == typeof ( nr = nr [ er . charCodeAt ( tr ) ] ) && ( ar += String . fromCharCode ( nr ) , nr = rr , ir = 0 ) , tr === er . length - 1 && ( nr = rr , ar += er . charAt ( tr - ( ir - 1 ) ) , tr -= ir - 1 , ir = 0 ) ) : ( nr = rr , ar += er . charAt ( tr - ir ) , tr -= ir , ir = 0 ) ; return ar } ; er . _ _arabicParser _ _ . isArabicDiacritic = function ( er ) { return void 0 !== er && void 0 !== nr [ er . charCodeAt ( 0 ) ] } ; var hr = er . _ _arabicParser _ _ . getCorrectForm = function ( er , tr , rr ) { return or ( er ) ? ! 1 === ir ( er ) ? - 1 : ! cr ( er ) || ! or ( tr ) && ! or ( rr ) || ! or ( rr ) && sr ( tr ) || sr ( er ) && ! or ( tr ) || sr ( er ) && lr ( tr ) || sr ( er ) && sr ( tr ) ? 0 : ur ( er ) && or ( tr ) && ! sr ( tr ) && or ( rr ) && cr ( rr ) ? 3 : sr ( er ) || ! or ( rr ) ? 1 : 2 : - 1 } , Ar = function d ( er ) { var rr = 0 , nr = 0 , ar = 0 , ir = "" , sr = "" , lr = "" , cr = ( er = er || "" ) . split ( "\\s+" ) , ur = [ ] ; for ( rr = 0 ; rr < cr . length ; rr += 1 ) { fo
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* Copyright ( c ) 2014 Steven Spungin ( TwelveTone LLC ) steven @ twelvetone . tv
*
* Licensed under the MIT License .
* http : //opensource.org/licenses/mit-license
* /
2020-09-04 20:34:30 +00:00
function ( er ) { var tr = function e ( ) { var er = void 0 ; Object . defineProperty ( this , "pdf" , { get : function get ( ) { return er } , set : function set ( tr ) { er = tr } } ) ; var e = 150 ; Object . defineProperty ( this , "width" , { get : function get ( ) { return e } , set : function set ( er ) { e = isNaN ( er ) || ! 1 === Number . isInteger ( er ) || er < 0 ? 150 : er , this . getContext ( "2d" ) . pageWrapXEnabled && ( this . getContext ( "2d" ) . pageWrapX = e + 1 ) } } ) ; var tr = 300 ; Object . defineProperty ( this , "height" , { get : function get ( ) { return tr } , set : function set ( er ) { tr = isNaN ( er ) || ! 1 === Number . isInteger ( er ) || er < 0 ? 300 : er , this . getContext ( "2d" ) . pageWrapYEnabled && ( this . getContext ( "2d" ) . pageWrapY = tr + 1 ) } } ) ; var rr = [ ] ; Object . defineProperty ( this , "childNodes" , { get : function get ( ) { return rr } , set : function set ( er ) { rr = er } } ) ; var nr = { } ; Object . defineProperty ( this , "style" , { get : function get ( ) { return nr } , set : function set ( er ) { nr = er } } ) , Object . defineProperty ( this , "parentNode" , { } ) } ; tr . prototype . getContext = function ( er , tr ) { var rr ; if ( "2d" !== ( er = er || "2d" ) ) return null ; for ( rr in tr ) this . pdf . context2d . hasOwnProperty ( rr ) && ( this . pdf . context2d [ rr ] = tr [ rr ] ) ; return this . pdf . context2d . _canvas = this , this . pdf . context2d } , tr . prototype . toDataURL = function ( ) { throw new Error ( "toDataURL is not implemented." ) } , er . events . push ( [ "initialized" , function ( ) { this . canvas = new tr , this . canvas . pdf = this } ] ) } ( g . API ) ,
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* === === === === === === === === === === === === === === === === === === === === === === ==
* Copyright ( c ) 2013 Youssef Beddad , youssef . beddad @ gmail . com
* 2013 Eduardo Menezes de Morais , eduardo . morais @ usp . br
* 2013 Lee Driscoll , https : //github.com/lsdriscoll
* 2014 Juan Pablo Gaviria , https : //github.com/juanpgaviria
* 2014 James Hall , james @ parall . ax
* 2014 Diego Casorran , https : //github.com/diegocr
*
* Permission is hereby granted , free of charge , to any person obtaining
* a copy of this software and associated documentation files ( the
* "Software" ) , to deal in the Software without restriction , including
* without limitation the rights to use , copy , modify , merge , publish ,
* distribute , sublicense , and / or sell copies of the Software , and to
* permit persons to whom the Software is furnished to do so , subject to
* the following conditions :
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software .
*
* THE SOFTWARE IS PROVIDED "AS IS" , WITHOUT WARRANTY OF ANY KIND ,
* EXPRESS OR IMPLIED , INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY , FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT . IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM , DAMAGES OR OTHER LIABILITY , WHETHER IN AN ACTION
* OF CONTRACT , TORT OR OTHERWISE , ARISING FROM , OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE .
* === === === === === === === === === === === === === === === === === === === === === === ==
* /
2020-09-13 21:56:45 +00:00
function ( er ) { var tr = { left : 0 , top : 0 , bottom : 0 , right : 0 } , rr = ! 1 , nr = function r ( ) { void 0 === this . internal . _ _cell _ _ && ( this . internal . _ _cell _ _ = { } , this . internal . _ _cell _ _ . padding = 3 , this . internal . _ _cell _ _ . headerFunction = void 0 , this . internal . _ _cell _ _ . margins = Object . assign ( { } , tr ) , this . internal . _ _cell _ _ . margins . width = this . getPageWidth ( ) , ar . call ( this ) ) } , ar = function i ( ) { this . internal . _ _cell _ _ . lastCell = new ir , this . internal . _ _cell _ _ . pages = 1 } , ir = function a ( ) { var er = arguments [ 0 ] ; Object . defineProperty ( this , "x" , { enumerable : ! 0 , get : function get ( ) { return er } , set : function set ( tr ) { er = tr } } ) ; var tr = arguments [ 1 ] ; Object . defineProperty ( this , "y" , { enumerable : ! 0 , get : function get ( ) { return tr } , set : function set ( er ) { tr = er } } ) ; var rr = arguments [ 2 ] ; Object . defineProperty ( this , "width" , { enumerable : ! 0 , get : function get ( ) { return rr } , set : function set ( er ) { rr = er } } ) ; var nr = arguments [ 3 ] ; Object . defineProperty ( this , "height" , { enumerable : ! 0 , get : function get ( ) { return nr } , set : function set ( er ) { nr = er } } ) ; var ar = arguments [ 4 ] ; Object . defineProperty ( this , "text" , { enumerable : ! 0 , get : function get ( ) { return ar } , set : function set ( er ) { ar = er } } ) ; var a = arguments [ 5 ] ; Object . defineProperty ( this , "lineNumber" , { enumerable : ! 0 , get : function get ( ) { return a } , set : function set ( er ) { a = er } } ) ; var ir = arguments [ 6 ] ; return Object . defineProperty ( this , "align" , { enumerable : ! 0 , get : function get ( ) { return ir } , set : function set ( er ) { ir = er } } ) , this } ; ir . prototype . clone = function ( ) { return new ir ( this . x , this . y , this . width , this . height , this . text , this . lineNumber , this . align ) } , ir . prototype . toArray = function ( ) { return [ this . x , this . y , this . width , this . height , this . text , this . lineNumber , this . align ] } , er . setHeaderFunction = function ( er ) { return nr . call ( this ) , this . internal . _ _cell _ _ . headerFunction = "function" == typeof er ? er : void 0 , this } , er . getTextDimensions = function ( er , tr ) { nr . call ( this ) ; var rr = ( tr = tr || { } ) . fontSize || this . getFontSize ( ) , ar = tr . font || this . getFont ( ) , ir = tr . scaleFactor || this . internal . scaleFactor , or = 0 , sr = 0 , lr = 0 ; if ( ! Array . isArray ( er ) && "string" != typeof er ) { if ( "number" != typeof er ) throw new Error ( "getTextDimensions expects text-parameter to be of type String or type Number or an Array of Strings." ) ; er = String ( er ) } var cr = tr . maxWidth ; cr > 0 ? "string" == typeof er ? er = this . splitTextToSize ( er , cr ) : "[object Array]" === Object . prototype . toString . call ( er ) && ( er = this . splitTextToSize ( er . join ( " " ) , cr ) ) : er = Array . isArray ( er ) ? er : [ er ] ; for ( var ur = 0 ; ur < er . length ; ur ++ ) or < ( lr = this . getStringUnitWidth ( er [ ur ] , { font : ar } ) * rr ) && ( or = lr ) ; return 0 !== or && ( sr = er . length ) , { w : or /= ir , h : Math . max ( ( sr * rr * this . getLineHeightFactor ( ) - rr * ( this . getLineHeightFactor ( ) - 1 ) ) / ir , 0 ) } } , er . cellAddPage = function ( ) { nr . call ( this ) , this . addPage ( ) ; var er = this . internal . _ _cell _ _ . margins || tr ; return this . internal . _ _cell _ _ . lastCell = new ir ( er . left , er . top , void 0 , void 0 ) , this . internal . _ _cell _ _ . pages += 1 , this } ; var or = er . cell = function ( ) { var er ; er = arguments [ 0 ] instanceof ir ? arguments [ 0 ] : new ir ( arguments [ 0 ] , arguments [ 1 ] , arguments [ 2 ] , arguments [ 3 ] , arguments [ 4 ] , arguments [ 5 ] ) , nr . call ( this ) ; var ar = this . internal . _ _cell _ _ . lastCell , or = this . internal . _ _cell _ _ . padding , sr = this . internal . _ _cell _ _ . margins || tr , lr = this . internal . _ _cell _ _ . tableHeaderRow , cr = this . internal . _ _cell _ _ . printHeaders ; return void 0 !== ar . lineNumber && ( ar . lineNumber === er . lineNumber ? ( er . x = ( ar . x || 0 ) + ( ar . width || 0 ) , er . y = ar . y || 0 ) : ar . y + ar . height + er . height + sr . bottom > this . getPageHeight ( ) ? ( this . cellAddPage ( ) , er . y = sr . top , cr && lr && ( this . printHeaderRow ( er . lineNumber , ! 0 ) , er . y += lr [ 0 ] . height ) ) : er . y = ar . y + ar . height || er . y ) , void 0 !== er . text [ 0 ] && ( this . rect ( er . x , er . y , er . width , er . height , ! 0 === rr ? "FD" : void 0 ) , "right" === er . align ? this . text ( er . text , er . x + er . width - or , er . y + or , { align : "right" , baseline : "top" } ) : "center" === er . align ? this . text ( er . text , er . x + er . width / 2 , er . y + or , { align : "center" , baseline : "top" , maxWidth : er . width - or - or } ) : this . text ( er . text , er . x + or , er . y + or , { align : "left" , baseline : "top" , maxWidth : er . width - or - or } ) ) , this . internal . _ _cell _ _ . lastCell = er , this } ; er . table = function ( er , rr , lr , cr , ur ) { if ( nr . call ( this ) , ! lr ) throw new Error ( "No data for PDF table." ) ; var dr , hr , Ar , pr , gr = [ ] , fr = [ ] , mr = [ ] , _r = { } , vr = { } , yr = [ ] , br = [ ] , wr = ( ur = ur || { } ) . autoSize || ! 1 , kr = ! 1 !== ur . printHeaders , xr = ur . css && void 0 !== ur . css [ "font-size" ] ? 16 * ur . css [ "font-size" ] :
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
Copyright ( c ) 2013 Gildas Lormeau . All rights reserved .
2020-08-28 22:07:07 +00:00
2020-09-08 23:35:47 +00:00
Redistribution and use in source and binary forms , with or without
modification , are permitted provided that the following conditions are met :
2020-08-28 22:07:07 +00:00
2020-09-08 23:35:47 +00:00
1. Redistributions of source code must retain the above copyright notice ,
this list of conditions and the following disclaimer .
2020-08-28 22:07:07 +00:00
2020-09-08 23:35:47 +00:00
2. Redistributions in binary form must reproduce the above copyright
notice , this list of conditions and the following disclaimer in
the documentation and / or other materials provided with the distribution .
2020-08-28 22:07:07 +00:00
2020-09-08 23:35:47 +00:00
3. The names of the authors may not be used to endorse or promote products
derived from this software without specific prior written permission .
2020-08-28 22:07:07 +00:00
2020-09-08 23:35:47 +00:00
THIS SOFTWARE IS PROVIDED ` ` AS IS '' AND ANY EXPRESSED OR IMPLIED WARRANTIES ,
INCLUDING , BUT NOT LIMITED TO , THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED . IN NO EVENT SHALL JCRAFT ,
INC . OR ANY CONTRIBUTORS TO THIS SOFTWARE BE LIABLE FOR ANY DIRECT , INDIRECT ,
INCIDENTAL , SPECIAL , EXEMPLARY , OR CONSEQUENTIAL DAMAGES ( INCLUDING , BUT NOT
LIMITED TO , PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES ; LOSS OF USE , DATA ,
OR PROFITS ; OR BUSINESS INTERRUPTION ) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY , WHETHER IN CONTRACT , STRICT LIABILITY , OR TORT ( INCLUDING
NEGLIGENCE OR OTHERWISE ) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE ,
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE .
* /
2020-09-13 21:56:45 +00:00
var am = [ 0 , 1 , 2 , 3 , 4 , 4 , 5 , 5 , 6 , 6 , 6 , 6 , 7 , 7 , 7 , 7 , 8 , 8 , 8 , 8 , 8 , 8 , 8 , 8 , 9 , 9 , 9 , 9 , 9 , 9 , 9 , 9 , 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10 , 11 , 11 , 11 , 11 , 11 , 11 , 11 , 11 , 11 , 11 , 11 , 11 , 11 , 11 , 11 , 11 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 13 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15 , 0 , 0 , 16 , 17 , 18 , 18 , 19 , 19 , 20 , 20 , 20 , 20 , 21 , 21 , 21 , 21 , 22 , 22 , 22 , 22 , 22 , 22 , 22 , 22 , 23 , 23 , 23 , 23 , 23 , 23 , 23 , 23 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 25 , 25 , 25 , 25 , 25 , 25 , 25 , 25 , 25 , 25 , 25 , 25 , 25 , 25 , 25 , 25 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 26 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 27 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 , 29 ] ; function ft ( ) { var er = this ; function e ( er , tr ) { var rr = 0 ; do { rr |= 1 & er , er >>>= 1 , rr <<= 1 } while ( -- tr > 0 ) ; return rr >>> 1 } er . build _tree = function ( tr ) { var rr , nr , ar , ir = er . dyn _tree , or = er . stat _desc . static _tree , sr = er . stat _desc . elems , lr = - 1 ; for ( tr . heap _len = 0 , tr . heap _max = 573 , rr = 0 ; rr < sr ; rr ++ ) 0 !== ir [ 2 * rr ] ? ( tr . heap [ ++ tr . heap _len ] = lr = rr , tr . depth [ rr ] = 0 ) : ir [ 2 * rr + 1 ] = 0 ; for ( ; tr . heap _len < 2 ; ) ir [ 2 * ( ar = tr . heap [ ++ tr . heap _len ] = lr < 2 ? ++ lr : 0 ) ] = 1 , tr . depth [ ar ] = 0 , tr . opt _len -- , or && ( tr . static _len -= or [ 2 * ar + 1 ] ) ; for ( er . max _code = lr , rr = Math . floor ( tr . heap _len / 2 ) ; rr >= 1 ; rr -- ) tr . pqdownheap ( ir , rr ) ; ar = sr ; do { rr = tr . heap [ 1 ] , tr . heap [ 1 ] = tr . heap [ tr . heap _len -- ] , tr . pqdownheap ( ir , 1 ) , nr = tr . heap [ 1 ] , tr . heap [ -- tr . heap _max ] = rr , tr . heap [ -- tr . heap _max ] = nr , ir [ 2 * ar ] = ir [ 2 * rr ] + ir [ 2 * nr ] , tr . depth [ ar ] = Math . max ( tr . depth [ rr ] , tr . depth [ nr ] ) + 1 , ir [ 2 * rr + 1 ] = ir [ 2 * nr + 1 ] = ar , tr . heap [ 1 ] = ar ++ , tr . pqdownheap ( ir , 1 ) } while ( tr . heap _len >= 2 ) ; tr . heap [ -- tr . heap _max ] = tr . heap [ 1 ] , function ( tr ) { var rr , nr , ar , ir , or , sr , lr = er . dyn _tree , cr = er . stat _desc . static _tree , ur = er . stat _desc . extra _bits , dr = er . stat _desc . extra _base , hr = er . stat _desc . max _length , Ar = 0 ; for ( ir = 0 ; ir <= 15 ; ir ++ ) tr . bl _count [ ir ] = 0 ; for ( lr [ 2 * tr . heap [ tr . heap _max ] + 1 ] = 0 , rr = tr . heap _max + 1 ; rr < 573 ; rr ++ ) ( ir = lr [ 2 * lr [ 2 * ( nr = tr . heap [ rr ] ) + 1 ] + 1 ] + 1 ) > hr && ( ir = hr , Ar ++ ) , lr [ 2 * nr + 1 ] = ir , nr > er . max _code || ( tr . bl _count [ ir ] ++ , or = 0 , nr >= dr && ( or = ur [ nr - dr ] ) , sr = lr [ 2 * nr ] , tr . opt _len += sr * ( ir + or ) , cr && ( tr . static _len += sr * ( cr [ 2 * nr + 1 ] + or ) ) ) ; if ( 0 !== Ar ) { do { for ( ir = hr - 1 ; 0 === tr . bl _count [ ir ] ; ) ir -- ; tr . bl _count [ ir ] -- , tr . bl _count [ ir + 1 ] += 2 , tr . bl _count [ hr ] -- , Ar -= 2 } while ( Ar > 0 ) ; for ( ir = hr ; 0 !== ir ; ir -- ) for ( nr = tr . bl _count [ ir ] ; 0 !== nr ; ) ( ar = tr . heap [ -- rr ] ) > er . max _code || ( lr [ 2 * ar + 1 ] !== ir && ( tr . opt _len += ( ir - lr [ 2 * ar + 1 ] ) * lr [ 2 * ar ] , lr [ 2 * ar + 1 ] = ir ) , nr -- ) } } ( tr ) , function ( er , tr , rr ) { var nr , ar , ir , or = [ ] , sr = 0 ; for ( nr = 1 ; nr <= 15 ; nr ++ ) or [ nr ] = sr = sr + rr [ nr - 1 ] << 1 ; for ( ar = 0 ; ar <= tr ; ar ++ ) 0 !== ( ir = er [ 2 * ar + 1 ] ) && ( er [ 2 * ar ] = e ( or [ ir ] ++ , ir ) ) } ( ir , er . max _code , tr . bl _count ) } } function dt ( er , tr , rr , nr , ar ) { this . static _tree = er , this . extra _bits = tr , this . extra _base = rr , this . elems = nr , this . max _length = ar } function pt ( er , tr , rr , nr , ar ) { this . good _length = er , this . max _lazy = tr , this . nice _length = rr , this . max _chain = nr , this . func = ar } ft . _length _code = [ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 8 , 9 , 9 , 10 , 10 , 11 , 11 , 12 , 12 , 12 , 12 , 13 , 13 , 13 , 13 , 14 , 14 , 14 , 14 , 15 , 15 , 15 , 15 , 16 , 16 , 16 , 16 , 16 , 16 , 16 , 16 , 17 , 17 , 17 , 17 , 17 , 17 , 17 , 17 , 18 , 18 , 18 , 18 , 18 , 18 , 18 , 18 , 19 , 19 , 19 , 19 , 19 , 19 , 19 , 19 , 20 , 20 , 20 , 20 , 20 , 20 , 20 , 20 , 20 , 20 , 20 , 20 , 20 , 20 , 20 , 20 , 21 , 21 , 21 , 21 , 21 , 21 , 21 , 21 , 21 , 21 , 21 , 21 , 21 , 21 , 21 , 21 , 22 , 22 , 22 , 22 , 22 , 22 , 22 , 22 , 22 , 22 , 22 , 22 , 22 , 22 , 22 , 22 , 23 , 23 , 23 , 23 , 23 , 23 , 23 , 23 , 23 , 23 , 23 , 23 , 23 , 23 , 23 , 23 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 25 , 25 , 25 , 25 , 25 , 25 ,
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* jsPDF filters PlugIn
* Copyright ( c ) 2014 Aras Abbasi
*
* Licensed under the MIT License .
* http : //opensource.org/licenses/mit-license
* /Lt.prototype={deflateInit:function deflateInit(er,tr){return this.dstate=new Nt,tr||(tr=15),this.dstate.deflateInit(this,er,tr)},deflate:function deflate(er){return this.dstate?this.dstate.deflate(this,er):-2},deflateEnd:function deflateEnd(){if(!this.dstate)return-2;var er=this.dstate.deflateEnd();return this.dstate=null,er},deflateParams:function deflateParams(er,tr){return this.dstate?this.dstate.deflateParams(this,er,tr):-2},deflateSetDictionary:function deflateSetDictionary(er,tr){return this.dstate?this.dstate.deflateSetDictionary(this,er,tr):-2},read_buf:function read_buf(er,tr,rr){var nr=this.avail_in;return nr>rr&&(nr=rr),0===nr?0:(this.avail_in-=nr,er.set(this.next_in.subarray(this.next_in_index,this.next_in_index+nr),tr),this.next_in_index+=nr,this.total_in+=nr,nr)},flush_pending:function flush_pending(){var er=this.dstate.pending;er>this.avail_out&&(er=this.avail_out),0!==er&&(this.next_out.set(this.dstate.pending_buf.subarray(this.dstate.pending_out,this.dstate.pending_out+er),this.next_out_index),this.next_out_index+=er,this.dstate.pending_out+=er,this.total_out+=er,this.avail_out-=er,this.dstate.pending-=er,0===this.dstate.pending&&(this.dstate.pending_out=0))}},function(er){var tr=function e(er){var e,tr,rr,nr,ar,ir,or,sr,lr,cr;for(/ [ ^ \ x00 - \ xFF ] / . test ( er ) , tr = [ ] , rr = 0 , nr = ( er += e = "\0\0\0\0" . slice ( er . length % 4 || 4 ) ) . length ; nr > rr ; rr += 4 ) 0 !== ( ar = ( er . charCodeAt ( rr ) << 24 ) + ( er . charCodeAt ( rr + 1 ) << 16 ) + ( er . charCodeAt ( rr + 2 ) << 8 ) + er . charCodeAt ( rr + 3 ) ) ? ( ir = ( ar = ( ( ar = ( ( ar = ( ( ar = ( ar - ( cr = ar % 85 ) ) / 85 ) - ( lr = ar % 85 ) ) / 85 ) - ( sr = ar % 85 ) ) / 85 ) - ( or = ar % 85 ) ) / 85 ) % 85 , tr . push ( ir + 33 , or + 33 , sr + 33 , lr + 33 , cr + 33 ) ) : tr . push ( 122 ) ; return function ( er , tr ) { for ( var rr = tr ; rr > 0 ; rr -- ) er . pop ( ) } ( tr , e . length ) , String . fromCharCode . apply ( String , tr ) + "~>" } , rr = function n ( er ) { var tr , n , rr , nr , ar , ir = String , or = "length" , sr = 255 , lr = "charCodeAt" , cr = "slice" , ur = "replace" ; for ( er [ cr ] ( - 2 ) , er = er [ cr ] ( 0 , - 2 ) [ ur ] ( /\s/g , "" ) [ ur ] ( "z" , "!!!!!" ) , rr = [ ] , nr = 0 , ar = ( er += tr = "uuuuu" [ cr ] ( er [ or ] % 5 || 5 ) ) [ or ] ; ar > nr ; nr += 5 ) n = 52200625 * ( er [ lr ] ( nr ) - 33 ) + 614125 * ( er [ lr ] ( nr + 1 ) - 33 ) + 7225 * ( er [ lr ] ( nr + 2 ) - 33 ) + 85 * ( er [ lr ] ( nr + 3 ) - 33 ) + ( er [ lr ] ( nr + 4 ) - 33 ) , rr . push ( sr & n >> 24 , sr & n >> 16 , sr & n >> 8 , sr & n ) ; return function ( er , tr ) { for ( var rr = tr ; rr > 0 ; rr -- ) er . pop ( ) } ( rr , tr [ or ] ) , ir . fromCharCode . apply ( ir , rr ) } , nr = function r ( er ) { var tr = new RegExp ( /^([0-9A-Fa-f]{2})+$/ ) ; if ( - 1 !== ( er = er . replace ( /\s/g , "" ) ) . indexOf ( ">" ) && ( er = er . substr ( 0 , er . indexOf ( ">" ) ) ) , er . length % 2 && ( er += "0" ) , ! 1 === tr . test ( er ) ) return "" ; for ( var rr = "" , r = 0 ; r < er . length ; r += 2 ) rr += String . fromCharCode ( "0x" + ( er [ r ] + er [ r + 1 ] ) ) ; return rr } , ar = function i ( tr ) { for ( var rr , nr , i , ar , ir , or = [ ] , sr = tr . length ; sr -- ; ) or [ sr ] = tr . charCodeAt ( sr ) ; return rr = er . adler32cs . from ( tr ) , i = tr = ( nr = new xt ( 6 ) ) . append ( new Uint8Array ( or ) ) , ar = nr . flush ( ) , ( ir = new Uint8Array ( i . byteLength + ar . byteLength ) ) . set ( new Uint8Array ( i ) , 0 ) , ir . set ( new Uint8Array ( ar ) , i . byteLength ) , tr = ir , ( or = new Uint8Array ( tr . byteLength + 6 ) ) . set ( new Uint8Array ( [ 120 , 156 ] ) ) , or . set ( tr , 2 ) , or . set ( new Uint8Array ( [ 255 & rr , rr >> 8 & 255 , rr >> 16 & 255 , rr >> 24 & 255 ] ) , tr . byteLength + 2 ) , or . reduce ( ( function ( er , tr ) { return er + String . fromCharCode ( tr ) } ) , "" ) } ; er . processDataByFilters = function ( er , ir ) { var or = 0 , sr = er || "" , lr = [ ] ; for ( "string" == typeof ( ir = ir || [ ] ) && ( ir = [ ir ] ) , or = 0 ; or < ir . length ; or += 1 ) switch ( ir [ or ] ) { case "ASCII85Decode" : case "/ASCII85Decode" : sr = rr ( sr ) , lr . push ( "/ASCII85Encode" ) ; break ; case "ASCII85Encode" : case "/ASCII85Encode" : sr = tr ( sr ) , lr . push ( "/ASCII85Decode" ) ; break ; case "ASCIIHexDecode" : case "/ASCIIHexDecode" : sr = nr ( sr ) , lr . push ( "/ASCIIHexEncode" ) ; break ; case "ASCIIHexEncode" : case "/ASCIIHexEncode" : sr = sr . split ( "" ) . map ( ( function ( er ) { return ( "0" + er . charCodeAt ( ) . toString ( 16 ) ) . slice ( - 2 ) } ) ) . join ( "" ) + ">" , lr . push ( "/ASCIIHexDecode" ) ; break ; case "FlateEncode" : case "/FlateEncode" : sr = ar ( sr ) , lr . push ( "/FlateDecode" ) ; break ; default : throw new Error ( 'The filter: "' + ir [ or ] + '" is not implemented' ) } return { data : sr , reverseChain : lr . reverse ( ) . join ( " " ) } } } ( g . API ) ,
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* jsPDF fileloading PlugIn
* Copyright ( c ) 2018 Aras Abbasi ( aras . abbasi @ gmail . com )
*
* Licensed under the MIT License .
* http : //opensource.org/licenses/mit-license
* /
2020-09-04 20:34:30 +00:00
function ( er ) { er . loadFile = function ( er , tr , rr ) { return function ( er , tr , rr ) { tr = ! 1 !== tr , rr = "function" == typeof rr ? rr : function ( ) { } ; var nr = void 0 ; try { nr = function ( er , tr , rr ) { var nr = new XMLHttpRequest , ar = 0 , ir = function a ( er ) { var tr = er . length , rr = [ ] , nr = String . fromCharCode ; for ( ar = 0 ; ar < tr ; ar += 1 ) rr . push ( nr ( 255 & er . charCodeAt ( ar ) ) ) ; return rr . join ( "" ) } ; if ( nr . open ( "GET" , er , ! tr ) , nr . overrideMimeType ( "text/plain; charset=x-user-defined" ) , ! 1 === tr && ( nr . onload = function ( ) { 200 === nr . status ? rr ( ir ( this . responseText ) ) : rr ( void 0 ) } ) , nr . send ( null ) , tr && 200 === nr . status ) return ir ( nr . responseText ) } ( er , tr , rr ) } catch ( er ) { } return nr } ( er , tr , rr ) } , er . loadImageFile = er . loadFile } ( g . API ) ,
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* Copyright ( c ) 2018 Erik Koopmans
* Released under the MIT License .
*
* Licensed under the MIT License .
* http : //opensource.org/licenses/mit-license
* /
2020-09-13 21:56:45 +00:00
function ( er ) { function n ( ) { return ( af . html2canvas ? Promise . resolve ( af . html2canvas ) : Promise . resolve ( ) . then ( ( function ( ) { return Nx } ) ) ) . catch ( ( function ( er ) { return Promise . reject ( new Error ( "Could not load dompurify: " + er ) ) } ) ) . then ( ( function ( er ) { return er . default ? er . default : er } ) ) } function r ( ) { return ( af . DOMPurify ? Promise . resolve ( af . DOMPurify ) : Promise . resolve ( ) . then ( ( function ( ) { return Rx } ) ) ) . catch ( ( function ( er ) { return Promise . reject ( new Error ( "Could not load dompurify: " + er ) ) } ) ) . then ( ( function ( er ) { return er . default ? er . default : er } ) ) } var tr = function i ( er ) { var tr = _typeof ( er ) ; return "undefined" === tr ? "undefined" : "string" === tr || er instanceof String ? "string" : "number" === tr || er instanceof Number ? "number" : "function" === tr || er instanceof Function ? "function" : er && er . constructor === Array ? "array" : er && 1 === er . nodeType ? "element" : "object" === tr ? "object" : "unknown" } , rr = function a ( er , tr ) { var rr = document . createElement ( er ) ; for ( var nr in tr . className && ( rr . className = tr . className ) , tr . innerHTML && tr . dompurify && ( rr . innerHTML = tr . dompurify . sanitize ( tr . innerHTML ) ) , tr . style ) rr . style [ nr ] = tr . style [ nr ] ; return rr } , nr = function t ( er ) { var tr = Object . assign ( t . convert ( Promise . resolve ( ) ) , JSON . parse ( JSON . stringify ( t . template ) ) ) , rr = t . convert ( Promise . resolve ( ) , tr ) ; return ( rr = rr . setProgress ( 1 , t , 1 , [ t ] ) ) . set ( er ) } ; ( nr . prototype = Object . create ( Promise . prototype ) ) . constructor = nr , nr . convert = function ( er , tr ) { return er . _ _proto _ _ = tr || nr . prototype , er } , nr . template = { prop : { src : null , container : null , overlay : null , canvas : null , img : null , pdf : null , pageSize : null , callback : function callback ( ) { } } , progress : { val : 0 , state : null , n : 0 , stack : [ ] } , opt : { filename : "file.pdf" , margin : [ 0 , 0 , 0 , 0 ] , enableLinks : ! 0 , x : 0 , y : 0 , html2canvas : { } , jsPDF : { } , backgroundColor : "transparent" } } , nr . prototype . from = function ( er , nr ) { return this . then ( ( function ( ) { switch ( nr = nr || function ( er ) { switch ( tr ( er ) ) { case "string" : return "string" ; case "element" : return "canvas" === er . nodeName . toLowerCase ? "canvas" : "element" ; default : return "unknown" } } ( er ) ) { case "string" : return this . then ( r ) . then ( ( function ( tr ) { return this . set ( { src : rr ( "div" , { innerHTML : er , dompurify : tr } ) } ) } ) ) ; case "element" : return this . set ( { src : er } ) ; case "canvas" : return this . set ( { canvas : er } ) ; case "img" : return this . set ( { img : er } ) ; default : return this . error ( "Unknown source type." ) } } ) ) } , nr . prototype . to = function ( er ) { switch ( er ) { case "container" : return this . toContainer ( ) ; case "canvas" : return this . toCanvas ( ) ; case "img" : return this . toImg ( ) ; case "pdf" : return this . toPdf ( ) ; default : return this . error ( "Invalid target." ) } } , nr . prototype . toContainer = function ( ) { return this . thenList ( [ function ( ) { return this . prop . src || this . error ( "Cannot duplicate - no source HTML." ) } , function ( ) { return this . prop . pageSize || this . setPageSize ( ) } ] ) . then ( ( function ( ) { var er = { position : "relative" , display : "inline-block" , width : Math . max ( this . prop . src . clientWidth , this . prop . src . scrollWidth , this . prop . src . offsetWidth ) + "px" , left : 0 , right : 0 , top : 0 , margin : "auto" , backgroundColor : this . opt . backgroundColor } , tr = function o ( er , tr ) { for ( var rr = 3 === er . nodeType ? document . createTextNode ( er . nodeValue ) : er . cloneNode ( ! 1 ) , nr = er . firstChild ; nr ; nr = nr . nextSibling ) ! 0 !== tr && 1 === nr . nodeType && "SCRIPT" === nr . nodeName || rr . appendChild ( o ( nr , tr ) ) ; return 1 === er . nodeType && ( "CANVAS" === er . nodeName ? ( rr . width = er . width , rr . height = er . height , rr . getContext ( "2d" ) . drawImage ( er , 0 , 0 ) ) : "TEXTAREA" !== er . nodeName && "SELECT" !== er . nodeName || ( rr . value = er . value ) , rr . addEventListener ( "load" , ( function ( ) { rr . scrollTop = er . scrollTop , rr . scrollLeft = er . scrollLeft } ) , ! 0 ) ) , rr } ( this . prop . src , this . opt . html2canvas . javascriptEnabled ) ; "BODY" === tr . tagName && ( er . height = Math . max ( document . body . scrollHeight , document . body . offsetHeight , document . documentElement . clientHeight , document . documentElement . scrollHeight , document . documentElement . offsetHeight ) + "px" ) , this . prop . overlay = rr ( "div" , { className : "html2pdf__overlay" , style : { position : "fixed" , overflow : "hidden" , zIndex : 1e3 , left : "-100000px" , right : 0 , bottom : 0 , top : 0 } } ) , this . prop . container = rr ( "div" , { className : "html2pdf__container" , style : er } ) , this . prop . container . appendChild ( tr ) , this . prop . container . firstChild . appendChild ( rr ( "div" , { style : { clear : "both" , border : "0 none transparent" , margin : 0 , padding : 0 , height : 0 } } ) ) , this . prop . container . sty
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* Copyright ( c ) 2014 Steven Spungin ( TwelveTone LLC ) steven @ twelvetone . tv
*
* Licensed under the MIT License .
* http : //opensource.org/licenses/mit-license
* /
2020-09-04 20:34:30 +00:00
function ( er ) { var tr ; er . events . push ( [ "postPutResources" , function ( ) { var er = this , rr = /^(\d+) 0 obj$/ ; if ( this . outline . root . children . length > 0 ) for ( var nr = er . outline . render ( ) . split ( /\r\n/ ) , ar = 0 ; ar < nr . length ; ar ++ ) { var ir = nr [ ar ] , or = rr . exec ( ir ) ; if ( null != or ) { var sr = or [ 1 ] ; er . internal . newObjectDeferredBegin ( sr , ! 1 ) } er . internal . write ( ir ) } if ( this . outline . createNamedDestinations ) { var lr = this . internal . pages . length , cr = [ ] ; for ( ar = 0 ; ar < lr ; ar ++ ) { var ur = er . internal . newObject ( ) ; cr . push ( ur ) ; var dr = er . internal . getPageInfo ( ar + 1 ) ; er . internal . write ( "<< /D[" + dr . objId + " 0 R /XYZ null null null]>> endobj" ) } var hr = er . internal . newObject ( ) ; for ( er . internal . write ( "<< /Names [ " ) , ar = 0 ; ar < cr . length ; ar ++ ) er . internal . write ( "(page_" + ( ar + 1 ) + ")" + cr [ ar ] + " 0 R" ) ; er . internal . write ( " ] >>" , "endobj" ) , tr = er . internal . newObject ( ) , er . internal . write ( "<< /Dests " + hr + " 0 R" ) , er . internal . write ( ">>" , "endobj" ) } } ] ) , er . events . push ( [ "putCatalog" , function ( ) { this . outline . root . children . length > 0 && ( this . internal . write ( "/Outlines" , this . outline . makeRef ( this . outline . root ) ) , this . outline . createNamedDestinations && this . internal . write ( "/Names " + tr + " 0 R" ) ) } ] ) , er . events . push ( [ "initialized" , function ( ) { var er = this ; er . outline = { createNamedDestinations : ! 1 , root : { children : [ ] } } , er . outline . add = function ( er , tr , rr ) { var nr = { title : tr , options : rr , children : [ ] } ; return null == er && ( er = this . root ) , er . children . push ( nr ) , nr } , er . outline . render = function ( ) { return this . ctx = { } , this . ctx . val = "" , this . ctx . pdf = er , this . genIds _r ( this . root ) , this . renderRoot ( this . root ) , this . renderItems ( this . root ) , this . ctx . val } , er . outline . genIds _r = function ( tr ) { tr . id = er . internal . newObjectDeferred ( ) ; for ( var rr = 0 ; rr < tr . children . length ; rr ++ ) this . genIds _r ( tr . children [ rr ] ) } , er . outline . renderRoot = function ( er ) { this . objStart ( er ) , this . line ( "/Type /Outlines" ) , er . children . length > 0 && ( this . line ( "/First " + this . makeRef ( er . children [ 0 ] ) ) , this . line ( "/Last " + this . makeRef ( er . children [ er . children . length - 1 ] ) ) ) , this . line ( "/Count " + this . count _r ( { count : 0 } , er ) ) , this . objEnd ( ) } , er . outline . renderItems = function ( tr ) { for ( var rr = this . ctx . pdf . internal . getVerticalCoordinateString , nr = 0 ; nr < tr . children . length ; nr ++ ) { var ar = tr . children [ nr ] ; this . objStart ( ar ) , this . line ( "/Title " + this . makeString ( ar . title ) ) , this . line ( "/Parent " + this . makeRef ( tr ) ) , nr > 0 && this . line ( "/Prev " + this . makeRef ( tr . children [ nr - 1 ] ) ) , nr < tr . children . length - 1 && this . line ( "/Next " + this . makeRef ( tr . children [ nr + 1 ] ) ) , ar . children . length > 0 && ( this . line ( "/First " + this . makeRef ( ar . children [ 0 ] ) ) , this . line ( "/Last " + this . makeRef ( ar . children [ ar . children . length - 1 ] ) ) ) ; var ir = this . count = this . count _r ( { count : 0 } , ar ) ; if ( ir > 0 && this . line ( "/Count " + ir ) , ar . options && ar . options . pageNumber ) { var or = er . internal . getPageInfo ( ar . options . pageNumber ) ; this . line ( "/Dest [" + or . objId + " 0 R /XYZ 0 " + rr ( 0 ) + " 0]" ) } this . objEnd ( ) } for ( var sr = 0 ; sr < tr . children . length ; sr ++ ) this . renderItems ( tr . children [ sr ] ) } , er . outline . line = function ( er ) { this . ctx . val += er + "\r\n" } , er . outline . makeRef = function ( er ) { return er . id + " 0 R" } , er . outline . makeString = function ( tr ) { return "(" + er . internal . pdfEscape ( tr ) + ")" } , er . outline . objStart = function ( er ) { this . ctx . val += "\r\n" + er . id + " 0 obj\r\n<<\r\n" } , er . outline . objEnd = function ( ) { this . ctx . val += ">> \r\nendobj\r\n" } , er . outline . count _r = function ( er , tr ) { for ( var rr = 0 ; rr < tr . children . length ; rr ++ ) er . count ++ , this . count _r ( er , tr . children [ rr ] ) ; return er . count } } ] ) } ( g . API ) ,
/ * *
2020-09-08 23:35:47 +00:00
* @ license
*
* Licensed under the MIT License .
* http : //opensource.org/licenses/mit-license
* /
2020-09-04 20:34:30 +00:00
function ( er ) { var tr = [ 192 , 193 , 194 , 195 , 196 , 197 , 198 , 199 ] ; er . processJPEG = function ( er , rr , nr , ar , ir , or ) { var sr , lr = this . decode . DCT _DECODE , cr = null ; if ( "string" == typeof er || this . _ _addimage _ _ . isArrayBuffer ( er ) || this . _ _addimage _ _ . isArrayBufferView ( er ) ) { switch ( er = ir || er , er = this . _ _addimage _ _ . isArrayBuffer ( er ) ? new Uint8Array ( er ) : er , ( sr = function ( er ) { for ( var rr , nr = 256 * er . charCodeAt ( 4 ) + er . charCodeAt ( 5 ) , ar = er . length , ir = { width : 0 , height : 0 , numcomponents : 1 } , or = 4 ; or < ar ; or += 2 ) { if ( or += nr , - 1 !== tr . indexOf ( er . charCodeAt ( or + 1 ) ) ) { rr = 256 * er . charCodeAt ( or + 5 ) + er . charCodeAt ( or + 6 ) , ir = { width : 256 * er . charCodeAt ( or + 7 ) + er . charCodeAt ( or + 8 ) , height : rr , numcomponents : er . charCodeAt ( or + 9 ) } ; break } nr = 256 * er . charCodeAt ( or + 2 ) + er . charCodeAt ( or + 3 ) } return ir } ( er = this . _ _addimage _ _ . isArrayBufferView ( er ) ? this . _ _addimage _ _ . arrayBufferToBinaryString ( er ) : er ) ) . numcomponents ) { case 1 : or = this . color _spaces . DEVICE _GRAY ; break ; case 4 : or = this . color _spaces . DEVICE _CMYK ; break ; case 3 : or = this . color _spaces . DEVICE _RGB } cr = { data : er , width : sr . width , height : sr . height , colorSpace : or , bitsPerComponent : 8 , filter : lr , index : rr , alias : nr } } return cr } } ( g . API ) ;
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* Extracted from pdf . js
* https : //github.com/andreasgal/pdf.js
*
* Copyright ( c ) 2011 Mozilla Foundation
*
* Contributors : Andreas Gal < gal @ mozilla . com >
* Chris G Jones < cjones @ mozilla . com >
* Shaon Barman < shaon . barman @ gmail . com >
* Vivien Nicolas < 21 @ vingtetun . org >
* Justin D ' Arcangelo < justindarc @ gmail . com >
* Yury Delendik
*
* Permission is hereby granted , free of charge , to any person obtaining a
* copy of this software and associated documentation files ( the "Software" ) ,
* to deal in the Software without restriction , including without limitation
* the rights to use , copy , modify , merge , publish , distribute , sublicense ,
* and / or sell copies of the Software , and to permit persons to whom the
* Software is furnished to do so , subject to the following conditions :
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software .
*
* THE SOFTWARE IS PROVIDED "AS IS" , WITHOUT WARRANTY OF ANY KIND , EXPRESS OR
* IMPLIED , INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY ,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT . IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM , DAMAGES OR OTHER
* LIABILITY , WHETHER IN AN ACTION OF CONTRACT , TORT OR OTHERWISE , ARISING
* FROM , OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE .
* /
2020-09-13 21:56:45 +00:00
var um , dm , hm , Am , pm , gm = function ( ) { function t ( ) { this . pos = 0 , this . bufferLength = 0 , this . eof = ! 1 , this . buffer = null } return t . prototype = { ensureBuffer : function ensureBuffer ( er ) { var tr = this . buffer , rr = tr ? tr . byteLength : 0 ; if ( er < rr ) return tr ; for ( var nr = 512 ; nr < er ; ) nr <<= 1 ; for ( var ar = new Uint8Array ( nr ) , ir = 0 ; ir < rr ; ++ ir ) ar [ ir ] = tr [ ir ] ; return this . buffer = ar } , getByte : function getByte ( ) { for ( var er = this . pos ; this . bufferLength <= er ; ) { if ( this . eof ) return null ; this . readBlock ( ) } return this . buffer [ this . pos ++ ] } , getBytes : function getBytes ( er ) { var tr = this . pos ; if ( er ) { this . ensureBuffer ( tr + er ) ; for ( var rr = tr + er ; ! this . eof && this . bufferLength < rr ; ) this . readBlock ( ) ; var nr = this . bufferLength ; rr > nr && ( rr = nr ) } else { for ( ; ! this . eof ; ) this . readBlock ( ) ; rr = this . bufferLength } return this . pos = rr , this . buffer . subarray ( tr , rr ) } , lookChar : function lookChar ( ) { for ( var er = this . pos ; this . bufferLength <= er ; ) { if ( this . eof ) return null ; this . readBlock ( ) } return String . fromCharCode ( this . buffer [ this . pos ] ) } , getChar : function getChar ( ) { for ( var er = this . pos ; this . bufferLength <= er ; ) { if ( this . eof ) return null ; this . readBlock ( ) } return String . fromCharCode ( this . buffer [ this . pos ++ ] ) } , makeSubStream : function makeSubStream ( er , tr , rr ) { for ( var nr = er + tr ; this . bufferLength <= nr && ! this . eof ; ) this . readBlock ( ) ; return new Stream ( this . buffer , er , tr , rr ) } , skip : function skip ( er ) { er || ( er = 1 ) , this . pos += er } , reset : function reset ( ) { this . pos = 0 } } , t } ( ) , fm = ( "undefined" != typeof self && self || "undefined" != typeof window && window || void 0 !== qg && qg || Function ( 'return typeof this === "object" && this.content' ) ( ) || Function ( "return this" ) ( ) ) . FlateStream = function ( ) { if ( "undefined" != typeof Uint32Array ) { var er = new Uint32Array ( [ 16 , 17 , 18 , 0 , 8 , 7 , 9 , 6 , 10 , 5 , 11 , 4 , 12 , 3 , 13 , 2 , 14 , 1 , 15 ] ) , tr = new Uint32Array ( [ 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 65547 , 65549 , 65551 , 65553 , 131091 , 131095 , 131099 , 131103 , 196643 , 196651 , 196659 , 196667 , 262211 , 262227 , 262243 , 262259 , 327811 , 327843 , 327875 , 327907 , 258 , 258 , 258 ] ) , rr = new Uint32Array ( [ 1 , 2 , 3 , 4 , 65541 , 65543 , 131081 , 131085 , 196625 , 196633 , 262177 , 262193 , 327745 , 327777 , 393345 , 393409 , 459009 , 459137 , 524801 , 525057 , 590849 , 591361 , 657409 , 658433 , 724993 , 727041 , 794625 , 798721 , 868353 , 876545 ] ) , nr = [ new Uint32Array ( [ 459008 , 524368 , 524304 , 524568 , 459024 , 524400 , 524336 , 590016 , 459016 , 524384 , 524320 , 589984 , 524288 , 524416 , 524352 , 590048 , 459012 , 524376 , 524312 , 589968 , 459028 , 524408 , 524344 , 590032 , 459020 , 524392 , 524328 , 59e4 , 524296 , 524424 , 524360 , 590064 , 459010 , 524372 , 524308 , 524572 , 459026 , 524404 , 524340 , 590024 , 459018 , 524388 , 524324 , 589992 , 524292 , 524420 , 524356 , 590056 , 459014 , 524380 , 524316 , 589976 , 459030 , 524412 , 524348 , 590040 , 459022 , 524396 , 524332 , 590008 , 524300 , 524428 , 524364 , 590072 , 459009 , 524370 , 524306 , 524570 , 459025 , 524402 , 524338 , 590020 , 459017 , 524386 , 524322 , 589988 , 524290 , 524418 , 524354 , 590052 , 459013 , 524378 , 524314 , 589972 , 459029 , 524410 , 524346 , 590036 , 459021 , 524394 , 524330 , 590004 , 524298 , 524426 , 524362 , 590068 , 459011 , 524374 , 524310 , 524574 , 459027 , 524406 , 524342 , 590028 , 459019 , 524390 , 524326 , 589996 , 524294 , 524422 , 524358 , 590060 , 459015 , 524382 , 524318 , 589980 , 459031 , 524414 , 524350 , 590044 , 459023 , 524398 , 524334 , 590012 , 524302 , 524430 , 524366 , 590076 , 459008 , 524369 , 524305 , 524569 , 459024 , 524401 , 524337 , 590018 , 459016 , 524385 , 524321 , 589986 , 524289 , 524417 , 524353 , 590050 , 459012 , 524377 , 524313 , 589970 , 459028 , 524409 , 524345 , 590034 , 459020 , 524393 , 524329 , 590002 , 524297 , 524425 , 524361 , 590066 , 459010 , 524373 , 524309 , 524573 , 459026 , 524405 , 524341 , 590026 , 459018 , 524389 , 524325 , 589994 , 524293 , 524421 , 524357 , 590058 , 459014 , 524381 , 524317 , 589978 , 459030 , 524413 , 524349 , 590042 , 459022 , 524397 , 524333 , 590010 , 524301 , 524429 , 524365 , 590074 , 459009 , 524371 , 524307 , 524571 , 459025 , 524403 , 524339 , 590022 , 459017 , 524387 , 524323 , 589990 , 524291 , 524419 , 524355 , 590054 , 459013 , 524379 , 524315 , 589974 , 459029 , 524411 , 524347 , 590038 , 459021 , 524395 , 524331 , 590006 , 524299 , 524427 , 524363 , 590070 , 459011 , 524375 , 524311 , 524575 , 459027 , 524407 , 524343 , 590030 , 459019 , 524391 , 524327 , 589998 , 524295 , 524423 , 524359 , 590062 , 459015 , 524383 , 524319 , 589982 , 459031 , 524415 , 524351 , 590046 , 459023 , 524399 , 524335 , 590014 , 524303 , 524431 , 524367 , 590078 , 459008 , 524368 , 524304 , 524568 , 459024 , 524400 , 524336 , 590017 , 459016 , 524384 , 524320 , 589985 , 524288 , 524416 , 524352 , 590049 , 459012 , 524376 , 524312 , 589969 , 459028 , 524408 , 524344 , 590033 , 459020 , 524392 , 524328 , 590001 , 524296 , 524424 , 524360 , 590065 , 459
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* ( c ) Dean McNamee < dean @ gmail . com > , 2013.
*
* https : //github.com/deanm/omggif
*
* Permission is hereby granted , free of charge , to any person obtaining a copy
* of this software and associated documentation files ( the "Software" ) , to
* deal in the Software without restriction , including without limitation the
* rights to use , copy , modify , merge , publish , distribute , sublicense , and / or
* sell copies of the Software , and to permit persons to whom the Software is
* furnished to do so , subject to the following conditions :
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software .
*
* THE SOFTWARE IS PROVIDED "AS IS" , WITHOUT WARRANTY OF ANY KIND , EXPRESS OR
* IMPLIED , INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY ,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT . IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM , DAMAGES OR OTHER
* LIABILITY , WHETHER IN AN ACTION OF CONTRACT , TORT OR OTHERWISE , ARISING
* FROM , OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
* IN THE SOFTWARE .
*
* omggif is a JavaScript implementation of a GIF 89 a encoder and decoder ,
* including animation and compression . It does not rely on any specific
* underlying system , so should run in the browser , Node , or Plask .
2020-09-13 21:56:45 +00:00
* / f u n c t i o n j t ( e r ) { v a r t r = 0 ; i f ( 7 1 ! = = e r [ t r + + ] | | 7 3 ! = = e r [ t r + + ] | | 7 0 ! = = e r [ t r + + ] | | 5 6 ! = = e r [ t r + + ] | | 5 6 ! = ( e r [ t r + + ] + 1 & 2 5 3 ) | | 9 7 ! = = e r [ t r + + ] ) t h r o w n e w E r r o r ( " I n v a l i d G I F 8 7 a / 8 9 a h e a d e r . " ) ; v a r r r = e r [ t r + + ] | e r [ t r + + ] < < 8 , n r = e r [ t r + + ] | e r [ t r + + ] < < 8 , a r = e r [ t r + + ] , i r = a r > > 7 , o r = 1 < < 1 + ( 7 & a r ) ; e r [ t r + + ] , e r [ t r + + ] ; v a r s r = n u l l , l r = n u l l ; i r & & ( s r = t r , l r = o r , t r + = 3 * o r ) ; v a r c r = ! 0 , u r = [ ] , d r = 0 , h r = n u l l , A r = 0 , p r = n u l l ; f o r ( t h i s . w i d t h = r r , t h i s . h e i g h t = n r ; c r & & t r < e r . l e n g t h ; ) s w i t c h ( e r [ t r + + ] ) { c a s e 3 3 : s w i t c h ( e r [ t r + + ] ) { c a s e 2 5 5 : i f ( 1 1 ! = = e r [ t r ] | | 7 8 = = e r [ t r + 1 ] & & 6 9 = = e r [ t r + 2 ] & & 8 4 = = e r [ t r + 3 ] & & 8 3 = = e r [ t r + 4 ] & & 6 7 = = e r [ t r + 5 ] & & 6 5 = = e r [ t r + 6 ] & & 8 0 = = e r [ t r + 7 ] & & 6 9 = = e r [ t r + 8 ] & & 5 0 = = e r [ t r + 9 ] & & 4 6 = = e r [ t r + 1 0 ] & & 4 8 = = e r [ t r + 1 1 ] & & 3 = = e r [ t r + 1 2 ] & & 1 = = e r [ t r + 1 3 ] & & 0 = = e r [ t r + 1 6 ] ) t r + = 1 4 , p r = e r [ t r + + ] | e r [ t r + + ] < < 8 , t r + + ; e l s e f o r ( t r + = 1 2 ; ; ) { i f ( ! ( ( B r = e r [ t r + + ] ) > = 0 ) ) t h r o w E r r o r ( " I n v a l i d b l o c k s i z e " ) ; i f ( 0 = = = B r ) b r e a k ; t r + = B r } b r e a k ; c a s e 2 4 9 : i f ( 4 ! = = e r [ t r + + ] | | 0 ! = = e r [ t r + 4 ] ) t h r o w n e w E r r o r ( " I n v a l i d g r a p h i c s e x t e n s i o n b l o c k . " ) ; v a r g r = e r [ t r + + ] ; d r = e r [ t r + + ] | e r [ t r + + ] < < 8 , h r = e r [ t r + + ] , 0 = = ( 1 & g r ) & & ( h r = n u l l ) , A r = g r > > 2 & 7 , t r + + ; b r e a k ; c a s e 2 5 4 : f o r ( ; ; ) { i f ( ! ( ( B r = e r [ t r + + ] ) > = 0 ) ) t h r o w E r r o r ( " I n v a l i d b l o c k s i z e " ) ; i f ( 0 = = = B r ) b r e a k ; t r + = B r } b r e a k ; d e f a u l t : t h r o w n e w E r r o r ( " U n k n o w n g r a p h i c c o n t r o l l a b e l : 0 x " + e r [ t r - 1 ] . t o S t r i n g ( 1 6 ) ) } b r e a k ; c a s e 4 4 : v a r f r = e r [ t r + + ] | e r [ t r + + ] < < 8 , m r = e r [ t r + + ] | e r [ t r + + ] < < 8 , _ r = e r [ t r + + ] | e r [ t r + + ] < < 8 , v r = e r [ t r + + ] | e r [ t r + + ] < < 8 , y r = e r [ t r + + ] , b r = y r > > 6 & 1 , w r = 1 < < 1 + ( 7 & y r ) , k r = s r , x r = l r , S r = ! 1 ; y r > > 7 & & ( S r = ! 0 , k r = t r , x r = w r , t r + = 3 * w r ) ; v a r C r = t r ; f o r ( t r + + ; ; ) { v a r B r ; i f ( ! ( ( B r = e r [ t r + + ] ) > = 0 ) ) t h r o w E r r o r ( " I n v a l i d b l o c k s i z e " ) ; i f ( 0 = = = B r ) b r e a k ; t r + = B r } u r . p u s h ( { x : f r , y : m r , w i d t h : _ r , h e i g h t : v r , h a s _ l o c a l _ p a l e t t e : S r , p a l e t t e _ o f f s e t : k r , p a l e t t e _ s i z e : x r , d a t a _ o f f s e t : C r , d a t a _ l e n g t h : t r - C r , t r a n s p a r e n t _ i n d e x : h r , i n t e r l a c e d : ! ! b r , d e l a y : d r , d i s p o s a l : A r } ) ; b r e a k ; c a s e 5 9 : c r = ! 1 ; b r e a k ; d e f a u l t : t h r o w n e w E r r o r ( " U n k n o w n g i f b l o c k : 0 x " + e r [ t r - 1 ] . t o S t r i n g ( 1 6 ) ) } t h i s . n u m F r a m e s = f u n c t i o n ( ) { r e t u r n u r . l e n g t h } , t h i s . l o o p C o u n t = f u n c t i o n ( ) { r e t u r n p r } , t h i s . f r a m e I n f o = f u n c t i o n ( e r ) { i f ( e r < 0 | | e r > = u r . l e n g t h ) t h r o w n e w E r r o r ( " F r a m e i n d e x o u t o f r a n g e . " ) ; r e t u r n u r [ e r ] } , t h i s . d e c o d e A n d B l i t F r a m e B G R A = f u n c t i o n ( t r , n r ) { v a r a r = t h i s . f r a m e I n f o ( t r ) , i r = a r . w i d t h * a r . h e i g h t , o r = n e w U i n t 8 A r r a y ( i r ) ; B t ( e r , a r . d a t a _ o f f s e t , o r , i r ) ; v a r s r = a r . p a l e t t e _ o f f s e t , l r = a r . t r a n s p a r e n t _ i n d e x ; n u l l = = = l r & & ( l r = 2 5 6 ) ; v a r c r = a r . w i d t h , u r = r r - c r , d r = c r , h r = 4 * ( a r . y * r r + a r . x ) , A r = 4 * ( ( a r . y + a r . h e i g h t ) * r r + a r . x ) , p r = h r , g r = 4 * u r ; ! 0 = = = a r . i n t e r l a c e d & & ( g r + = 4 * r r * 7 ) ; f o r ( v a r f r = 8 , m r = 0 , _ r = o r . l e n g t h ; m r < _ r ; + + m r ) { v a r v r = o r [ m r ] ; i f ( 0 = = = d r & & ( d r = c r , ( p r + = g r ) > = A r & & ( g r = 4 * u r + 4 * r r * ( f r - 1 ) , p r = h r + ( c r + u r ) * ( f r < < 1 ) , f r > > = 1 ) ) , v r = = = l r ) p r + = 4 ; e l s e { v a r y r = e r [ s r + 3 * v r ] , b r = e r [ s r + 3 * v r + 1 ] , w r = e r [ s r + 3 * v r + 2 ] ; n r [ p r + + ] = w r , n r [ p r + + ] = b r , n r [ p r + + ] = y r , n r [ p r + + ] = 2 5 5 } - - d r } } , t h i s . d e c o d e A n d B l i t F r a m e R G B A = f u n c t i o n ( t r , n r ) { v a r a r = t h i s . f r a m e I n f o ( t r ) , i r = a r . w i d t h * a r . h e i g h t , o r = n e w U i n t 8 A r r a y ( i r ) ; B t ( e r , a r . d a t a _ o f f s e t , o r , i r ) ; v a r s r = a r . p a l e t t e _ o f f s e t , l r = a r . t r a n s p a r e n t _ i n d e x ; n u l l = = = l r & & ( l r = 2 5 6 ) ; v a r c r = a r . w i d t h , u r = r r - c r , d r = c r , h r = 4 * ( a r . y * r r + a r . x ) , A r = 4 * ( ( a r . y + a r . h e i g h t ) * r r + a r . x ) , p r = h r , g r = 4 * u r ; ! 0 = = = a r . i n t e r l a c e d & & ( g r + = 4 * r r * 7 ) ; f o r ( v a r f r = 8 , m r = 0 , _ r = o r . l e n g t h ; m r < _ r ; + + m r ) { v a r v r = o r [ m r ] ; i f ( 0 = = = d r & & ( d r = c r , ( p r + = g r ) > = A r & & ( g r = 4 * u r + 4 * r r * ( f r - 1 ) , p r = h r + ( c r + u r ) * ( f r < < 1 ) , f r > > = 1 ) ) , v r = = = l r ) p r + = 4 ; e l s e { v a r y r = e r [ s r + 3 * v r ] , b r = e r [ s r + 3 * v r + 1 ] , w r = e r [ s r + 3 * v r + 2 ] ; n r [ p r + + ] = y r , n r [ p r + + ] = b r , n r [ p r + + ] = w r , n r [ p r + + ] = 2 5 5 } - - d r } } } f u n c t i o n B t ( e r , t r , r r , n r ) { f o r ( v a r a r = e r [ t r + + ] , i r = 1 < < a r , o r = i r + 1 , s r = o r + 1 , l r = a r + 1 , c r = ( 1 < < l r ) - 1 , u r = 0 , d r = 0 , h r = 0 , A r = e r [ t r + + ] , p r = n e w I n t 3 2 A r r a y ( 4 0 9 6 ) , g r = n u l l ; ; ) { f o r ( ; u r < 1 6 & & 0 ! = = A r ; ) d r | = e r [ t r + + ] < < u r , u r + = 8 , 1 = = = A r ? A r = e r [ t r + + ] : - - A r ; i f ( u r < l r ) b r e a k ; v a r f r = d r & c r ; i f ( d r > > = l r , u r - = l r , f r ! = = i r ) { i f ( f r = = = o r ) b r e a k ; f o r ( v a r m r = f r < s r ? f r : g r , _ r = 0 , v r = m r ; v r > i r ; ) v r = p r [ v r ] > > 8 , + + _ r ; v a r y r = v r ; i f ( h r + _ r + ( m r ! = = f r ? 1 : 0 ) > n r ) r e t u r n v o i d o f . l o g ( " W a r n i n g , g i f s t r e a m l o n g e r t h a n e x p e c t e d . " ) ; r r [ h r + + ] = y r ; v a r b r = h r + = _ r ; f o r ( m r ! = = f r & & ( r r [ h r + + ] = y r ) , v r = m r ; _ r - - ; ) v r = p r [ v r ] , r r [ - - b r ] = 2 5 5 & v r , v r > > = 8 ; n u l l ! = = g r & & s r < 4 0 9 6 & & ( p r [ s r + + ] = g r < < 8 | y r , s r > = c r + 1 & & l r < 1 2 & & ( + + l r , c r = c r < < 1 | 1 ) ) , g r = f r } e l s e s r = o r + 1 , c r = ( 1 < < ( l r = a r + 1 ) ) - 1 , g r = n u l l } r e t u r n h r ! = = n r & & o f . l o g ( " W a r n i n g , g i f s t r e a m s h o r t e r t h a n e x p e c t e d . " ) , r r
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
Copyright ( c ) 2008 , Adobe Systems Incorporated
All rights reserved .
2020-08-28 22:07:07 +00:00
2020-09-08 23:35:47 +00:00
Redistribution and use in source and binary forms , with or without
modification , are permitted provided that the following conditions are
met :
2020-08-28 22:07:07 +00:00
2020-09-08 23:35:47 +00:00
* Redistributions of source code must retain the above copyright notice ,
this list of conditions and the following disclaimer .
* Redistributions in binary form must reproduce the above copyright
notice , this list of conditions and the following disclaimer in the
documentation and / or other materials provided with the distribution .
* Neither the name of Adobe Systems Incorporated nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission .
2020-08-28 22:07:07 +00:00
2020-09-08 23:35:47 +00:00
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS " AS
IS " AND ANY EXPRESS OR IMPLIED WARRANTIES , INCLUDING , BUT NOT LIMITED TO ,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED . IN NO EVENT SHALL THE COPYRIGHT OWNER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT , INDIRECT , INCIDENTAL , SPECIAL ,
EXEMPLARY , OR CONSEQUENTIAL DAMAGES ( INCLUDING , BUT NOT LIMITED TO ,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES ; LOSS OF USE , DATA , OR
PROFITS ; OR BUSINESS INTERRUPTION ) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY , WHETHER IN CONTRACT , STRICT LIABILITY , OR TORT ( INCLUDING
NEGLIGENCE OR OTHERWISE ) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE , EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE .
2020-09-13 21:56:45 +00:00
* / } f u n c t i o n O t ( e r ) { v a r t r , r r , n r , a r , i r , o r = M a t h . f l o o r , s r = n e w A r r a y ( 6 4 ) , l r = n e w A r r a y ( 6 4 ) , c r = n e w A r r a y ( 6 4 ) , u r = n e w A r r a y ( 6 4 ) , d r = n e w A r r a y ( 6 5 5 3 5 ) , h r = n e w A r r a y ( 6 5 5 3 5 ) , A r = n e w A r r a y ( 6 4 ) , p r = n e w A r r a y ( 6 4 ) , g r = [ ] , f r = 0 , m r = 7 , _ r = n e w A r r a y ( 6 4 ) , v r = n e w A r r a y ( 6 4 ) , y r = n e w A r r a y ( 6 4 ) , b r = n e w A r r a y ( 2 5 6 ) , w r = n e w A r r a y ( 2 0 4 8 ) , k r = [ 0 , 1 , 5 , 6 , 1 4 , 1 5 , 2 7 , 2 8 , 2 , 4 , 7 , 1 3 , 1 6 , 2 6 , 2 9 , 4 2 , 3 , 8 , 1 2 , 1 7 , 2 5 , 3 0 , 4 1 , 4 3 , 9 , 1 1 , 1 8 , 2 4 , 3 1 , 4 0 , 4 4 , 5 3 , 1 0 , 1 9 , 2 3 , 3 2 , 3 9 , 4 5 , 5 2 , 5 4 , 2 0 , 2 2 , 3 3 , 3 8 , 4 6 , 5 1 , 5 5 , 6 0 , 2 1 , 3 4 , 3 7 , 4 7 , 5 0 , 5 6 , 5 9 , 6 1 , 3 5 , 3 6 , 4 8 , 4 9 , 5 7 , 5 8 , 6 2 , 6 3 ] , x r = [ 0 , 0 , 1 , 5 , 1 , 1 , 1 , 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ] , S r = [ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 1 0 , 1 1 ] , C r = [ 0 , 0 , 2 , 1 , 3 , 3 , 2 , 4 , 3 , 5 , 5 , 4 , 4 , 0 , 0 , 1 , 1 2 5 ] , B r = [ 1 , 2 , 3 , 0 , 4 , 1 7 , 5 , 1 8 , 3 3 , 4 9 , 6 5 , 6 , 1 9 , 8 1 , 9 7 , 7 , 3 4 , 1 1 3 , 2 0 , 5 0 , 1 2 9 , 1 4 5 , 1 6 1 , 8 , 3 5 , 6 6 , 1 7 7 , 1 9 3 , 2 1 , 8 2 , 2 0 9 , 2 4 0 , 3 6 , 5 1 , 9 8 , 1 1 4 , 1 3 0 , 9 , 1 0 , 2 2 , 2 3 , 2 4 , 2 5 , 2 6 , 3 7 , 3 8 , 3 9 , 4 0 , 4 1 , 4 2 , 5 2 , 5 3 , 5 4 , 5 5 , 5 6 , 5 7 , 5 8 , 6 7 , 6 8 , 6 9 , 7 0 , 7 1 , 7 2 , 7 3 , 7 4 , 8 3 , 8 4 , 8 5 , 8 6 , 8 7 , 8 8 , 8 9 , 9 0 , 9 9 , 1 0 0 , 1 0 1 , 1 0 2 , 1 0 3 , 1 0 4 , 1 0 5 , 1 0 6 , 1 1 5 , 1 1 6 , 1 1 7 , 1 1 8 , 1 1 9 , 1 2 0 , 1 2 1 , 1 2 2 , 1 3 1 , 1 3 2 , 1 3 3 , 1 3 4 , 1 3 5 , 1 3 6 , 1 3 7 , 1 3 8 , 1 4 6 , 1 4 7 , 1 4 8 , 1 4 9 , 1 5 0 , 1 5 1 , 1 5 2 , 1 5 3 , 1 5 4 , 1 6 2 , 1 6 3 , 1 6 4 , 1 6 5 , 1 6 6 , 1 6 7 , 1 6 8 , 1 6 9 , 1 7 0 , 1 7 8 , 1 7 9 , 1 8 0 , 1 8 1 , 1 8 2 , 1 8 3 , 1 8 4 , 1 8 5 , 1 8 6 , 1 9 4 , 1 9 5 , 1 9 6 , 1 9 7 , 1 9 8 , 1 9 9 , 2 0 0 , 2 0 1 , 2 0 2 , 2 1 0 , 2 1 1 , 2 1 2 , 2 1 3 , 2 1 4 , 2 1 5 , 2 1 6 , 2 1 7 , 2 1 8 , 2 2 5 , 2 2 6 , 2 2 7 , 2 2 8 , 2 2 9 , 2 3 0 , 2 3 1 , 2 3 2 , 2 3 3 , 2 3 4 , 2 4 1 , 2 4 2 , 2 4 3 , 2 4 4 , 2 4 5 , 2 4 6 , 2 4 7 , 2 4 8 , 2 4 9 , 2 5 0 ] , E r = [ 0 , 0 , 3 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 0 , 0 , 0 , 0 , 0 ] , N r = [ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 1 0 , 1 1 ] , L r = [ 0 , 0 , 2 , 1 , 2 , 4 , 4 , 3 , 4 , 7 , 5 , 4 , 4 , 0 , 1 , 2 , 1 1 9 ] , T r = [ 0 , 1 , 2 , 3 , 1 7 , 4 , 5 , 3 3 , 4 9 , 6 , 1 8 , 6 5 , 8 1 , 7 , 9 7 , 1 1 3 , 1 9 , 3 4 , 5 0 , 1 2 9 , 8 , 2 0 , 6 6 , 1 4 5 , 1 6 1 , 1 7 7 , 1 9 3 , 9 , 3 5 , 5 1 , 8 2 , 2 4 0 , 2 1 , 9 8 , 1 1 4 , 2 0 9 , 1 0 , 2 2 , 3 6 , 5 2 , 2 2 5 , 3 7 , 2 4 1 , 2 3 , 2 4 , 2 5 , 2 6 , 3 8 , 3 9 , 4 0 , 4 1 , 4 2 , 5 3 , 5 4 , 5 5 , 5 6 , 5 7 , 5 8 , 6 7 , 6 8 , 6 9 , 7 0 , 7 1 , 7 2 , 7 3 , 7 4 , 8 3 , 8 4 , 8 5 , 8 6 , 8 7 , 8 8 , 8 9 , 9 0 , 9 9 , 1 0 0 , 1 0 1 , 1 0 2 , 1 0 3 , 1 0 4 , 1 0 5 , 1 0 6 , 1 1 5 , 1 1 6 , 1 1 7 , 1 1 8 , 1 1 9 , 1 2 0 , 1 2 1 , 1 2 2 , 1 3 0 , 1 3 1 , 1 3 2 , 1 3 3 , 1 3 4 , 1 3 5 , 1 3 6 , 1 3 7 , 1 3 8 , 1 4 6 , 1 4 7 , 1 4 8 , 1 4 9 , 1 5 0 , 1 5 1 , 1 5 2 , 1 5 3 , 1 5 4 , 1 6 2 , 1 6 3 , 1 6 4 , 1 6 5 , 1 6 6 , 1 6 7 , 1 6 8 , 1 6 9 , 1 7 0 , 1 7 8 , 1 7 9 , 1 8 0 , 1 8 1 , 1 8 2 , 1 8 3 , 1 8 4 , 1 8 5 , 1 8 6 , 1 9 4 , 1 9 5 , 1 9 6 , 1 9 7 , 1 9 8 , 1 9 9 , 2 0 0 , 2 0 1 , 2 0 2 , 2 1 0 , 2 1 1 , 2 1 2 , 2 1 3 , 2 1 4 , 2 1 5 , 2 1 6 , 2 1 7 , 2 1 8 , 2 2 6 , 2 2 7 , 2 2 8 , 2 2 9 , 2 3 0 , 2 3 1 , 2 3 2 , 2 3 3 , 2 3 4 , 2 4 2 , 2 4 3 , 2 4 4 , 2 4 5 , 2 4 6 , 2 4 7 , 2 4 8 , 2 4 9 , 2 5 0 ] ; f u n c t i o n j ( e r , t r ) { f o r ( v a r r r = 0 , n r = 0 , a r = n e w A r r a y , i r = 1 ; i r < = 1 6 ; i r + + ) { f o r ( v a r o r = 1 ; o r < = e r [ i r ] ; o r + + ) a r [ t r [ n r ] ] = [ ] , a r [ t r [ n r ] ] [ 0 ] = r r , a r [ t r [ n r ] ] [ 1 ] = i r , n r + + , r r + + ; r r * = 2 } r e t u r n a r } f u n c t i o n B ( e r ) { f o r ( v a r t r = e r [ 0 ] , r r = e r [ 1 ] - 1 ; r r > = 0 ; ) t r & 1 < < r r & & ( f r | = 1 < < m r ) , r r - - , - - m r < 0 & & ( 2 5 5 = = f r ? ( O ( 2 5 5 ) , O ( 0 ) ) : O ( f r ) , m r = 7 , f r = 0 ) } f u n c t i o n O ( e r ) { g r . p u s h ( e r ) } f u n c t i o n M ( e r ) { O ( e r > > 8 & 2 5 5 ) , O ( 2 5 5 & e r ) } f u n c t i o n E ( e r , t r , r r , n r , a r ) { f o r ( v a r i r , o r = a r [ 0 ] , s r = a r [ 2 4 0 ] , l r = f u n c t i o n ( e r , t r ) { v a r r r , n r , a r , i r , o r , s r , l r , c r , u r , d r , h r = 0 ; f o r ( u r = 0 ; u r < 8 ; + + u r ) { r r = e r [ h r ] , n r = e r [ h r + 1 ] , a r = e r [ h r + 2 ] , i r = e r [ h r + 3 ] , o r = e r [ h r + 4 ] , s r = e r [ h r + 5 ] , l r = e r [ h r + 6 ] ; v a r p r = r r + ( c r = e r [ h r + 7 ] ) , g r = r r - c r , f r = n r + l r , m r = n r - l r , _ r = a r + s r , v r = a r - s r , y r = i r + o r , b r = i r - o r , w r = p r + y r , k r = p r - y r , x r = f r + _ r , S r = f r - _ r ; e r [ h r ] = w r + x r , e r [ h r + 4 ] = w r - x r ; v a r C r = . 7 0 7 1 0 6 7 8 1 * ( S r + k r ) ; e r [ h r + 2 ] = k r + C r , e r [ h r + 6 ] = k r - C r ; v a r B r = . 3 8 2 6 8 3 4 3 3 * ( ( w r = b r + v r ) - ( S r = m r + g r ) ) , E r = . 5 4 1 1 9 6 1 * w r + B r , N r = 1 . 3 0 6 5 6 2 9 6 5 * S r + B r , L r = . 7 0 7 1 0 6 7 8 1 * ( x r = v r + m r ) , T r = g r + L r , P r = g r - L r ; e r [ h r + 5 ] = P r + E r , e r [ h r + 3 ] = P r - E r , e r [ h r + 1 ] = T r + N r , e r [ h r + 7 ] = T r - N r , h r + = 8 } f o r ( h r = 0 , u r = 0 ; u r < 8 ; + + u r ) { r r = e r [ h r ] , n r = e r [ h r + 8 ] , a r = e r [ h r + 1 6 ] , i r = e r [ h r + 2 4 ] , o r = e r [ h r + 3 2 ] , s r = e r [ h r + 4 0 ] , l r = e r [ h r + 4 8 ] ; v a r U r = r r + ( c r = e r [ h r + 5 6 ] ) , F r = r r - c r , I r = n r + l r , R r = n r - l r , M r = a r + s r , Q r = a r - s r , O r = i r + o r , D r = i r - o r , j r = U r + O r , H r = U r - O r , G r = I r + M r , z r = I r - M r ; e r [ h r ] = j r + G r , e r [ h r + 3 2 ] = j r - G r ; v a r V r = . 7 0 7 1 0 6 7 8 1 * ( z r + H r ) ; e r [ h r + 1 6 ] = H r + V r , e r [ h r + 4 8 ] = H r - V r ; v a r K r = . 3 8 2 6 8 3 4 3 3 * ( ( j r = D r + Q r ) - ( z r = R r + F r ) ) , q r = . 5 4 1 1 9 6 1 * j r + K r , W r = 1 . 3 0 6 5 6 2 9 6 5 * z r + K r , X r = . 7 0 7 1 0 6 7 8 1 * ( G r = Q r + R r ) , Y r = F r + X r , J r = F r - X r ; e r [ h r + 4 0 ] = J r + q r , e r [ h r + 2 4 ] = J r - q r , e r [ h r + 8 ] = Y r + W r , e r [ h r + 5 6 ] = Y r - W r , h r + + } f o r ( u r = 0 ; u r < 6 4 ; + + u r ) d r = e r [ u r ] * t r [ u r ] , A r [ u r ] = d r > 0 ? d r + . 5 | 0 : d r - . 5 | 0 ; r e t u r n A r } ( e r , t r ) , c r = 0 ; c r < 6 4 ; + + c r ) p r [ k r [ c r ] ] = l r [ c r ] ; v a r u r = p r [ 0 ] - r r ; r r = p r [ 0 ] , 0 = = u r ? B ( n r [ 0 ] ) : ( B ( n r [ h r [ i r = 3 2 7 6 7 + u r ] ] ) , B ( d r [ i r ] ) ) ; f o r ( v a r g r = 6 3 ; g r > 0 & & 0 = = p r [ g r ] ; ) g r - - ; i f ( 0 = = g r ) r e t u r n B ( o r ) , r r ; f o r ( v a r f r , m r = 1 ; m r < = g r ; ) { f o r ( v a r _ r = m r ; 0 = = p r [ m r ] & & m r < = g r ; ) + + m r ; v a r v r = m r - _ r ; i f ( v r > = 1 6 ) { f r = v r > > 4 ; f o r ( v a r y r = 1 ; y r < = f r ; + + y r ) B ( s r ) ; v r & = 1 5 } i r = 3 2 7 6 7 + p r [ m r ] , B ( a r [ ( v r < < 4 ) + h r [ i r ] ] ) , B ( d r [ i r ] ) , m r + + } r e t u r n 6 3 ! = g r & & B ( o r ) , r r } f u n c t i o n q ( e r ) { e r = M a t h . m i n ( M a t h . m a x ( e r , 1 ) , 1 0 0 ) , i r ! = e r & & ( f u n c t i o n ( e r ) { f o r ( v a r t r = [ 1 6 , 1 1 , 1 0 , 1 6 , 2 4 , 4 0 , 5 1 , 6 1 , 1 2 , 1 2 , 1 4 , 1 9 , 2 6 , 5 8 , 6 0 , 5 5 , 1 4 , 1 3 , 1 6 , 2 4 , 4 0 , 5 7 , 6 9 , 5 6 , 1 4 , 1 7 , 2 2 , 2 9 , 5 1 , 8 7 , 8 0 , 6 2 , 1 8 , 2 2 , 3 7 , 5 6 , 6 8 , 1 0 9 , 1 0 3 , 7 7 , 2 4 , 3 5 , 5 5 , 6 4 , 8 1 , 1 0 4 , 1 1 3 , 9 2 , 4 9 , 6 4 , 7 8 , 8 7 , 1 0 3 , 1 2 1 , 1 2 0 , 1 0 1 , 7 2 , 9 2 , 9 5 , 9 8 , 1 1 2 ,
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* Copyright ( c ) 2017 Aras Abbasi
*
* Licensed under the MIT License .
* http : //opensource.org/licenses/mit-license
2020-09-13 21:56:45 +00:00
* / f u n c t i o n M t ( e r , t r ) { i f ( t h i s . p o s = 0 , t h i s . b u f f e r = e r , t h i s . d a t a v = n e w D a t a V i e w ( e r . b u f f e r ) , t h i s . i s _ w i t h _ a l p h a = ! ! t r , t h i s . b o t t o m _ u p = ! 0 , t h i s . f l a g = S t r i n g . f r o m C h a r C o d e ( t h i s . b u f f e r [ 0 ] ) + S t r i n g . f r o m C h a r C o d e ( t h i s . b u f f e r [ 1 ] ) , t h i s . p o s + = 2 , - 1 = = = [ " B M " , " B A " , " C I " , " C P " , " I C " , " P T " ] . i n d e x O f ( t h i s . f l a g ) ) t h r o w n e w E r r o r ( " I n v a l i d B M P F i l e " ) ; t h i s . p a r s e H e a d e r ( ) , t h i s . p a r s e B G R ( ) } f u n c t i o n E t ( e r ) { f u n c t i o n e ( e r ) { i f ( ! e r ) t h r o w E r r o r ( " a s s e r t : P " ) } f u n c t i o n n ( e r , t r , r r ) { f o r ( v a r n r = 0 ; 4 > n r ; n r + + ) i f ( e r [ t r + n r ] ! = r r . c h a r C o d e A t ( n r ) ) r e t u r n ! 0 ; r e t u r n ! 1 } f u n c t i o n r ( e r , t r , r r , n r , a r ) { f o r ( v a r i r = 0 ; i r < a r ; i r + + ) e r [ t r + i r ] = r r [ n r + i r ] } f u n c t i o n i ( e r , t r , r r , n r ) { f o r ( v a r a r = 0 ; a r < n r ; a r + + ) e r [ t r + a r ] = r r } f u n c t i o n a ( e r ) { r e t u r n n e w I n t 3 2 A r r a y ( e r ) } f u n c t i o n o ( e r , t r ) { f o r ( v a r r r = [ ] , n r = 0 ; n r < e r ; n r + + ) r r . p u s h ( n e w t r ) ; r e t u r n r r } f u n c t i o n s ( e r , t r ) { v a r r r = [ ] ; r e t u r n f u n c t i o n t ( e r , r r , n r ) { f o r ( v a r a r = n r [ r r ] , i r = 0 ; i r < a r & & ( e r . p u s h ( n r . l e n g t h > r r + 1 ? [ ] : n e w t r ) , ! ( n r . l e n g t h < r r + 1 ) ) ; i r + + ) t ( e r [ i r ] , r r + 1 , n r ) } ( r r , 0 , e r ) , r r } f u n c t i o n u ( e r , t r ) { f o r ( v a r r r = " " , n r = 0 ; n r < 4 ; n r + + ) r r + = S t r i n g . f r o m C h a r C o d e ( e r [ t r + + ] ) ; r e t u r n r r } f u n c t i o n c ( e r , t r ) { r e t u r n ( e r [ t r + 0 ] < < 0 | e r [ t r + 1 ] < < 8 | e r [ t r + 2 ] < < 1 6 ) > > > 0 } f u n c t i o n h ( e r , t r ) { r e t u r n ( e r [ t r + 0 ] < < 0 | e r [ t r + 1 ] < < 8 | e r [ t r + 2 ] < < 1 6 | e r [ t r + 3 ] < < 2 4 ) > > > 0 } n e w ( E t = f u n c t i o n E t ( ) { v a r e r = t h i s ; f u n c t i o n u ( e r , t r ) { f o r ( v a r r r = 1 < < t r - 1 > > > 0 ; e r & r r ; ) r r > > > = 1 ; r e t u r n r r ? ( e r & r r - 1 ) + r r : e r } f u n c t i o n c ( e r , t r , r r , n r , a r ) { e ( ! ( n r % r r ) ) ; d o { e r [ t r + ( n r - = r r ) ] = a r } w h i l e ( 0 < n r ) } f u n c t i o n h ( e r , t r , r r , n r , a r ) { i f ( e ( 2 3 2 8 > = a r ) , 5 1 2 > = a r ) v a r i r = a ( 5 1 2 ) ; e l s e i f ( n u l l = = ( i r = a ( a r ) ) ) r e t u r n 0 ; r e t u r n f u n c t i o n ( e r , t r , r r , n r , a r , i r ) { v a r o r , s r , l r = t r , c r = 1 < < r r , u r = a ( 1 6 ) , d r = a ( 1 6 ) ; f o r ( e ( 0 ! = a r ) , e ( n u l l ! = n r ) , e ( n u l l ! = e r ) , e ( 0 < r r ) , s r = 0 ; s r < a r ; + + s r ) { i f ( 1 5 < n r [ s r ] ) r e t u r n 0 ; + + u r [ n r [ s r ] ] } i f ( u r [ 0 ] = = a r ) r e t u r n 0 ; f o r ( d r [ 1 ] = 0 , o r = 1 ; 1 5 > o r ; + + o r ) { i f ( u r [ o r ] > 1 < < o r ) r e t u r n 0 ; d r [ o r + 1 ] = d r [ o r ] + u r [ o r ] } f o r ( s r = 0 ; s r < a r ; + + s r ) o r = n r [ s r ] , 0 < n r [ s r ] & & ( i r [ d r [ o r ] + + ] = s r ) ; i f ( 1 = = d r [ 1 5 ] ) r e t u r n ( n r = n e w l ) . g = 0 , n r . v a l u e = i r [ 0 ] , c ( e r , l r , 1 , c r , n r ) , c r ; v a r h r , A r = - 1 , p r = c r - 1 , g r = 0 , f r = 1 , m r = 1 , _ r = 1 < < r r ; f o r ( s r = 0 , o r = 1 , a r = 2 ; o r < = r r ; + + o r , a r < < = 1 ) { i f ( f r + = m r < < = 1 , 0 > ( m r - = u r [ o r ] ) ) r e t u r n 0 ; f o r ( ; 0 < u r [ o r ] ; - - u r [ o r ] ) ( n r = n e w l ) . g = o r , n r . v a l u e = i r [ s r + + ] , c ( e r , l r + g r , a r , _ r , n r ) , g r = u ( g r , o r ) } f o r ( o r = r r + 1 , a r = 2 ; 1 5 > = o r ; + + o r , a r < < = 1 ) { i f ( f r + = m r < < = 1 , 0 > ( m r - = u r [ o r ] ) ) r e t u r n 0 ; f o r ( ; 0 < u r [ o r ] ; - - u r [ o r ] ) { i f ( n r = n e w l , ( g r & p r ) ! = A r ) { f o r ( l r + = _ r , h r = 1 < < ( A r = o r ) - r r ; 1 5 > A r & & ! ( 0 > = ( h r - = u r [ A r ] ) ) ; ) + + A r , h r < < = 1 ; c r + = _ r = 1 < < ( h r = A r - r r ) , e r [ t r + ( A r = g r & p r ) ] . g = h r + r r , e r [ t r + A r ] . v a l u e = l r - t r - A r } n r . g = o r - r r , n r . v a l u e = i r [ s r + + ] , c ( e r , l r + ( g r > > r r ) , a r , _ r , n r ) , g r = u ( g r , o r ) } } r e t u r n f r ! = 2 * d r [ 1 5 ] - 1 ? 0 : c r } ( e r , t r , r r , n r , a r , i r ) } f u n c t i o n l ( ) { t h i s . v a l u e = t h i s . g = 0 } f u n c t i o n f ( ) { t h i s . v a l u e = t h i s . g = 0 } f u n c t i o n d ( ) { t h i s . G = o ( 5 , l ) , t h i s . H = a ( 5 ) , t h i s . j c = t h i s . Q b = t h i s . q b = t h i s . n d = 0 , t h i s . p d = o ( t r , f ) } f u n c t i o n p ( e r , t r , r r , n r ) { e ( n u l l ! = e r ) , e ( n u l l ! = t r ) , e ( 2 1 4 7 4 8 3 6 4 8 > n r ) , e r . C a = 2 5 4 , e r . I = 0 , e r . b = - 8 , e r . K a = 0 , e r . o a = t r , e r . p a = r r , e r . J d = t r , e r . Y c = r r + n r , e r . Z c = 4 < = n r ? r r + n r - 4 + 1 : r r , S ( e r ) } f u n c t i o n g ( e r , t r ) { f o r ( v a r r r = 0 ; 0 < t r - - ; ) r r | = k ( e r , 1 2 8 ) < < t r ; r e t u r n r r } f u n c t i o n m ( e r , t r ) { v a r r r = g ( e r , t r ) ; r e t u r n P ( e r ) ? - r r : r r } f u n c t i o n v ( e r , t r , r r , n r ) { v a r a r , i r = 0 ; f o r ( e ( n u l l ! = e r ) , e ( n u l l ! = t r ) , e ( 4 2 9 4 9 6 7 2 8 8 > n r ) , e r . S b = n r , e r . R a = 0 , e r . u = 0 , e r . h = 0 , 4 < n r & & ( n r = 4 ) , a r = 0 ; a r < n r ; + + a r ) i r + = t r [ r r + a r ] < < 8 * a r ; e r . R a = i r , e r . b b = n r , e r . o a = t r , e r . p a = r r } f u n c t i o n b ( e r ) { f o r ( ; 8 < = e r . u & & e r . b b < e r . S b ; ) e r . R a > > > = 8 , e r . R a + = e r . o a [ e r . p a + e r . b b ] < < a r - 8 > > > 0 , + + e r . b b , e r . u - = 8 ; x ( e r ) & & ( e r . h = 1 , e r . u = 0 ) } f u n c t i o n y ( e r , t r ) { i f ( e ( 0 < = t r ) , ! e r . h & & t r < = n r ) { v a r a r = L ( e r ) & r r [ t r ] ; r e t u r n e r . u + = t r , b ( e r ) , a r } r e t u r n e r . h = 1 , e r . u = 0 } f u n c t i o n w ( ) { t h i s . b = t h i s . C a = t h i s . I = 0 , t h i s . o a = [ ] , t h i s . p a = 0 , t h i s . J d = [ ] , t h i s . Y c = 0 , t h i s . Z c = [ ] , t h i s . K a = 0 } f u n c t i o n N ( ) { t h i s . R a = 0 , t h i s . o a = [ ] , t h i s . h = t h i s . u = t h i s . b b = t h i s . S b = t h i s . p a = 0 } f u n c t i o n L ( e r ) { r e t u r n e r . R a > > > ( e r . u & a r - 1 ) > > > 0 } f u n c t i o n x ( e r ) { r e t u r n e ( e r . b b < = e r . S b ) , e r . h | | e r . b b = = e r . S b & & e r . u > a r } f u n c t i o n A ( e r , t r ) { e r . u = t r , e r . h = x ( e r ) } f u n c t i o n _ ( e r ) { e r . u > = i r & & ( e ( e r . u > = i r ) , b ( e r ) ) } f u n c t i o n S ( e r ) { e ( n u l l ! = e r & & n u l l ! = e r . o a ) , e r . p a < e r . Z c ? ( e r . I = ( e r . o a [ e r . p a + + ] | e r . I < < 8 ) > > > 0 , e r . b + = 8 ) : ( e ( n u l l ! = e r & & n u l l ! = e r . o a ) , e r . p a < e r . Y c ? ( e r . b + = 8 , e r . I = e r . o a [ e r . p a + + ] | e r . I < < 8 ) : e r . K a ? e r . b = 0 : ( e r . I < < = 8 , e r . b + = 8 , e r . K a = 1 ) ) } f u n c t i o n P ( e r ) { r e t u r n g ( e r , 1 ) } f u n c t i o n k ( e r , t r ) { v a r r r = e r . C a ; 0 > e r . b & & S ( e r ) ; v a r n r = e r . b , a r = r r * t r > > > 8 , i r = ( e r . I > > > n r > a r ) + 0 ; f o r ( i r ? ( r r - = a r , e r . I - = a r + 1 < < n r > > > 0 ) : r r = a r + 1 , n r = r r , a r = 0 ; 2 5 6 < = n r ; ) a r +
2020-09-04 20:34:30 +00:00
/ * * @ l i c e n s e
2020-09-08 23:35:47 +00:00
* Copyright ( c ) 2017 Dominik Homberger
Permission is hereby granted , free of charge , to any person obtaining a copy of this software and associated documentation files ( the "Software" ) , to deal in the Software without restriction , including without limitation the rights to use , copy , modify , merge , publish , distribute , sublicense , and / or sell copies of the Software , and to permit persons to whom the Software is furnished to do so , subject to the following conditions :
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software .
THE SOFTWARE IS PROVIDED "AS IS" , WITHOUT WARRANTY OF ANY KIND , EXPRESS OR IMPLIED , INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY , FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT . IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM , DAMAGES OR OTHER LIABILITY , WHETHER IN AN ACTION OF CONTRACT , TORT OR OTHERWISE , ARISING FROM , OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE .
https : //webpjs.appspot.com
WebPRiffParser dominikhlbg @ gmail . com
* /
2020-09-13 21:56:45 +00:00
function ( er , tr , rr , nr ) { for ( var ar = 0 ; ar < 4 ; ar ++ ) if ( er [ tr + ar ] != "RIFF" . charCodeAt ( ar ) ) return ! 0 ; return ! 1 } ( er , tr ) ) { var sr , lr ; for ( h ( er , tr += 4 ) , tr += 8 ; tr < er . length ; ) { var cr = u ( er , tr ) , ur = h ( er , tr += 4 ) ; tr += 4 ; var dr = ur + ( 1 & ur ) ; switch ( cr ) { case "VP8 " : case "VP8L" : void 0 === rr . frames [ nr ] && ( rr . frames [ nr ] = { } ) , ( pr = rr . frames [ nr ] ) . src _off = ar ? or : tr - 8 , pr . src _size = ir + ur + 8 , nr ++ , ar && ( ar = ! 1 , ir = 0 , or = 0 ) ; break ; case "VP8X" : ( pr = rr . header = { } ) . feature _flags = er [ tr ] ; var hr = tr + 4 ; pr . canvas _width = 1 + c ( er , hr ) , hr += 3 , pr . canvas _height = 1 + c ( er , hr ) , hr += 3 ; break ; case "ALPH" : ar = ! 0 , ir = dr + 8 , or = tr - 8 ; break ; case "ANIM" : ( pr = rr . header ) . bgcolor = h ( er , tr ) , hr = tr + 4 , pr . loop _count = ( sr = er ) [ ( lr = hr ) + 0 ] << 0 | sr [ lr + 1 ] << 8 , hr += 2 ; break ; case "ANMF" : var Ar , pr ; ( pr = rr . frames [ nr ] = { } ) . offset _x = 2 * c ( er , tr ) , tr += 3 , pr . offset _y = 2 * c ( er , tr ) , tr += 3 , pr . width = 1 + c ( er , tr ) , tr += 3 , pr . height = 1 + c ( er , tr ) , tr += 3 , pr . duration = c ( er , tr ) , tr += 3 , Ar = er [ tr ++ ] , pr . dispose = 1 & Ar , pr . blend = Ar >> 1 & 1 } "ANMF" != cr && ( tr += dr ) } return rr } } ( ir , 0 ) ; or . response = ir , or . rgbaoutput = ! 0 , or . dataurl = ! 1 ; var sr = or . header ? or . header : null , lr = or . frames ? or . frames : null ; if ( sr ) { sr . loop _counter = sr . loop _count , tr = [ sr . canvas _height ] , rr = [ sr . canvas _width ] ; for ( var cr = 0 ; cr < lr . length && 0 != lr [ cr ] . blend ; cr ++ ) ; } var ur = lr [ 0 ] , dr = ar . WebPDecodeRGBA ( ir , ur . src _off , ur . src _size , rr , tr ) ; ur . rgba = dr , ur . imgwidth = rr [ 0 ] , ur . imgheight = tr [ 0 ] ; for ( var hr = 0 ; hr < rr [ 0 ] * tr [ 0 ] * 4 ; hr ++ ) nr [ hr ] = dr [ hr ] ; return this . width = rr , this . height = tr , this . data = nr , this
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
*
* Copyright ( c ) 2014 James Robb , https : //github.com/jamesbrobb
*
* Permission is hereby granted , free of charge , to any person obtaining
* a copy of this software and associated documentation files ( the
* "Software" ) , to deal in the Software without restriction , including
* without limitation the rights to use , copy , modify , merge , publish ,
* distribute , sublicense , and / or sell copies of the Software , and to
* permit persons to whom the Software is furnished to do so , subject to
* the following conditions :
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software .
*
* THE SOFTWARE IS PROVIDED "AS IS" , WITHOUT WARRANTY OF ANY KIND ,
* EXPRESS OR IMPLIED , INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY , FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT . IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM , DAMAGES OR OTHER LIABILITY , WHETHER IN AN ACTION
* OF CONTRACT , TORT OR OTHERWISE , ARISING FROM , OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE .
* === === === === === === === === === === === === === === === === === === === === === === ==
2020-09-13 21:56:45 +00:00
* / } ! f u n c t i o n ( e r ) { v a r t r = f u n c t i o n n ( t r , a r , c r , u r ) { v a r d r = 5 , h r = o r ; s w i t c h ( u r ) { c a s e e r . i m a g e _ c o m p r e s s i o n . F A S T : d r = 3 , h r = i r ; b r e a k ; c a s e e r . i m a g e _ c o m p r e s s i o n . M E D I U M : d r = 6 , h r = s r ; b r e a k ; c a s e e r . i m a g e _ c o m p r e s s i o n . S L O W : d r = 9 , h r = l r } t r = n r ( t r , a r , c r , h r ) ; v a r A r = n e w U i n t 8 A r r a y ( r r ( d r ) ) , p r = g . A P I . a d l e r 3 2 c s . f r o m B u f f e r ( t r . b u f f e r ) , g r = n e w x t ( d r ) , f r = g r . a p p e n d ( t r ) , m r = g r . f l u s h ( ) , _ r = A r . l e n g t h + f r . l e n g t h + m r . l e n g t h , v r = n e w U i n t 8 A r r a y ( _ r + 4 ) ; r e t u r n v r . s e t ( A r ) , v r . s e t ( f r , A r . l e n g t h ) , v r . s e t ( m r , A r . l e n g t h + f r . l e n g t h ) , v r [ _ r + + ] = p r > > > 2 4 & 2 5 5 , v r [ _ r + + ] = p r > > > 1 6 & 2 5 5 , v r [ _ r + + ] = p r > > > 8 & 2 5 5 , v r [ _ r + + ] = 2 5 5 & p r , e r . _ _ a d d i m a g e _ _ . a r r a y B u f f e r T o B i n a r y S t r i n g ( v r ) } , r r = f u n c t i o n r ( e r ) { v a r t r = 3 0 7 2 0 ; r e t u r n t r | = M a t h . m i n ( 3 , ( e r - 1 & 2 5 5 ) > > 1 ) < < 6 , t r | = 0 , [ 1 2 0 , 2 5 5 & ( t r + = 3 1 - t r % 3 1 ) ] } , n r = f u n c t i o n i ( e r , t r , r r , n r ) { f o r ( v a r i , a r , i r , o r = e r . l e n g t h / t r , s r = n e w U i n t 8 A r r a y ( e r . l e n g t h + o r ) , l r = u r ( ) , c r = 0 ; c r < o r ; c r + = 1 ) { i f ( i r = c r * t r , i = e r . s u b a r r a y ( i r , i r + t r ) , n r ) s r . s e t ( n r ( i , r r , a r ) , i r + c r ) ; e l s e { f o r ( v a r h r , A r = l r . l e n g t h , p r = [ ] ; h r < A r ; h r + = 1 ) p r [ h r ] = l r [ h r ] ( i , r r , a r ) ; v a r g r = d r ( p r . c o n c a t ( ) ) ; s r . s e t ( p r [ g r ] , i r + c r ) } a r = i } r e t u r n s r } , a r = f u n c t i o n a ( e r ) { v a r t r = A r r a y . a p p l y ( [ ] , e r ) ; r e t u r n t r . u n s h i f t ( 0 ) , t r } , i r = f u n c t i o n o ( e r , t r ) { v a r r r , n r = [ ] , a r = e r . l e n g t h ; n r [ 0 ] = 1 ; f o r ( v a r i r = 0 ; i r < a r ; i r + = 1 ) r r = e r [ i r - t r ] | | 0 , n r [ i r + 1 ] = e r [ i r ] - r r + 2 5 6 & 2 5 5 ; r e t u r n n r } , o r = f u n c t i o n s ( e r , t r , r r ) { v a r n r , a r = [ ] , i r = e r . l e n g t h ; a r [ 0 ] = 2 ; f o r ( v a r o r = 0 ; o r < i r ; o r + = 1 ) n r = r r & & r r [ o r ] | | 0 , a r [ o r + 1 ] = e r [ o r ] - n r + 2 5 6 & 2 5 5 ; r e t u r n a r } , s r = f u n c t i o n u ( e r , t r , r r ) { v a r n r , a r , i r = [ ] , o r = e r . l e n g t h ; i r [ 0 ] = 3 ; f o r ( v a r s r = 0 ; s r < o r ; s r + = 1 ) n r = e r [ s r - t r ] | | 0 , a r = r r & & r r [ s r ] | | 0 , i r [ s r + 1 ] = e r [ s r ] + 2 5 6 - ( n r + a r > > > 1 ) & 2 5 5 ; r e t u r n i r } , l r = f u n c t i o n c ( e r , t r , r r ) { v a r n r , a r , i r , o r , s r = [ ] , l r = e r . l e n g t h ; s r [ 0 ] = 4 ; f o r ( v a r c = 0 ; c < l r ; c + = 1 ) n r = e r [ c - t r ] | | 0 , a r = r r & & r r [ c ] | | 0 , i r = r r & & r r [ c - t r ] | | 0 , o r = c r ( n r , a r , i r ) , s r [ c + 1 ] = e r [ c ] - o r + 2 5 6 & 2 5 5 ; r e t u r n s r } , c r = f u n c t i o n h ( e r , t r , r r ) { i f ( e r = = = t r & & t r = = = r r ) r e t u r n e r ; v a r n r = M a t h . a b s ( t r - r r ) , a r = M a t h . a b s ( e r - r r ) , i r = M a t h . a b s ( e r + t r - r r - r r ) ; r e t u r n n r < = a r & & n r < = i r ? e r : a r < = i r ? t r : r r } , u r = f u n c t i o n l ( ) { r e t u r n [ a r , i r , o r , s r , l r ] } , d r = f u n c t i o n f ( e r ) { v a r t r = e r . m a p ( ( f u n c t i o n ( e r ) { r e t u r n e r . r e d u c e ( ( f u n c t i o n ( e r , t r ) { r e t u r n e r + M a t h . a b s ( t r ) } ) , 0 ) } ) ) ; r e t u r n t r . i n d e x O f ( M a t h . m i n . a p p l y ( n u l l , t r ) ) } ; e r . p r o c e s s P N G = f u n c t i o n ( r r , n r , a r , i r ) { v a r o r , s r , l r , c r , u r , d r , h r , A r , p r , g r , f r , m r , _ r , v r , y r , b r = t h i s . d e c o d e . F L A T E _ D E C O D E , w r = " " ; i f ( t h i s . _ _ a d d i m a g e _ _ . i s A r r a y B u f f e r ( r r ) & & ( r r = n e w U i n t 8 A r r a y ( r r ) ) , t h i s . _ _ a d d i m a g e _ _ . i s A r r a y B u f f e r V i e w ( r r ) ) { i f ( r r = ( l r = n e w m m ( r r ) ) . i m g D a t a , s r = l r . b i t s , o r = l r . c o l o r S p a c e , u r = l r . c o l o r s , - 1 ! = = [ 4 , 6 ] . i n d e x O f ( l r . c o l o r T y p e ) ) { i f ( 8 = = = l r . b i t s ) { p r = ( A r = 3 2 = = l r . p i x e l B i t l e n g t h ? n e w U i n t 3 2 A r r a y ( l r . d e c o d e P i x e l s ( ) . b u f f e r ) : 1 6 = = l r . p i x e l B i t l e n g t h ? n e w U i n t 1 6 A r r a y ( l r . d e c o d e P i x e l s ( ) . b u f f e r ) : n e w U i n t 8 A r r a y ( l r . d e c o d e P i x e l s ( ) . b u f f e r ) ) . l e n g t h , f r = n e w U i n t 8 A r r a y ( p r * l r . c o l o r s ) , g r = n e w U i n t 8 A r r a y ( p r ) ; v a r k r , x r = l r . p i x e l B i t l e n g t h - l r . b i t s ; f o r ( v r = 0 , y r = 0 ; v r < p r ; v r + + ) { f o r ( _ r = A r [ v r ] , k r = 0 ; k r < x r ; ) f r [ y r + + ] = _ r > > > k r & 2 5 5 , k r + = l r . b i t s ; g r [ v r ] = _ r > > > k r & 2 5 5 } } i f ( 1 6 = = = l r . b i t s ) { p r = ( A r = n e w U i n t 3 2 A r r a y ( l r . d e c o d e P i x e l s ( ) . b u f f e r ) ) . l e n g t h , f r = n e w U i n t 8 A r r a y ( p r * ( 3 2 / l r . p i x e l B i t l e n g t h ) * l r . c o l o r s ) , g r = n e w U i n t 8 A r r a y ( p r * ( 3 2 / l r . p i x e l B i t l e n g t h ) ) , m r = l r . c o l o r s > 1 , v r = 0 , y r = 0 ; f o r ( v a r S r = 0 ; v r < p r ; ) _ r = A r [ v r + + ] , f r [ y r + + ] = _ r > > > 0 & 2 5 5 , m r & & ( f r [ y r + + ] = _ r > > > 1 6 & 2 5 5 , _ r = A r [ v r + + ] , f r [ y r + + ] = _ r > > > 0 & 2 5 5 ) , g r [ S r + + ] = _ r > > > 1 6 & 2 5 5 ; s r = 8 } i r ! = = e r . i m a g e _ c o m p r e s s i o n . N O N E ? ( r r = t r ( f r , l r . w i d t h * l r . c o l o r s , l r . c o l o r s , i r ) , h r = t r ( g r , l r . w i d t h , 1 , i r ) ) : ( r r = f r , h r = g r , b r = v o i d 0 ) } i f ( 3 = = = l r . c o l o r T y p e & & ( o r = t h i s . c o l o r _ s p a c e s . I N D E X E D , d r = l r . p a l e t t e , l r . t r a n s p a r e n c y . i n d e x e d ) ) { v a r C r = l r . t r a n s p a r e n c y . i n d e x e d , B r = 0 ; f o r ( v r = 0 , p r = C r . l e n g t h ; v r < p r ; + + v r ) B r + = C r [ v r ] ; i f ( ( B r / = 2 5 5 ) = = p r - 1 & & - 1 ! = = C r . i n d e x O f ( 0 ) ) c r = [ C r . i n d e x O f ( 0 ) ] ; e l s e i f ( B r ! = = p r ) { f o r ( A r = l r . d e c o d e P i x e l s ( ) , g r = n e w U i n t 8 A r r a y ( A r . l e n g t h ) , v r = 0 , p r = A r . l e n g t h ; v r < p r ; v r + + ) g r [ v r ] = C r [ A r [ v r ] ] ; h r = t r ( g r , l r . w i d t h , 1 ) } } v a r E r = f u n c t i o n ( t r ) { v a r r r ; s w i t c h ( t r ) { c a s e e r . i m a g e _ c o m p r e s s i o n . F A S T : r r = 1 1 ; b r e a k ; c a s e e r . i m a g e _ c o m p r e s s i o n . M E D I U M : r r = 1 3 ; b r e a k ; c a s e e r . i m a g e _ c o m p r e s s i o n . S L O W : r r = 1 4 ; b r e a k ; d e f a u l t : r r = 1 2 } r e t u r n r r } ( i r ) ; r e t u r n b r = = = t h i s . d e c o d e . F L A T E _ D E C O D E & & ( w r = " / P r e d i c t o r " + E r + " " ) , w r + = " / C o l o r s " + u r + " / B i t s P e r C o m p o n e n t " + s r + " / C o l u m n s " + l r . w i d t h , ( t h i s . _ _ a d d i m a g e _ _ . i s A r r a y B u f f e r ( r r ) | | t h i s . _ _ a d d i m a g e _ _ . i s A r r a y B u f f e r V i e w ( r r ) ) & & ( r r = t h i s . _ _ a d d i m a g e _ _ . a r r a y B u f f e r T o B i n a r y S t r i n g ( r r ) ) , ( h r & & t h i s .
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* Copyright ( c ) 2018 Aras Abbasi
*
* Licensed under the MIT License .
* http : //opensource.org/licenses/mit-license
* /
2020-09-04 20:34:30 +00:00
function ( er ) { er . processBMP = function ( tr , rr , nr , ar ) { var ir = new Mt ( tr , ! 1 ) , or = ir . width , sr = ir . height , lr = { data : ir . getData ( ) , width : or , height : sr } , cr = new Ot ( 100 ) . encode ( lr , 100 ) ; return er . processJPEG . call ( this , cr , rr , nr , ar ) } } ( g . API ) , Et . prototype . getData = function ( ) { return this . data } ,
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* Copyright ( c ) 2019 Aras Abbasi
*
* Licensed under the MIT License .
* http : //opensource.org/licenses/mit-license
* /
2020-09-04 20:34:30 +00:00
function ( er ) { er . processWEBP = function ( tr , rr , nr , ar ) { var ir = new Et ( tr , ! 1 ) , or = ir . width , sr = ir . height , lr = { data : ir . getData ( ) , width : or , height : sr } , cr = new Ot ( 100 ) . encode ( lr , 100 ) ; return er . processJPEG . call ( this , cr , rr , nr , ar ) } } ( g . API ) , g . API . setLanguage = function ( er ) { return void 0 === this . internal . languageSettings && ( this . internal . languageSettings = { } , this . internal . languageSettings . isSubscribed = ! 1 ) , void 0 !== { af : "Afrikaans" , sq : "Albanian" , ar : "Arabic (Standard)" , "ar-DZ" : "Arabic (Algeria)" , "ar-BH" : "Arabic (Bahrain)" , "ar-EG" : "Arabic (Egypt)" , "ar-IQ" : "Arabic (Iraq)" , "ar-JO" : "Arabic (Jordan)" , "ar-KW" : "Arabic (Kuwait)" , "ar-LB" : "Arabic (Lebanon)" , "ar-LY" : "Arabic (Libya)" , "ar-MA" : "Arabic (Morocco)" , "ar-OM" : "Arabic (Oman)" , "ar-QA" : "Arabic (Qatar)" , "ar-SA" : "Arabic (Saudi Arabia)" , "ar-SY" : "Arabic (Syria)" , "ar-TN" : "Arabic (Tunisia)" , "ar-AE" : "Arabic (U.A.E.)" , "ar-YE" : "Arabic (Yemen)" , an : "Aragonese" , hy : "Armenian" , as : "Assamese" , ast : "Asturian" , az : "Azerbaijani" , eu : "Basque" , be : "Belarusian" , bn : "Bengali" , bs : "Bosnian" , br : "Breton" , bg : "Bulgarian" , my : "Burmese" , ca : "Catalan" , ch : "Chamorro" , ce : "Chechen" , zh : "Chinese" , "zh-HK" : "Chinese (Hong Kong)" , "zh-CN" : "Chinese (PRC)" , "zh-SG" : "Chinese (Singapore)" , "zh-TW" : "Chinese (Taiwan)" , cv : "Chuvash" , co : "Corsican" , cr : "Cree" , hr : "Croatian" , cs : "Czech" , da : "Danish" , nl : "Dutch (Standard)" , "nl-BE" : "Dutch (Belgian)" , en : "English" , "en-AU" : "English (Australia)" , "en-BZ" : "English (Belize)" , "en-CA" : "English (Canada)" , "en-IE" : "English (Ireland)" , "en-JM" : "English (Jamaica)" , "en-NZ" : "English (New Zealand)" , "en-PH" : "English (Philippines)" , "en-ZA" : "English (South Africa)" , "en-TT" : "English (Trinidad & Tobago)" , "en-GB" : "English (United Kingdom)" , "en-US" : "English (United States)" , "en-ZW" : "English (Zimbabwe)" , eo : "Esperanto" , et : "Estonian" , fo : "Faeroese" , fj : "Fijian" , fi : "Finnish" , fr : "French (Standard)" , "fr-BE" : "French (Belgium)" , "fr-CA" : "French (Canada)" , "fr-FR" : "French (France)" , "fr-LU" : "French (Luxembourg)" , "fr-MC" : "French (Monaco)" , "fr-CH" : "French (Switzerland)" , fy : "Frisian" , fur : "Friulian" , gd : "Gaelic (Scots)" , "gd-IE" : "Gaelic (Irish)" , gl : "Galacian" , ka : "Georgian" , de : "German (Standard)" , "de-AT" : "German (Austria)" , "de-DE" : "German (Germany)" , "de-LI" : "German (Liechtenstein)" , "de-LU" : "German (Luxembourg)" , "de-CH" : "German (Switzerland)" , el : "Greek" , gu : "Gujurati" , ht : "Haitian" , he : "Hebrew" , hi : "Hindi" , hu : "Hungarian" , is : "Icelandic" , id : "Indonesian" , iu : "Inuktitut" , ga : "Irish" , it : "Italian (Standard)" , "it-CH" : "Italian (Switzerland)" , ja : "Japanese" , kn : "Kannada" , ks : "Kashmiri" , kk : "Kazakh" , km : "Khmer" , ky : "Kirghiz" , tlh : "Klingon" , ko : "Korean" , "ko-KP" : "Korean (North Korea)" , "ko-KR" : "Korean (South Korea)" , la : "Latin" , lv : "Latvian" , lt : "Lithuanian" , lb : "Luxembourgish" , mk : "FYRO Macedonian" , ms : "Malay" , ml : "Malayalam" , mt : "Maltese" , mi : "Maori" , mr : "Marathi" , mo : "Moldavian" , nv : "Navajo" , ng : "Ndonga" , ne : "Nepali" , no : "Norwegian" , nb : "Norwegian (Bokmal)" , nn : "Norwegian (Nynorsk)" , oc : "Occitan" , or : "Oriya" , om : "Oromo" , fa : "Persian" , "fa-IR" : "Persian/Iran" , pl : "Polish" , pt : "Portuguese" , "pt-BR" : "Portuguese (Brazil)" , pa : "Punjabi" , "pa-IN" : "Punjabi (India)" , "pa-PK" : "Punjabi (Pakistan)" , qu : "Quechua" , rm : "Rhaeto-Romanic" , ro : "Romanian" , "ro-MO" : "Romanian (Moldavia)" , ru : "Russian" , "ru-MO" : "Russian (Moldavia)" , sz : "Sami (Lappish)" , sg : "Sango" , sa : "Sanskrit" , sc : "Sardinian" , sd : "Sindhi" , si : "Singhalese" , sr : "Serbian" , sk : "Slovak" , sl : "Slovenian" , so : "Somani" , sb : "Sorbian" , es : "Spanish" , "es-AR" : "Spanish (Argentina)" , "es-BO" : "Spanish (Bolivia)" , "es-CL" : "Spanish (Chile)" , "es-CO" : "Spanish (Colombia)" , "es-CR" : "Spanish (Costa Rica)" , "es-DO" : "Spanish (Dominican Republic)" , "es-EC" : "Spanish (Ecuador)" , "es-SV" : "Spanish (El Salvador)" , "es-GT" : "Spanish (Guatemala)" , "es-HN" : "Spanish (Honduras)" , "es-MX" : "Spanish (Mexico)" , "es-NI" : "Spanish (Nicaragua)" , "es-PA" : "Spanish (Panama)" , "es-PY" : "Spanish (Paraguay)" , "es-PE" : "Spanish (Peru)" , "es-PR" : "Spanish (Puerto Rico)" , "es-ES" : "Spanish (Spain)" , "es-UY" : "Spanish (Uruguay)" , "es-VE" : "Spanish (Venezuela)" , sx : "Sutu" , sw : "Swahili" , sv : "Swedish" , "sv-FI" : "Swedish (Finland)" , "sv-SV" : "Swedish (Sweden)" , ta : "Tamil" , tt : "Tatar" , te : "Teluga" , th : "Thai" , tig : "Tigre" , ts : "Tsonga" , tn : "Tswana" , tr : "Turkish" , tk : "Turkmen" , uk : "Ukrainian"
/ * * @ l i c e n s e
2020-09-08 23:35:47 +00:00
* MIT license .
* Copyright ( c ) 2012 Willow Systems Corporation , willow - systems . com
* 2014 Diego Casorran , https : //github.com/diegocr
*
* Permission is hereby granted , free of charge , to any person obtaining
* a copy of this software and associated documentation files ( the
* "Software" ) , to deal in the Software without restriction , including
* without limitation the rights to use , copy , modify , merge , publish ,
* distribute , sublicense , and / or sell copies of the Software , and to
* permit persons to whom the Software is furnished to do so , subject to
* the following conditions :
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software .
*
* THE SOFTWARE IS PROVIDED "AS IS" , WITHOUT WARRANTY OF ANY KIND ,
* EXPRESS OR IMPLIED , INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY , FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT . IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM , DAMAGES OR OTHER LIABILITY , WHETHER IN AN ACTION
* OF CONTRACT , TORT OR OTHERWISE , ARISING FROM , OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE .
* === === === === === === === === === === === === === === === === === === === === === === ==
* /
2020-09-13 21:56:45 +00:00
um = g . API , dm = um . getCharWidthsArray = function ( er , tr ) { var rr , nr , ar = ( tr = tr || { } ) . font || this . internal . getFont ( ) , ir = tr . fontSize || this . internal . getFontSize ( ) , or = tr . charSpace || this . internal . getCharSpace ( ) , sr = tr . widths ? tr . widths : ar . metadata . Unicode . widths , lr = sr . fof ? sr . fof : 1 , cr = tr . kerning ? tr . kerning : ar . metadata . Unicode . kerning , ur = cr . fof ? cr . fof : 1 , dr = ! 1 !== tr . doKerning , hr = 0 , Ar = er . length , pr = 0 , gr = sr [ 0 ] || lr , fr = [ ] ; for ( rr = 0 ; rr < Ar ; rr ++ ) nr = er . charCodeAt ( rr ) , "function" == typeof ar . metadata . widthOfString ? fr . push ( ( ar . metadata . widthOfGlyph ( ar . metadata . characterToGlyph ( nr ) ) + or * ( 1e3 / ir ) || 0 ) / 1e3 ) : ( hr = dr && "object" == _typeof ( cr [ nr ] ) && ! isNaN ( parseInt ( cr [ nr ] [ pr ] , 10 ) ) ? cr [ nr ] [ pr ] / ur : 0 , fr . push ( ( sr [ nr ] || gr ) / lr + hr ) ) , pr = nr ; return fr } , hm = um . getStringUnitWidth = function ( er , tr ) { var rr = ( tr = tr || { } ) . fontSize || this . internal . getFontSize ( ) , nr = tr . font || this . internal . getFont ( ) , ar = tr . charSpace || this . internal . getCharSpace ( ) ; return um . processArabic && ( er = um . processArabic ( er ) ) , "function" == typeof nr . metadata . widthOfString ? nr . metadata . widthOfString ( er , rr , ar ) / rr : dm . apply ( this , arguments ) . reduce ( ( function ( er , tr ) { return er + tr } ) , 0 ) } , Am = function Pt ( er , tr , rr , nr ) { for ( var ar = [ ] , ir = 0 , or = er . length , sr = 0 ; ir !== or && sr + tr [ ir ] < rr ; ) sr += tr [ ir ] , ir ++ ; ar . push ( er . slice ( 0 , ir ) ) ; var lr = ir ; for ( sr = 0 ; ir !== or ; ) sr + tr [ ir ] > nr && ( ar . push ( er . slice ( lr , ir ) ) , sr = 0 , lr = ir ) , sr += tr [ ir ] , ir ++ ; return lr !== ir && ar . push ( er . slice ( lr , ir ) ) , ar } , pm = function kt ( er , tr , rr ) { rr || ( rr = { } ) ; var nr , ar , ir , or , sr , lr , cr , ur = [ ] , dr = [ ur ] , hr = rr . textIndent || 0 , Ar = 0 , pr = 0 , gr = er . split ( " " ) , fr = dm . apply ( this , [ " " , rr ] ) [ 0 ] ; if ( lr = - 1 === rr . lineIndent ? gr [ 0 ] . length + 2 : rr . lineIndent || 0 ) { var mr = Array ( lr ) . join ( " " ) , _r = [ ] ; gr . map ( ( function ( er ) { ( er = er . split ( /\s*\n/ ) ) . length > 1 ? _r = _r . concat ( er . map ( ( function ( er , tr ) { return ( tr && er . length ? "\n" : "" ) + er } ) ) ) : _r . push ( er [ 0 ] ) } ) ) , gr = _r , lr = hm . apply ( this , [ mr , rr ] ) } for ( ir = 0 , or = gr . length ; ir < or ; ir ++ ) { var vr = 0 ; if ( nr = gr [ ir ] , lr && "\n" == nr [ 0 ] && ( nr = nr . substr ( 1 ) , vr = 1 ) , hr + Ar + ( pr = ( ar = dm . apply ( this , [ nr , rr ] ) ) . reduce ( ( function ( er , tr ) { return er + tr } ) , 0 ) ) > tr || vr ) { if ( pr > tr ) { for ( sr = Am . apply ( this , [ nr , ar , tr - ( hr + Ar ) , tr ] ) , ur . push ( sr . shift ( ) ) , ur = [ sr . pop ( ) ] ; sr . length ; ) dr . push ( [ sr . shift ( ) ] ) ; pr = ar . slice ( nr . length - ( ur [ 0 ] ? ur [ 0 ] . length : 0 ) ) . reduce ( ( function ( er , tr ) { return er + tr } ) , 0 ) } else ur = [ nr ] ; dr . push ( ur ) , hr = pr + lr , Ar = fr } else ur . push ( nr ) , hr += Ar + pr , Ar = fr } return cr = lr ? function ( er , tr ) { return ( tr ? mr : "" ) + er . join ( " " ) } : function ( er ) { return er . join ( " " ) } , dr . map ( cr ) } , um . splitTextToSize = function ( er , tr , rr ) { var nr , ar = ( rr = rr || { } ) . fontSize || this . internal . getFontSize ( ) , ir = function ( er ) { if ( er . widths && er . kerning ) return { widths : er . widths , kerning : er . kerning } ; var tr = this . internal . getFont ( er . fontName , er . fontStyle ) ; return tr . metadata . Unicode ? { widths : tr . metadata . Unicode . widths || { 0 : 1 } , kerning : tr . metadata . Unicode . kerning || { } } : { font : tr . metadata , fontSize : this . internal . getFontSize ( ) , charSpace : this . internal . getCharSpace ( ) } } . call ( this , rr ) ; nr = Array . isArray ( er ) ? er : String ( er ) . split ( /\r?\n/ ) ; var or = 1 * this . internal . scaleFactor * tr / ar ; ir . textIndent = rr . textIndent ? 1 * rr . textIndent * this . internal . scaleFactor / ar : 0 , ir . lineIndent = rr . lineIndent ; var sr , lr , cr = [ ] ; for ( sr = 0 , lr = nr . length ; sr < lr ; sr ++ ) cr = cr . concat ( pm . apply ( this , [ nr [ sr ] , or , ir ] ) ) ; return cr } ,
2020-09-04 20:34:30 +00:00
/ * * @ l i c e n s e
2020-09-08 23:35:47 +00:00
jsPDF standard _fonts _metrics plugin
* Copyright ( c ) 2012 Willow Systems Corporation , willow - systems . com
* MIT license .
* Permission is hereby granted , free of charge , to any person obtaining
* a copy of this software and associated documentation files ( the
* "Software" ) , to deal in the Software without restriction , including
* without limitation the rights to use , copy , modify , merge , publish ,
* distribute , sublicense , and / or sell copies of the Software , and to
* permit persons to whom the Software is furnished to do so , subject to
* the following conditions :
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software .
*
* THE SOFTWARE IS PROVIDED "AS IS" , WITHOUT WARRANTY OF ANY KIND ,
* EXPRESS OR IMPLIED , INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY , FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT . IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM , DAMAGES OR OTHER LIABILITY , WHETHER IN AN ACTION
* OF CONTRACT , TORT OR OTHERWISE , ARISING FROM , OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE .
* === === === === === === === === === === === === === === === === === === === === === === ==
* /
2020-09-13 21:56:45 +00:00
function ( er ) { er . _ _fontmetrics _ _ = er . _ _fontmetrics _ _ || { } ; for ( var tr = "klmnopqrstuvwxyz" , rr = { } , nr = { } , ar = 0 ; ar < tr . length ; ar ++ ) rr [ tr [ ar ] ] = "0123456789abcdef" [ ar ] , nr [ "0123456789abcdef" [ ar ] ] = tr [ ar ] ; var ir = function a ( er ) { return "0x" + parseInt ( er , 10 ) . toString ( 16 ) } , or = er . _ _fontmetrics _ _ . compress = function ( er ) { var tr , rr , ar , sr , lr = [ "{" ] ; for ( var cr in er ) { if ( tr = er [ cr ] , isNaN ( parseInt ( cr , 10 ) ) ? rr = "'" + cr + "'" : ( cr = parseInt ( cr , 10 ) , rr = ( rr = ir ( cr ) . slice ( 2 ) ) . slice ( 0 , - 1 ) + nr [ rr . slice ( - 1 ) ] ) , "number" == typeof tr ) tr < 0 ? ( ar = ir ( tr ) . slice ( 3 ) , sr = "-" ) : ( ar = ir ( tr ) . slice ( 2 ) , sr = "" ) , ar = sr + ar . slice ( 0 , - 1 ) + nr [ ar . slice ( - 1 ) ] ; else { if ( "object" != _typeof ( tr ) ) throw new Error ( "Don't know what to do with value type " + _typeof ( tr ) + "." ) ; ar = or ( tr ) } lr . push ( rr + ar ) } return lr . push ( "}" ) , lr . join ( "" ) } , sr = er . _ _fontmetrics _ _ . uncompress = function ( er ) { if ( "string" != typeof er ) throw new Error ( "Invalid argument passed to uncompress." ) ; for ( var tr , nr , ar , ir , or = { } , sr = 1 , lr = or , cr = [ ] , ur = "" , dr = "" , hr = er . length - 1 , Ar = 1 ; Ar < hr ; Ar += 1 ) "'" == ( ir = er [ Ar ] ) ? tr ? ( ar = tr . join ( "" ) , tr = void 0 ) : tr = [ ] : tr ? tr . push ( ir ) : "{" == ir ? ( cr . push ( [ lr , ar ] ) , lr = { } , ar = void 0 ) : "}" == ir ? ( ( nr = cr . pop ( ) ) [ 0 ] [ nr [ 1 ] ] = lr , ar = void 0 , lr = nr [ 0 ] ) : "-" == ir ? sr = - 1 : void 0 === ar ? rr . hasOwnProperty ( ir ) ? ( ur += rr [ ir ] , ar = parseInt ( ur , 16 ) * sr , sr = 1 , ur = "" ) : ur += ir : rr . hasOwnProperty ( ir ) ? ( dr += rr [ ir ] , lr [ ar ] = parseInt ( dr , 16 ) * sr , sr = 1 , ar = void 0 , dr = "" ) : dr += ir ; return or } , lr = { codePages : [ "WinAnsiEncoding" ] , WinAnsiEncoding : sr ( "{19m8n201n9q201o9r201s9l201t9m201u8m201w9n201x9o201y8o202k8q202l8r202m9p202q8p20aw8k203k8t203t8v203u9v2cq8s212m9t15m8w15n9w2dw9s16k8u16l9u17s9z17x8y17y9y}" ) } , cr = { Unicode : { Courier : lr , "Courier-Bold" : lr , "Courier-BoldOblique" : lr , "Courier-Oblique" : lr , Helvetica : lr , "Helvetica-Bold" : lr , "Helvetica-BoldOblique" : lr , "Helvetica-Oblique" : lr , "Times-Roman" : lr , "Times-Bold" : lr , "Times-BoldItalic" : lr , "Times-Italic" : lr } } , ur = { Unicode : { "Courier-Oblique" : sr ( "{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}" ) , "Times-BoldItalic" : sr ( "{'widths'{k3o2q4ycx2r201n3m201o6o201s2l201t2l201u2l201w3m201x3m201y3m2k1t2l2r202m2n2n3m2o3m2p5n202q6o2r1w2s2l2t2l2u3m2v3t2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w3t3x3t3y3t3z3m4k5n4l4m4m4m4n4m4o4s4p4m4q4m4r4s4s4y4t2r4u3m4v4m4w3x4x5t4y4s4z4s5k3x5l4s5m4m5n3r5o3x5p4s5q4m5r5t5s4m5t3x5u3x5v2l5w1w5x2l5y3t5z3m6k2l6l3m6m3m6n2w6o3m6p2w6q2l6r3m6s3r6t1w6u1w6v3m6w1w6x4y6y3r6z3m7k3m7l3m7m2r7n2r7o1w7p3r7q2w7r4m7s3m7t2w7u2r7v2n7w1q7x2n7y3t202l3mcl4mal2ram3man3mao3map3mar3mas2lat4uau1uav3maw3way4uaz2lbk2sbl3t'fof'6obo2lbp3tbq3mbr1tbs2lbu1ybv3mbz3mck4m202k3mcm4mcn4mco4mcp4mcq5ycr4mcs4mct4mcu4mcv4mcw2r2m3rcy2rcz2rdl4sdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek3mel3mem3men3meo3mep3meq4ser2wes2wet2weu2wev2wew1wex1wey1wez1wfl3rfm3mfn3mfo3mfp3mfq3mfr3tfs3mft3rfu3rfv3rfw3rfz2w203k6o212m6o2dw2l2cq2l3t3m3u2l17s3x19m3m}'kerning'{cl{4qu5kt5qt5rs17ss5ts}201s{201ss}201t{cks4lscmscnscoscpscls2wu2yu201ts}201x{2wu2yu}2k{201ts}2w{4qx5kx5ou5qx5rs17su5tu}2x{17su5tu5ou}2y{4qx5kx5ou5qx5rs17ss5ts}'fof'-6ofn{17sw5tw5ou5qw5rs}7t{cksclscmscnscoscps4ls}3u{17su5tu5os5qs}3v{17su5tu5os5qs}7p{17su5tu}ck{4qu5kt5qt5rs17ss5ts}4l{4qu5kt5qt5rs17ss5ts}cm{4qu5kt5qt5rs17ss5ts}cn{4qu5kt5qt5rs17ss5ts}co{4qu5kt5qt5rs17ss5ts}cp{4qu5kt5qt5rs17ss5ts}6l{4qu5ou5qw5rt17su5tu}5q{ckuclucmucnucoucpu4lu}5r{ckuclucmucnucoucpu4lu}7q{cksclscmscnscoscps4ls}6p{4qu5ou5qw5rt17sw5tw}ek{4qu5ou5qw5rt17su5tu}el{4qu5ou5qw5rt17su5tu}em{4qu5ou5qw5rt17su5tu}en{4qu5ou5qw5rt17su5tu}eo{4qu5ou5qw5rt17su5tu}ep{4qu5ou5qw5rt17su5tu}es{17ss5ts5qs4qu}et{4qu5ou5qw5rt17sw5tw}eu{4qu5ou5qw5rt17ss5ts}ev{17ss5ts5qs4qu}6z{17sw5tw5ou5qw5rs}fm{17sw5tw5ou5qw5rs}7n{201ts}fo{17sw5tw5ou5qw5rs}fp{17sw5tw5ou5qw5rs}fq{17sw5tw5ou5qw5rs}7r{cksclscmscnscoscps4ls}fs{17sw5tw5ou5qw5rs}ft{17su5tu}fu{17su5tu}fv{17su5tu}fw{17su5tu}fz{cksclscmscnscoscps4ls}}}" ) , "Helvetica-Bold" : sr ( " { 'widths' { k3s2q4scx1w201n3r201o6o201s1w201t1w201u1w201w3m201x3m201y3m2k1w2l2l202m2n2n3r2o3r2p5t202q6o2r1s2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v2l3w3u3x3u3y3u3z3x4k6l4l4s4m4s4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3r4v4s4w3x4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v2l5w1w5x2l5y3u5z3r6k2l6l3r6m3x6n3r6o3x6p3r6q2l6r3x6s3x6t1w6u1w6v3r
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* Licensed under the MIT License .
* http : //opensource.org/licenses/mit-license
* /
2020-09-13 21:56:45 +00:00
function ( er ) { var tr = function e ( er ) { for ( var e = er . length , tr = new Uint8Array ( e ) , rr = 0 ; rr < e ; rr ++ ) tr [ rr ] = er . charCodeAt ( rr ) ; return tr } ; er . API . events . push ( [ "addFont" , function ( rr ) { var nr = void 0 , ar = rr . font , ir = rr . instance ; if ( ! ar . isStandardFont ) { if ( void 0 === ir ) throw new Error ( "Font does not exist in vFS, import fonts or remove declaration doc.addFont('" + ar . postScriptName + "')." ) ; if ( "string" != typeof ( nr = ! 1 === ir . existsFileInVFS ( ar . postScriptName ) ? ir . loadFile ( ar . postScriptName ) : ir . getFileFromVFS ( ar . postScriptName ) ) ) throw new Error ( "Font is not stored as string-data in vFS, import fonts or remove declaration doc.addFont('" + ar . postScriptName + "')." ) ; ! function ( rr , nr ) { nr = /^\x00\x01\x00\x00/ . test ( nr ) ? tr ( nr ) : tr ( sf ( nr ) ) , rr . metadata = er . API . TTFFont . open ( nr ) , rr . metadata . Unicode = rr . metadata . Unicode || { encoding : { } , kerning : { } , widths : [ ] } , rr . metadata . glyIdsUsed = [ 0 ] } ( ar , nr ) } } ] ) } ( g ) ,
2020-09-04 20:34:30 +00:00
/ * * @ l i c e n s e
2020-09-08 23:35:47 +00:00
* Copyright ( c ) 2012 Willow Systems Corporation , willow - systems . com
*
* Permission is hereby granted , free of charge , to any person obtaining
* a copy of this software and associated documentation files ( the
* "Software" ) , to deal in the Software without restriction , including
* without limitation the rights to use , copy , modify , merge , publish ,
* distribute , sublicense , and / or sell copies of the Software , and to
* permit persons to whom the Software is furnished to do so , subject to
* the following conditions :
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software .
*
* THE SOFTWARE IS PROVIDED "AS IS" , WITHOUT WARRANTY OF ANY KIND ,
* EXPRESS OR IMPLIED , INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY , FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT . IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM , DAMAGES OR OTHER LIABILITY , WHETHER IN AN ACTION
* OF CONTRACT , TORT OR OTHERWISE , ARISING FROM , OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE .
* === === === === === === === === === === === === === === === === === === === === === === ==
* /
2020-09-13 21:56:45 +00:00
function ( er ) { function r ( ) { return ( af . canvg ? Promise . resolve ( af . canvg ) : Promise . resolve ( ) . then ( ( function ( ) { return tw } ) ) ) . catch ( ( function ( er ) { return Promise . reject ( new Error ( "Could not load dompurify: " + er ) ) } ) ) . then ( ( function ( er ) { return er . default ? er . default : er } ) ) } g . API . addSvgAsImage = function ( er , tr , rr , nr , ar , ir , or , sr ) { if ( isNaN ( tr ) || isNaN ( rr ) ) throw of . error ( "jsPDF.addSvgAsImage: Invalid coordinates" , arguments ) , new Error ( "Invalid coordinates passed to jsPDF.addSvgAsImage" ) ; if ( isNaN ( nr ) || isNaN ( ar ) ) throw of . error ( "jsPDF.addSvgAsImage: Invalid measurements" , arguments ) , new Error ( "Invalid measurements (width and/or height) passed to jsPDF.addSvgAsImage" ) ; var lr = document . createElement ( "canvas" ) ; lr . width = nr , lr . height = ar ; var cr = lr . getContext ( "2d" ) ; cr . fillStyle = "#fff" , cr . fillRect ( 0 , 0 , lr . width , lr . height ) ; var ur = { ignoreMouse : ! 0 , ignoreAnimation : ! 0 , ignoreDimensions : ! 0 } , dr = this ; return r ( ) . then ( ( function ( tr ) { return tr . Canvg . fromString ( cr , er , ur ) } ) , ( function ( ) { return Promise . reject ( new Error ( "Could not load canvg." ) ) } ) ) . then ( ( function ( er ) { return er . render ( ur ) } ) ) . then ( ( function ( ) { dr . addImage ( lr . toDataURL ( "image/jpeg" , 1 ) , tr , rr , nr , ar , or , sr ) } ) ) } } ( ) , g . API . putTotalPages = function ( er ) { var tr , rr = 0 ; parseInt ( this . internal . getFont ( ) . id . substr ( 1 ) , 10 ) < 15 ? ( tr = new RegExp ( er , "g" ) , rr = this . internal . getNumberOfPages ( ) ) : ( tr = new RegExp ( this . pdfEscape16 ( er , this . internal . getFont ( ) ) , "g" ) , rr = this . pdfEscape16 ( this . internal . getNumberOfPages ( ) + "" , this . internal . getFont ( ) ) ) ; for ( var nr = 1 ; nr <= this . internal . getNumberOfPages ( ) ; nr ++ ) for ( var ar = 0 ; ar < this . internal . pages [ nr ] . length ; ar ++ ) this . internal . pages [ nr ] [ ar ] = this . internal . pages [ nr ] [ ar ] . replace ( tr , rr ) ; return this } , g . API . viewerPreferences = function ( er , tr ) { var rr ; er = er || { } , tr = tr || ! 1 ; var nr , ar , ir , or = { HideToolbar : { defaultValue : ! 1 , value : ! 1 , type : "boolean" , explicitSet : ! 1 , valueSet : [ ! 0 , ! 1 ] , pdfVersion : 1.3 } , HideMenubar : { defaultValue : ! 1 , value : ! 1 , type : "boolean" , explicitSet : ! 1 , valueSet : [ ! 0 , ! 1 ] , pdfVersion : 1.3 } , HideWindowUI : { defaultValue : ! 1 , value : ! 1 , type : "boolean" , explicitSet : ! 1 , valueSet : [ ! 0 , ! 1 ] , pdfVersion : 1.3 } , FitWindow : { defaultValue : ! 1 , value : ! 1 , type : "boolean" , explicitSet : ! 1 , valueSet : [ ! 0 , ! 1 ] , pdfVersion : 1.3 } , CenterWindow : { defaultValue : ! 1 , value : ! 1 , type : "boolean" , explicitSet : ! 1 , valueSet : [ ! 0 , ! 1 ] , pdfVersion : 1.3 } , DisplayDocTitle : { defaultValue : ! 1 , value : ! 1 , type : "boolean" , explicitSet : ! 1 , valueSet : [ ! 0 , ! 1 ] , pdfVersion : 1.4 } , NonFullScreenPageMode : { defaultValue : "UseNone" , value : "UseNone" , type : "name" , explicitSet : ! 1 , valueSet : [ "UseNone" , "UseOutlines" , "UseThumbs" , "UseOC" ] , pdfVersion : 1.3 } , Direction : { defaultValue : "L2R" , value : "L2R" , type : "name" , explicitSet : ! 1 , valueSet : [ "L2R" , "R2L" ] , pdfVersion : 1.3 } , ViewArea : { defaultValue : "CropBox" , value : "CropBox" , type : "name" , explicitSet : ! 1 , valueSet : [ "MediaBox" , "CropBox" , "TrimBox" , "BleedBox" , "ArtBox" ] , pdfVersion : 1.4 } , ViewClip : { defaultValue : "CropBox" , value : "CropBox" , type : "name" , explicitSet : ! 1 , valueSet : [ "MediaBox" , "CropBox" , "TrimBox" , "BleedBox" , "ArtBox" ] , pdfVersion : 1.4 } , PrintArea : { defaultValue : "CropBox" , value : "CropBox" , type : "name" , explicitSet : ! 1 , valueSet : [ "MediaBox" , "CropBox" , "TrimBox" , "BleedBox" , "ArtBox" ] , pdfVersion : 1.4 } , PrintClip : { defaultValue : "CropBox" , value : "CropBox" , type : "name" , explicitSet : ! 1 , valueSet : [ "MediaBox" , "CropBox" , "TrimBox" , "BleedBox" , "ArtBox" ] , pdfVersion : 1.4 } , PrintScaling : { defaultValue : "AppDefault" , value : "AppDefault" , type : "name" , explicitSet : ! 1 , valueSet : [ "AppDefault" , "None" ] , pdfVersion : 1.6 } , Duplex : { defaultValue : "" , value : "none" , type : "name" , explicitSet : ! 1 , valueSet : [ "Simplex" , "DuplexFlipShortEdge" , "DuplexFlipLongEdge" , "none" ] , pdfVersion : 1.7 } , PickTrayByPDFSize : { defaultValue : ! 1 , value : ! 1 , type : "boolean" , explicitSet : ! 1 , valueSet : [ ! 0 , ! 1 ] , pdfVersion : 1.7 } , PrintPageRange : { defaultValue : "" , value : "" , type : "array" , explicitSet : ! 1 , valueSet : null , pdfVersion : 1.7 } , NumCopies : { defaultValue : 1 , value : 1 , type : "integer" , explicitSet : ! 1 , valueSet : null , pdfVersion : 1.7 } } , sr = Object . keys ( or ) , lr = [ ] , cr = 0 , ur = 0 , dr = 0 ; function f ( er , tr ) { var rr , nr = ! 1 ; for ( rr = 0 ; rr < er . length ; rr += 1 ) er [ rr ] === tr && ( nr = ! 0 ) ; return nr } if ( void 0 === this . internal . viewerpreferences && ( this . internal . viewerpreferences = { } , this . internal . viewerpreferences . configuration = JSON . parse ( JSON . stringify ( or ) ) , this . int
2020-09-04 20:34:30 +00:00
/ * * = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
2020-09-08 23:35:47 +00:00
* @ license
* jsPDF XMP metadata plugin
* Copyright ( c ) 2016 Jussi Utunen , u - jussi @ suomi24 . fi
*
* Permission is hereby granted , free of charge , to any person obtaining
* a copy of this software and associated documentation files ( the
* "Software" ) , to deal in the Software without restriction , including
* without limitation the rights to use , copy , modify , merge , publish ,
* distribute , sublicense , and / or sell copies of the Software , and to
* permit persons to whom the Software is furnished to do so , subject to
* the following conditions :
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software .
*
* THE SOFTWARE IS PROVIDED "AS IS" , WITHOUT WARRANTY OF ANY KIND ,
* EXPRESS OR IMPLIED , INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY , FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT . IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM , DAMAGES OR OTHER LIABILITY , WHETHER IN AN ACTION
* OF CONTRACT , TORT OR OTHERWISE , ARISING FROM , OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE .
* === === === === === === === === === === === === === === === === === === === === === === ==
* /
2020-09-13 21:56:45 +00:00
function ( er ) { var tr = function e ( ) { var er = '<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"><rdf:Description rdf:about="" xmlns:jspdf="' + this . internal . _ _metadata _ _ . namespaceuri + '"><jspdf:metadata>' , e = unescape ( encodeURIComponent ( '<x:xmpmeta xmlns:x="adobe:ns:meta/">' ) ) , tr = unescape ( encodeURIComponent ( er ) ) , rr = unescape ( encodeURIComponent ( this . internal . _ _metadata _ _ . metadata ) ) , nr = unescape ( encodeURIComponent ( "</jspdf:metadata></rdf:Description></rdf:RDF>" ) ) , ar = unescape ( encodeURIComponent ( "</x:xmpmeta>" ) ) , ir = tr . length + rr . length + nr . length + e . length + ar . length ; this . internal . _ _metadata _ _ . metadata _object _number = this . internal . newObject ( ) , this . internal . write ( "<< /Type /Metadata /Subtype /XML /Length " + ir + " >>" ) , this . internal . write ( "stream" ) , this . internal . write ( e + tr + rr + nr + ar ) , this . internal . write ( "endstream" ) , this . internal . write ( "endobj" ) } , rr = function n ( ) { this . internal . _ _metadata _ _ . metadata _object _number && this . internal . write ( "/Metadata " + this . internal . _ _metadata _ _ . metadata _object _number + " 0 R" ) } ; er . addMetadata = function ( er , nr ) { return void 0 === this . internal . _ _metadata _ _ && ( this . internal . _ _metadata _ _ = { metadata : er , namespaceuri : nr || "http://jspdf.default.namespaceuri/" } , this . internal . events . subscribe ( "putCatalog" , rr ) , this . internal . events . subscribe ( "postPutResources" , tr ) ) , this } } ( g . API ) , function ( er ) { var tr = er . API , rr = tr . pdfEscape16 = function ( er , tr ) { for ( var rr , nr = tr . metadata . Unicode . widths , ar = [ "" , "0" , "00" , "000" , "0000" ] , ir = [ "" ] , or = 0 , sr = er . length ; or < sr ; ++ or ) { if ( rr = tr . metadata . characterToGlyph ( er . charCodeAt ( or ) ) , tr . metadata . glyIdsUsed . push ( rr ) , tr . metadata . toUnicode [ rr ] = er . charCodeAt ( or ) , - 1 == nr . indexOf ( rr ) && ( nr . push ( rr ) , nr . push ( [ parseInt ( tr . metadata . widthOfGlyph ( rr ) , 10 ) ] ) ) , "0" == rr ) return ir . join ( "" ) ; rr = rr . toString ( 16 ) , ir . push ( ar [ 4 - rr . length ] , rr ) } return ir . join ( "" ) } , nr = function r ( er ) { var tr , rr , r , nr , ar , ir , or ; for ( ar = "/CIDInit /ProcSet findresource begin\n12 dict begin\nbegincmap\n/CIDSystemInfo <<\n /Registry (Adobe)\n /Ordering (UCS)\n /Supplement 0\n>> def\n/CMapName /Adobe-Identity-UCS def\n/CMapType 2 def\n1 begincodespacerange\n<0000><ffff>\nendcodespacerange" , r = [ ] , ir = 0 , or = ( rr = Object . keys ( er ) . sort ( ( function ( er , tr ) { return er - tr } ) ) ) . length ; ir < or ; ir ++ ) tr = rr [ ir ] , r . length >= 100 && ( ar += "\n" + r . length + " beginbfchar\n" + r . join ( "\n" ) + "\nendbfchar" , r = [ ] ) , void 0 !== er [ tr ] && null !== er [ tr ] && "function" == typeof er [ tr ] . toString && ( nr = ( "0000" + er [ tr ] . toString ( 16 ) ) . slice ( - 4 ) , tr = ( "0000" + ( + tr ) . toString ( 16 ) ) . slice ( - 4 ) , r . push ( "<" + tr + "><" + nr + ">" ) ) ; return r . length && ( ar += "\n" + r . length + " beginbfchar\n" + r . join ( "\n" ) + "\nendbfchar\n" ) , ar + "endcmap\nCMapName currentdict /CMap defineresource pop\nend\nend" } ; tr . events . push ( [ "putFont" , function ( tr ) { ! function ( tr ) { var rr = tr . font , ar = tr . out , ir = tr . newObject , or = tr . putStream , sr = tr . pdfEscapeWithNeededParanthesis ; if ( rr . metadata instanceof er . API . TTFFont && "Identity-H" === rr . encoding ) { for ( var lr = rr . metadata . Unicode . widths , cr = rr . metadata . subset . encode ( rr . metadata . glyIdsUsed , 1 ) , ur = "" , dr = 0 ; dr < cr . length ; dr ++ ) ur += String . fromCharCode ( cr [ dr ] ) ; var hr = ir ( ) ; or ( { data : ur , addLength1 : ! 0 } ) , ar ( "endobj" ) ; var Ar = ir ( ) ; or ( { data : nr ( rr . metadata . toUnicode ) , addLength1 : ! 0 } ) , ar ( "endobj" ) ; var pr = ir ( ) ; ar ( "<<" ) , ar ( "/Type /FontDescriptor" ) , ar ( "/FontName /" + sr ( rr . fontName ) ) , ar ( "/FontFile2 " + hr + " 0 R" ) , ar ( "/FontBBox " + er . API . PDFObject . convert ( rr . metadata . bbox ) ) , ar ( "/Flags " + rr . metadata . flags ) , ar ( "/StemV " + rr . metadata . stemV ) , ar ( "/ItalicAngle " + rr . metadata . italicAngle ) , ar ( "/Ascent " + rr . metadata . ascender ) , ar ( "/Descent " + rr . metadata . decender ) , ar ( "/CapHeight " + rr . metadata . capHeight ) , ar ( ">>" ) , ar ( "endobj" ) ; var gr = ir ( ) ; ar ( "<<" ) , ar ( "/Type /Font" ) , ar ( "/BaseFont /" + sr ( rr . fontName ) ) , ar ( "/FontDescriptor " + pr + " 0 R" ) , ar ( "/W " + er . API . PDFObject . convert ( lr ) ) , ar ( "/CIDToGIDMap /Identity" ) , ar ( "/DW 1000" ) , ar ( "/Subtype /CIDFontType2" ) , ar ( "/CIDSystemInfo" ) , ar ( "<<" ) , ar ( "/Supplement 0" ) , ar ( "/Registry (Adobe)" ) , ar ( "/Ordering (" + rr . encoding + ")" ) , ar ( ">>" ) , ar ( ">>" ) , ar ( "endobj" ) , rr . objectNumber = ir ( ) , ar ( "<<" ) , ar ( "/Type /Font" ) , ar ( "/Subtype /Type0" ) , ar ( "/ToUnicode " + Ar + " 0 R" ) , ar ( "/BaseFont /" + sr ( rr . fontName ) ) , ar ( "/Encoding /" + rr . encoding ) , ar ( "/DescendantFonts [" + gr + " 0 R]" ) , ar ( ">>" ) , ar ( "endobj" ) , rr . i
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* jsPDF virtual FileSystem functionality
*
* Licensed under the MIT License .
* http : //opensource.org/licenses/mit-license
* /
2020-09-04 20:34:30 +00:00
function ( er ) { var tr = function e ( ) { return void 0 === this . internal . vFS && ( this . internal . vFS = { } ) , ! 0 } ; er . existsFileInVFS = function ( er ) { return tr . call ( this ) , void 0 !== this . internal . vFS [ er ] } , er . addFileToVFS = function ( er , rr ) { return tr . call ( this ) , this . internal . vFS [ er ] = rr , this } , er . getFileFromVFS = function ( er ) { return tr . call ( this ) , void 0 !== this . internal . vFS [ er ] ? this . internal . vFS [ er ] : null } } ( g . API ) ,
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* Unicode Bidi Engine based on the work of Alex Shensis ( @ asthensis )
* MIT License
* /
2020-09-13 21:56:45 +00:00
function ( er ) { er . _ _bidiEngine _ _ = er . prototype . _ _bidiEngine _ _ = function ( er ) { var rr , nr , ar , ir , or , sr , lr , cr = tr , ur = [ [ 0 , 3 , 0 , 1 , 0 , 0 , 0 ] , [ 0 , 3 , 0 , 1 , 2 , 2 , 0 ] , [ 0 , 3 , 0 , 17 , 2 , 0 , 1 ] , [ 0 , 3 , 5 , 5 , 4 , 1 , 0 ] , [ 0 , 3 , 21 , 21 , 4 , 0 , 1 ] , [ 0 , 3 , 5 , 5 , 4 , 2 , 0 ] ] , dr = [ [ 2 , 0 , 1 , 1 , 0 , 1 , 0 ] , [ 2 , 0 , 1 , 1 , 0 , 2 , 0 ] , [ 2 , 0 , 2 , 1 , 3 , 2 , 0 ] , [ 2 , 0 , 2 , 33 , 3 , 1 , 1 ] ] , hr = { L : 0 , R : 1 , EN : 2 , AN : 3 , N : 4 , B : 5 , S : 6 } , Ar = { 0 : 0 , 5 : 1 , 6 : 2 , 7 : 3 , 32 : 4 , 251 : 5 , 254 : 6 , 255 : 7 } , pr = [ "(" , ")" , "(" , "<" , ">" , "<" , "[" , "]" , "[" , "{" , "}" , "{" , "«" , "»" , "«" , "‹ " , "› " , "‹ " , "⁅" , "⁆" , "⁅" , "⁽" , "⁾" , "⁽" , "₍" , "₎" , "₍" , "≤" , "≥" , "≤" , "〈" , "〉" , "〈" , "﹙" , "﹚" , "﹙" , "﹛" , "﹜" , "﹛" , "﹝" , "﹞" , "﹝" , "﹤" , "﹥" , "﹤" ] , gr = new RegExp ( /^([1-4|9]|1[0-9]|2[0-9]|3[0168]|4[04589]|5[012]|7[78]|159|16[0-9]|17[0-2]|21[569]|22[03489]|250)$/ ) , fr = ! 1 , mr = 0 ; this . _ _bidiEngine _ _ = { } ; var _r = function b ( er ) { var tr = er . charCodeAt ( ) , rr = tr >> 8 , nr = Ar [ rr ] ; return void 0 !== nr ? cr [ 256 * nr + ( 255 & tr ) ] : 252 === rr || 253 === rr ? "AL" : gr . test ( rr ) ? "L" : 8 === rr ? "R" : "N" } , vr = function y ( er ) { for ( var tr , rr = 0 ; rr < er . length ; rr ++ ) { if ( "L" === ( tr = _r ( er . charAt ( rr ) ) ) ) return ! 1 ; if ( "R" === tr ) return ! 0 } return ! 1 } , yr = function w ( er , tr , or , sr ) { var lr , cr , ur , dr , hr = tr [ sr ] ; switch ( hr ) { case "L" : case "R" : fr = ! 1 ; break ; case "N" : case "AN" : break ; case "EN" : fr && ( hr = "AN" ) ; break ; case "AL" : fr = ! 0 , hr = "R" ; break ; case "WS" : hr = "N" ; break ; case "CS" : sr < 1 || sr + 1 >= tr . length || "EN" !== ( lr = or [ sr - 1 ] ) && "AN" !== lr || "EN" !== ( cr = tr [ sr + 1 ] ) && "AN" !== cr ? hr = "N" : fr && ( cr = "AN" ) , hr = cr === lr ? cr : "N" ; break ; case "ES" : hr = "EN" === ( lr = sr > 0 ? or [ sr - 1 ] : "B" ) && sr + 1 < tr . length && "EN" === tr [ sr + 1 ] ? "EN" : "N" ; break ; case "ET" : if ( sr > 0 && "EN" === or [ sr - 1 ] ) { hr = "EN" ; break } if ( fr ) { hr = "N" ; break } for ( ur = sr + 1 , dr = tr . length ; ur < dr && "ET" === tr [ ur ] ; ) ur ++ ; hr = ur < dr && "EN" === tr [ ur ] ? "EN" : "N" ; break ; case "NSM" : if ( ar && ! ir ) { for ( dr = tr . length , ur = sr + 1 ; ur < dr && "NSM" === tr [ ur ] ; ) ur ++ ; if ( ur < dr ) { var Ar = er [ sr ] , pr = Ar >= 1425 && Ar <= 2303 || 64286 === Ar ; if ( lr = tr [ ur ] , pr && ( "R" === lr || "AL" === lr ) ) { hr = "R" ; break } } } hr = sr < 1 || "B" === ( lr = tr [ sr - 1 ] ) ? "N" : or [ sr - 1 ] ; break ; case "B" : fr = ! 1 , rr = ! 0 , hr = mr ; break ; case "S" : nr = ! 0 , hr = "N" ; break ; case "LRE" : case "RLE" : case "LRO" : case "RLO" : case "PDF" : fr = ! 1 ; break ; case "BN" : hr = "N" } return hr } , br = function N ( er , tr , rr ) { var nr = er . split ( "" ) ; return rr && wr ( nr , rr , { hiLevel : mr } ) , nr . reverse ( ) , tr && tr . reverse ( ) , nr . join ( "" ) } , wr = function L ( er , tr , ar ) { var ir , or , sr , lr , cr , Ar = - 1 , pr = er . length , gr = 0 , vr = [ ] , br = mr ? dr : ur , L = [ ] ; for ( fr = ! 1 , rr = ! 1 , nr = ! 1 , or = 0 ; or < pr ; or ++ ) L [ or ] = _r ( er [ or ] ) ; for ( sr = 0 ; sr < pr ; sr ++ ) { if ( cr = gr , vr [ sr ] = yr ( er , L , vr , sr ) , ir = 240 & ( gr = br [ cr ] [ hr [ vr [ sr ] ] ] ) , gr &= 15 , tr [ sr ] = lr = br [ gr ] [ 5 ] , ir > 0 ) if ( 16 === ir ) { for ( or = Ar ; or < sr ; or ++ ) tr [ or ] = 1 ; Ar = - 1 } else Ar = - 1 ; if ( br [ gr ] [ 6 ] ) - 1 === Ar && ( Ar = sr ) ; else if ( Ar > - 1 ) { for ( or = Ar ; or < sr ; or ++ ) tr [ or ] = lr ; Ar = - 1 } "B" === L [ sr ] && ( tr [ sr ] = 0 ) , ar . hiLevel |= lr } nr && function ( er , tr , rr ) { for ( var nr = 0 ; nr < rr ; nr ++ ) if ( "S" === er [ nr ] ) { tr [ nr ] = mr ; for ( var ar = nr - 1 ; ar >= 0 && "WS" === er [ ar ] ; ar -- ) tr [ ar ] = mr } } ( L , tr , pr ) } , kr = function x ( er , tr , nr , ar , ir ) { if ( ! ( ir . hiLevel < er ) ) { if ( 1 === er && 1 === mr && ! rr ) return tr . reverse ( ) , void ( nr && nr . reverse ( ) ) ; for ( var or , sr , lr , cr , ur = tr . length , dr = 0 ; dr < ur ; ) { if ( ar [ dr ] >= er ) { for ( lr = dr + 1 ; lr < ur && ar [ lr ] >= er ; ) lr ++ ; for ( cr = dr , sr = lr - 1 ; cr < sr ; cr ++ , sr -- ) or = tr [ cr ] , tr [ cr ] = tr [ sr ] , tr [ sr ] = or , nr && ( or = nr [ cr ] , nr [ cr ] = nr [ sr ] , nr [ sr ] = or ) ; dr = lr } dr ++ } } } , xr = function A ( er , tr , rr ) { var nr = er . split ( "" ) , ar = { hiLevel : mr } ; return rr || ( rr = [ ] ) , wr ( nr , rr , ar ) , function ( er , tr , rr ) { if ( 0 !== rr . hiLevel && lr ) for ( var nr , ar = 0 ; ar < er . length ; ar ++ ) 1 === tr [ ar ] && ( nr = pr . indexOf ( er [ ar ] ) ) >= 0 && ( er [ ar ] = pr [ nr + 1 ] ) } ( nr , rr , ar ) , kr ( 2 , nr , tr , rr , ar ) , kr ( 1 , nr , tr , rr , ar ) , nr . join ( "" ) } ; return this . _ _bidiEngine _ _ . doBidiReorder = function ( er , tr , rr ) { if ( function ( er , tr ) { if ( tr ) for ( var rr = 0 ; rr < er . length ; rr ++ ) tr [ rr ] = rr ; void 0 === ir && ( ir = vr ( er ) ) , void 0 === sr && ( sr = vr ( er ) ) } ( er , tr ) , ar || ! or || sr ) if ( ar && or && ir ^ sr ) mr = ir ? 1 : 0 , er = br ( er , tr , rr ) ; else if ( ! ar && or && sr ) mr = ir ? 1 : 0 , er = xr ( er , tr , rr ) , er = br ( er , tr ) ; else if ( ! ar || ir || or || sr ) { if ( ar && ! or && ir ^ sr ) er = br ( er , tr ) , ir ? ( mr = 0 , er = xr ( er , tr , rr ) ) : ( mr = 1 , er = xr ( er , tr , rr ) , er = br ( er , tr ) ) ; else if ( ar && ir && ! or && sr ) mr = 1 , er = xr ( er , tr , rr ) , er = br ( er , tr ) ; else if ( ! ar && ! or && ir ^ sr ) { var nr = lr ; ir ? ( mr = 1 , er = xr ( er , tr , rr ) , mr = 0 , lr = ! 1 , er = xr ( er , tr , rr ) , lr = nr ) : ( mr = 0 , er = xr ( er , tr , rr ) , er = br ( er , tr ) , mr = 1 , lr = ! 1 , er = xr ( er , tr , rr ) , lr = nr , er = br ( er , tr ) ) } } else mr = 0 , er = xr ( er , tr , rr ) ; else mr = ir ? 1 : 0 , er = xr ( er , tr , rr ) ; return er } , this . _ _bidiEngine _ _ . setOptions = function ( er ) { er && (
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ license
* Copyright ( c ) 2012 chick307 < chick307 @ gmail . com >
*
* Licensed under the MIT License .
* http : //opensource.org/licenses/mit-license
* /
2020-09-13 21:56:45 +00:00
function ( er , tr ) { er . API . adler32cs = function ( ) { var er , tr , rr , nr , ar , ir = "function" == typeof ArrayBuffer && "function" == typeof Uint8Array , or = null , sr = function ( ) { if ( ! ir ) return function ( ) { return ! 1 } ; try { var er = { } ; "function" == typeof er . Buffer && ( or = er . Buffer ) } catch ( er ) { } return function ( er ) { return er instanceof ArrayBuffer || null !== or && er instanceof or } } ( ) , lr = null !== or ? function ( er ) { return new or ( er , "utf8" ) . toString ( "binary" ) } : function ( er ) { return unescape ( encodeURIComponent ( er ) ) } , cr = function i ( er , tr ) { for ( var rr = 65535 & er , nr = er >>> 16 , i = 0 , ar = tr . length ; i < ar ; i ++ ) nr = ( nr + ( rr = ( rr + ( 255 & tr . charCodeAt ( i ) ) ) % 65521 ) ) % 65521 ; return ( nr << 16 | rr ) >>> 0 } , ur = function a ( er , tr ) { for ( var rr = 65535 & er , nr = er >>> 16 , ar = 0 , a = tr . length ; ar < a ; ar ++ ) nr = ( nr + ( rr = ( rr + tr [ ar ] ) % 65521 ) ) % 65521 ; return ( nr << 16 | rr ) >>> 0 } , dr = { } , hr = dr . Adler32 = ( ( ar = ( nr = function l ( er ) { if ( ! ( this instanceof nr ) ) throw new TypeError ( "Constructor cannot called be as a function." ) ; if ( ! isFinite ( er = null === er ? 1 : + er ) ) throw new Error ( "First arguments needs to be a finite number." ) ; this . checksum = er >>> 0 } ) . prototype = { } ) . constructor = nr , nr . from = ( ( er = function u ( er ) { if ( ! ( this instanceof nr ) ) throw new TypeError ( "Constructor cannot called be as a function." ) ; if ( null === er ) throw new Error ( "First argument needs to be a string." ) ; this . checksum = cr ( 1 , er . toString ( ) ) } ) . prototype = ar , er ) , nr . fromUtf8 = ( ( tr = function c ( er ) { if ( ! ( this instanceof nr ) ) throw new TypeError ( "Constructor cannot called be as a function." ) ; if ( null === er ) throw new Error ( "First argument needs to be a string." ) ; var tr = lr ( er . toString ( ) ) ; this . checksum = cr ( 1 , tr ) } ) . prototype = ar , tr ) , ir && ( nr . fromBuffer = ( ( rr = function h ( er ) { if ( ! ( this instanceof nr ) ) throw new TypeError ( "Constructor cannot called be as a function." ) ; if ( ! sr ( er ) ) throw new Error ( "First argument needs to be ArrayBuffer." ) ; var tr = new Uint8Array ( er ) ; return this . checksum = ur ( 1 , tr ) } ) . prototype = ar , rr ) ) , ar . update = function ( er ) { if ( null === er ) throw new Error ( "First argument needs to be a string." ) ; return er = er . toString ( ) , this . checksum = cr ( this . checksum , er ) } , ar . updateUtf8 = function ( er ) { if ( null === er ) throw new Error ( "First argument needs to be a string." ) ; var tr = lr ( er . toString ( ) ) ; return this . checksum = cr ( this . checksum , tr ) } , ir && ( ar . updateBuffer = function ( er ) { if ( ! sr ( er ) ) throw new Error ( "First argument needs to be ArrayBuffer." ) ; var tr = new Uint8Array ( er ) ; return this . checksum = ur ( this . checksum , tr ) } ) , ar . clone = function ( ) { return new hr ( this . checksum ) } , nr ) ; return dr . from = function ( er ) { if ( null === er ) throw new Error ( "First argument needs to be a string." ) ; return cr ( 1 , er . toString ( ) ) } , dr . fromUtf8 = function ( er ) { if ( null === er ) throw new Error ( "First argument needs to be a string." ) ; var tr = lr ( er . toString ( ) ) ; return cr ( 1 , tr ) } , ir && ( dr . fromBuffer = function ( er ) { if ( ! sr ( er ) ) throw new Error ( "First argument need to be ArrayBuffer." ) ; var tr = new Uint8Array ( er ) ; return ur ( 1 , tr ) } ) , dr } ( ) } ( g ) , _export ( { target : "Array" , proto : ! 0 , forced : KA !== [ ] . lastIndexOf } , { lastIndexOf : KA } ) , _export ( { target : "String" , proto : ! 0 , forced : stringHtmlForced ( "anchor" ) } , { anchor : function anchor ( er ) { return createHtml ( this , "a" , "name" , er ) } } ) ;
2020-09-04 20:34:30 +00:00
/*! https://mths.be/cssesc v3.0.0 by @mathias */
2020-09-13 21:56:45 +00:00
var Om = { } . hasOwnProperty , Dm = /[ -,\.\/:-@\[-\^`\{-~]/ , jm = /[ -,\.\/:-@\[\]\^`\{-~]/ , Hm = /(^|\\+)?(\\[A-F0-9]{1,6})\x20(?![a-fA-F0-9\x20])/g , Gm = function cssesc ( er , tr ) { "single" != ( tr = function merge ( er , tr ) { if ( ! er ) return tr ; var rr = { } ; for ( var nr in tr ) rr [ nr ] = Om . call ( er , nr ) ? er [ nr ] : tr [ nr ] ; return rr } ( tr , cssesc . options ) ) . quotes && "double" != tr . quotes && ( tr . quotes = "single" ) ; for ( var rr = "double" == tr . quotes ? '"' : "'" , nr = tr . isIdentifier , ar = er . charAt ( 0 ) , ir = "" , or = 0 , sr = er . length ; or < sr ; ) { var lr = er . charAt ( or ++ ) , cr = lr . charCodeAt ( ) , ur = void 0 ; if ( cr < 32 || cr > 126 ) { if ( cr >= 55296 && cr <= 56319 && or < sr ) { var dr = er . charCodeAt ( or ++ ) ; 56320 == ( 64512 & dr ) ? cr = ( ( 1023 & cr ) << 10 ) + ( 1023 & dr ) + 65536 : or -- } ur = "\\" + cr . toString ( 16 ) . toUpperCase ( ) + " " } else ur = tr . escapeEverything ? Dm . test ( lr ) ? "\\" + lr : "\\" + cr . toString ( 16 ) . toUpperCase ( ) + " " : /[\t\n\f\r\x0B]/ . test ( lr ) ? "\\" + cr . toString ( 16 ) . toUpperCase ( ) + " " : "\\" == lr || ! nr && ( '"' == lr && rr == lr || "'" == lr && rr == lr ) || nr && jm . test ( lr ) ? "\\" + lr : lr ; ir += ur } return nr && ( /^-[-\d]/ . test ( ir ) ? ir = "\\-" + ir . slice ( 1 ) : /\d/ . test ( ar ) && ( ir = "\\3" + ar + " " + ir . slice ( 1 ) ) ) , ir = ir . replace ( Hm , ( function ( er , tr , rr ) { return tr && tr . length % 2 ? er : ( tr || "" ) + rr } ) ) , ! nr && tr . wrap ? rr + ir + rr : ir } ; Gm . options = { escapeEverything : ! 1 , isIdentifier : ! 1 , quotes : "single" , wrap : ! 1 } , Gm . version = "3.0.0" ; var zm = Gm , Vm = /[a-z0-9_-]/i , Km = /[\s\t]/ , qm = function parse ( er ) { for ( var tr , rr , nr = ! 0 , ar = 0 , ir = "" , or = 0 , sr = [ ] ; ; ) { if ( rr = er [ or ] , 0 === ar ) { if ( ! rr && nr ) break ; if ( ! rr && ! nr ) throw new Error ( "Parse error" ) ; if ( '"' === rr || "'" === rr ) tr = rr , ar = 1 , nr = ! 1 ; else if ( Km . test ( rr ) ) ; else { if ( ! Vm . test ( rr ) ) throw new Error ( "Parse error" ) ; ar = 3 , nr = ! 1 , or -- } } else if ( 1 === ar ) { if ( ! rr ) throw new Error ( "Parse Error" ) ; "\\" === rr ? ar = 2 : rr === tr ? ( sr . push ( ir ) , ir = "" , ar = 4 ) : ir += rr } else if ( 2 === ar ) { if ( rr !== tr && "\\" !== rr ) throw new Error ( "Parse error" ) ; ir += rr , ar = 1 } else if ( 3 === ar ) { if ( ! rr ) { sr . push ( ir ) ; break } if ( Vm . test ( rr ) ) ir += rr ; else if ( "," === rr ) sr . push ( ir ) , ir = "" , ar = 0 ; else { if ( ! Km . test ( rr ) ) throw new Error ( "Parse error" ) ; ar = 5 } } else if ( 5 === ar ) { if ( ! rr ) { sr . push ( ir ) ; break } if ( Vm . test ( rr ) ) ir += " " + rr , ar = 3 ; else if ( "," === rr ) sr . push ( ir ) , ir = "" , ar = 0 ; else if ( ! Km . test ( rr ) ) throw new Error ( "Parse error" ) } else if ( 4 === ar ) { if ( ! rr ) break ; if ( "," === rr ) ar = 0 ; else if ( ! Km . test ( rr ) ) throw new Error ( "Parse error" ) } or ++ } return sr } , Wm = { a : 7 , c : 6 , h : 1 , l : 2 , m : 2 , r : 4 , q : 4 , s : 4 , t : 2 , v : 1 , z : 0 } , Xm = [ 5760 , 6158 , 8192 , 8193 , 8194 , 8195 , 8196 , 8197 , 8198 , 8199 , 8200 , 8201 , 8202 , 8239 , 8287 , 12288 , 65279 ] ; function isDigit ( er ) { return er >= 48 && er <= 57 } function State ( er ) { this . index = 0 , this . path = er , this . max = er . length , this . result = [ ] , this . param = 0 , this . err = "" , this . segmentStart = 0 , this . data = [ ] } function skipSpaces ( er ) { for ( ; er . index < er . max && ( 10 === ( tr = er . path . charCodeAt ( er . index ) ) || 13 === tr || 8232 === tr || 8233 === tr || 32 === tr || 9 === tr || 11 === tr || 12 === tr || 160 === tr || tr >= 5760 && Xm . indexOf ( tr ) >= 0 ) ; ) er . index ++ ; var tr } function scanFlag ( er ) { var tr = er . path . charCodeAt ( er . index ) ; return 48 === tr ? ( er . param = 0 , void er . index ++ ) : 49 === tr ? ( er . param = 1 , void er . index ++ ) : void ( er . err = "SvgPath: arc flag can be 0 or 1 only (at pos " + er . index + ")" ) } function scanParam ( er ) { var tr , rr = er . index , nr = rr , ar = er . max , ir = ! 1 , or = ! 1 , sr = ! 1 , lr = ! 1 ; if ( nr >= ar ) er . err = "SvgPath: missed param (at pos " + nr + ")" ; else if ( 43 !== ( tr = er . path . charCodeAt ( nr ) ) && 45 !== tr || ( tr = ++ nr < ar ? er . path . charCodeAt ( nr ) : 0 ) , isDigit ( tr ) || 46 === tr ) { if ( 46 !== tr ) { if ( ir = 48 === tr , tr = ++ nr < ar ? er . path . charCodeAt ( nr ) : 0 , ir && nr < ar && tr && isDigit ( tr ) ) return void ( er . err = "SvgPath: numbers started with `0` such as `09` are illegal (at pos " + rr + ")" ) ; for ( ; nr < ar && isDigit ( er . path . charCodeAt ( nr ) ) ; ) nr ++ , or = ! 0 ; tr = nr < ar ? er . path . charCodeAt ( nr ) : 0 } if ( 46 === tr ) { for ( lr = ! 0 , nr ++ ; isDigit ( er . path . charCodeAt ( nr ) ) ; ) nr ++ , sr = ! 0 ; tr = nr < ar ? er . path . charCodeAt ( nr ) : 0 } if ( 101 === tr || 69 === tr ) { if ( lr && ! or && ! sr ) return void ( er . err = "SvgPath: invalid float exponent (at pos " + nr + ")" ) ; if ( 43 !== ( tr = ++ nr < ar ? er . path . charCodeAt ( nr ) : 0 ) && 45 !== tr || nr ++ , ! ( nr < ar && isDigit ( er . path . charCodeAt ( nr ) ) ) ) return void ( er . err = "SvgPath: invalid float exponent (at pos " + nr + ")" ) ; for ( ; nr < ar && isDigit ( er . path . charCodeAt ( nr ) ) ; ) nr ++ } er . index = nr , er . param = parseFloat ( er . path . slice ( rr , nr ) ) + 0 } else er . err = "SvgPath: param should start with 0..9 or `.` (at pos " + nr + ")" } function finalizeSegment ( er ) { var tr , rr ; rr = ( tr = er . path [ er . segmentStart ] ) . toLowerCase (
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ file jGraduate 0.4
*
* jQuery Plugin for a gradient picker
*
* @ module jGraduate
* @ copyright 2010 Jeff Schiller { @ link http : //blog.codedread.com/}, 2010 Alexis Deveria {@link http://a.deveria.com/}
*
* @ license Apache - 2.0
* @ example
* // The Paint object is described below.
* $ . jGraduate . Paint ( ) ; // constructs a 'none' color
* @ example $ . jGraduate . Paint ( { copy : o } ) ; // creates a copy of the paint o
* @ example $ . jGraduate . Paint ( { hex : '#rrggbb' } ) ; // creates a solid color paint with hex = "#rrggbb"
* @ example $ . jGraduate . Paint ( { linearGradient : o , a : 50 } ) ; // creates a linear gradient paint with opacity=0.5
* @ example $ . jGraduate . Paint ( { radialGradient : o , a : 7 } ) ; // creates a radial gradient paint with opacity=0.07
* @ example $ . jGraduate . Paint ( { hex : '#rrggbb' , linearGradient : o } ) ; // throws an exception?
* /
2020-09-13 21:56:45 +00:00
var ex = "http://www.w3.org/2000/svg" , tx = "http://www.w3.org/1999/xlink" ;
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* @ file jPicker ( Adapted from version 1.1 . 6 )
*
* jQuery Plugin for Photoshop style color picker
*
* @ module jPicker
* @ copyright ( c ) 2010 Christopher T . Tillman
* Digital Magic Productions , Inc . ( { @ link http : //www.digitalmagicpro.com/})
* FREE to use , alter , copy , sell , and especially ENHANCE
* @ license MIT
*
* Painstakingly ported from John Dyers ' excellent work on his own color picker based on the Prototype framework .
*
* John Dyers ' website : { @ link http : //johndyer.name}
* Color Picker page : { @ link http : //johndyer.name/photoshop-like-javascript-color-picker/}
* /
2020-09-13 21:56:45 +00:00
function toFixedNumeric ( er , tr ) { return void 0 === tr && ( tr = 0 ) , Math . round ( er * Math . pow ( 10 , tr ) ) / Math . pow ( 10 , tr ) } window . console || ( window . console = { log : function log ( er ) { } , dir : function dir ( er ) { } } ) ; var rx = function isNullish ( er ) { return null == er } ; function _ _variableDynamicImportRuntime0 _ _ ( er ) { switch ( er ) { case "./locale/lang.af.js" : return Promise . resolve ( ) . then ( ( function ( ) { return Mx } ) ) ; case "./locale/lang.ar.js" : return Promise . resolve ( ) . then ( ( function ( ) { return Qx } ) ) ; case "./locale/lang.az.js" : return Promise . resolve ( ) . then ( ( function ( ) { return Ox } ) ) ; case "./locale/lang.be.js" : return Promise . resolve ( ) . then ( ( function ( ) { return Dx } ) ) ; case "./locale/lang.bg.js" : return Promise . resolve ( ) . then ( ( function ( ) { return jx } ) ) ; case "./locale/lang.ca.js" : return Promise . resolve ( ) . then ( ( function ( ) { return Hx } ) ) ; case "./locale/lang.cs.js" : return Promise . resolve ( ) . then ( ( function ( ) { return Gx } ) ) ; case "./locale/lang.cy.js" : return Promise . resolve ( ) . then ( ( function ( ) { return zx } ) ) ; case "./locale/lang.da.js" : return Promise . resolve ( ) . then ( ( function ( ) { return Vx } ) ) ; case "./locale/lang.de.js" : return Promise . resolve ( ) . then ( ( function ( ) { return Kx } ) ) ; case "./locale/lang.el.js" : return Promise . resolve ( ) . then ( ( function ( ) { return qx } ) ) ; case "./locale/lang.en.js" : return Promise . resolve ( ) . then ( ( function ( ) { return Wx } ) ) ; case "./locale/lang.es.js" : return Promise . resolve ( ) . then ( ( function ( ) { return Xx } ) ) ; case "./locale/lang.et.js" : return Promise . resolve ( ) . then ( ( function ( ) { return Yx } ) ) ; case "./locale/lang.fa.js" : return Promise . resolve ( ) . then ( ( function ( ) { return Jx } ) ) ; case "./locale/lang.fi.js" : return Promise . resolve ( ) . then ( ( function ( ) { return $x } ) ) ; case "./locale/lang.fr.js" : return Promise . resolve ( ) . then ( ( function ( ) { return Zx } ) ) ; case "./locale/lang.fy.js" : return Promise . resolve ( ) . then ( ( function ( ) { return eS } ) ) ; case "./locale/lang.ga.js" : return Promise . resolve ( ) . then ( ( function ( ) { return tS } ) ) ; case "./locale/lang.gl.js" : return Promise . resolve ( ) . then ( ( function ( ) { return rS } ) ) ; case "./locale/lang.he.js" : return Promise . resolve ( ) . then ( ( function ( ) { return nS } ) ) ; case "./locale/lang.hi.js" : return Promise . resolve ( ) . then ( ( function ( ) { return aS } ) ) ; case "./locale/lang.hr.js" : return Promise . resolve ( ) . then ( ( function ( ) { return iS } ) ) ; case "./locale/lang.hu.js" : return Promise . resolve ( ) . then ( ( function ( ) { return oS } ) ) ; case "./locale/lang.hy.js" : return Promise . resolve ( ) . then ( ( function ( ) { return sS } ) ) ; case "./locale/lang.id.js" : return Promise . resolve ( ) . then ( ( function ( ) { return lS } ) ) ; case "./locale/lang.is.js" : return Promise . resolve ( ) . then ( ( function ( ) { return cS } ) ) ; case "./locale/lang.it.js" : return Promise . resolve ( ) . then ( ( function ( ) { return uS } ) ) ; case "./locale/lang.ja.js" : return Promise . resolve ( ) . then ( ( function ( ) { return dS } ) ) ; case "./locale/lang.ko.js" : return Promise . resolve ( ) . then ( ( function ( ) { return hS } ) ) ; case "./locale/lang.lt.js" : return Promise . resolve ( ) . then ( ( function ( ) { return AS } ) ) ; case "./locale/lang.lv.js" : return Promise . resolve ( ) . then ( ( function ( ) { return pS } ) ) ; case "./locale/lang.mk.js" : return Promise . resolve ( ) . then ( ( function ( ) { return gS } ) ) ; case "./locale/lang.ms.js" : return Promise . resolve ( ) . then ( ( function ( ) { return fS } ) ) ; case "./locale/lang.mt.js" : return Promise . resolve ( ) . then ( ( function ( ) { return mS } ) ) ; case "./locale/lang.nl.js" : return Promise . resolve ( ) . then ( ( function ( ) { return _S } ) ) ; case "./locale/lang.no.js" : return Promise . resolve ( ) . then ( ( function ( ) { return vS } ) ) ; case "./locale/lang.pl.js" : return Promise . resolve ( ) . then ( ( function ( ) { return yS } ) ) ; case "./locale/lang.pt-BR.js" : return Promise . resolve ( ) . then ( ( function ( ) { return bS } ) ) ; case "./locale/lang.pt-PT.js" : return Promise . resolve ( ) . then ( ( function ( ) { return wS } ) ) ; case "./locale/lang.ro.js" : return Promise . resolve ( ) . then ( ( function ( ) { return kS } ) ) ; case "./locale/lang.ru.js" : return Promise . resolve ( ) . then ( ( function ( ) { return xS } ) ) ; case "./locale/lang.sk.js" : return Promise . resolve ( ) . then ( ( function ( ) { return SS } ) ) ; case "./locale/lang.sl.js" : return Promise . resolve ( ) . then ( ( function ( ) { return CS } ) ) ; case "./locale/lang.sq.js" : return Promise . resolve ( ) . then ( ( function ( ) { return BS } ) ) ; case "./locale/lang.sr.js" : return Promise . resolve ( ) . then ( ( function ( ) { return ES } ) ) ; case "./locale/lang.sv.js" : return Promise . resolve ( ) . then ( ( function ( ) { retu
2020-09-04 20:34:30 +00:00
/ * *
2020-09-08 23:35:47 +00:00
* Localizing script for SVG - edit UI .
* @ module locale
* @ license MIT
*
* @ copyright 2010 Narendra Sisodya
* @ copyright 2010 Alexis Deveria
*
2020-09-13 21:56:45 +00:00
* / _ e x p o r t ( { t a r g e t : " S t r i n g " , p r o t o : ! 0 , f o r c e d : s t r i n g H t m l F o r c e d ( " b o l d " ) } , { b o l d : f u n c t i o n b o l d ( ) { r e t u r n c r e a t e H t m l ( t h i s , " b " , " " , " " ) } } ) ; v a r n x , a x = j Q u e r y , i x = f u n c t i o n s e t S t r i n g s ( e r , t r , r r ) { v a r n r = a x ( " # s v g _ e d i t o r " ) . p a r e n t ( ) ; O b j e c t . e n t r i e s ( t r ) . f o r E a c h ( ( f u n c t i o n ( t r ) { v a r a r = _ s l i c e d T o A r r a y ( t r , 2 ) , i r = a r [ 0 ] , o r = a r [ 1 ] ; i f ( o r ) { r r & & ( i r = " # " + i r ) ; v a r s r = n r . f i n d ( i r ) ; i f ( s r . l e n g t h ) { v a r l r = s r [ 0 ] ; s w i t c h ( e r ) { c a s e " a r i a - l a b e l " : l r . s e t A t t r i b u t e ( " a r i a - l a b e l " , o r ) ; b r e a k ; c a s e " c o n t e n t " : _ t o C o n s u m a b l e A r r a y ( l r . c h i l d N o d e s ) . s o m e ( ( f u n c t i o n ( e r ) { r e t u r n ! ( 3 ! = = e r . n o d e T y p e | | ! e r . t e x t C o n t e n t . t r i m ( ) ) & & ( e r . t e x t C o n t e n t = o r , ! 0 ) } ) ) ; b r e a k ; c a s e " t i t l e " : l r . t i t l e = o r } } e l s e c o n s o l e . l o g ( " M i s s i n g e l e m e n t f o r l o c a l i z a t i o n : " + i r ) } e l s e c o n s o l e . l o g ( i r ) } ) ) } , o x = f u n c t i o n r e a d L a n g ( e r ) { v a r t r = e r . t o o l s , r r = e r . p r o p e r t i e s , n r = e r . c o n f i g , a r = e r . l a y e r s , i r = e r . c o m m o n , o r = e r . u i ; i x ( " c o n t e n t " , { c u r v e _ s e g m e n t s : r r . c u r v e _ s e g m e n t s , f i t T o C o n t e n t : t r . f i t T o C o n t e n t , f i t _ t o _ a l l : t r . f i t _ t o _ a l l , f i t _ t o _ c a n v a s : t r . f i t _ t o _ c a n v a s , f i t _ t o _ l a y e r _ c o n t e n t : t r . f i t _ t o _ l a y e r _ c o n t e n t , f i t _ t o _ s e l : t r . f i t _ t o _ s e l , i c o n _ l a r g e : n r . i c o n _ l a r g e , i c o n _ m e d i u m : n r . i c o n _ m e d i u m , i c o n _ s m a l l : n r . i c o n _ s m a l l , i c o n _ x l a r g e : n r . i c o n _ x l a r g e , i m a g e _ o p t _ e m b e d : n r . i m a g e _ o p t _ e m b e d , i m a g e _ o p t _ r e f : n r . i m a g e _ o p t _ r e f , i n c l u d e d I m a g e s : n r . i n c l u d e d _ i m a g e s , l a r g e s t _ o b j e c t : t r . l a r g e s t _ o b j e c t , l a y e r s L a b e l : a r . l a y e r s , p a g e : t r . p a g e , r e l a t i v e T o L a b e l : t r . r e l a t i v e T o , s e l L a y e r L a b e l : a r . m o v e _ e l e m s _ t o , s e l e c t e d P r e d e f i n e d : n r . s e l e c t _ p r e d e f i n e d , s e l e c t e d _ o b j e c t s : t r . s e l e c t e d _ o b j e c t s , s m a l l e s t _ o b j e c t : t r . s m a l l e s t _ o b j e c t , s t r a i g h t _ s e g m e n t s : r r . s t r a i g h t _ s e g m e n t s , s v g i n f o _ b g _ u r l : n r . e d i t o r _ i m g _ u r l + " : " , s v g i n f o _ b g _ n o t e : n r . e d i t o r _ b g _ n o t e , s v g i n f o _ c h a n g e _ b a c k g r o u n d : n r . b a c k g r o u n d , s v g i n f o _ d i m : n r . d o c _ d i m s , s v g i n f o _ e d i t o r _ p r e f s : n r . e d i t o r _ p r e f s , s v g i n f o _ h e i g h t : i r . h e i g h t , s v g i n f o _ i c o n s : n r . i c o n _ s i z e , s v g i n f o _ i m a g e _ p r o p s : n r . i m a g e _ p r o p s , s v g i n f o _ l a n g : n r . l a n g u a g e , s v g i n f o _ t i t l e : n r . d o c _ t i t l e , s v g i n f o _ w i d t h : i r . w i d t h , t o o l _ d o c p r o p s _ c a n c e l : i r . c a n c e l , t o o l _ d o c p r o p s _ s a v e : i r . o k , t o o l _ s o u r c e _ c a n c e l : i r . c a n c e l , t o o l _ s o u r c e _ s a v e : i r . o k , t o o l _ p r e f s _ c a n c e l : i r . c a n c e l , t o o l _ p r e f s _ s a v e : i r . o k , s i d e p a n e l _ h a n d l e : a r . l a y e r s . s p l i t ( " " ) . j o i n ( " " ) , t o o l _ c l e a r : t r . n e w _ d o c , t o o l _ d o c p r o p s : t r . d o c p r o p s , t o o l _ e x p o r t : t r . e x p o r t _ i m g , t o o l _ i m p o r t : t r . i m p o r t _ d o c , t o o l _ o p e n : t r . o p e n _ d o c , t o o l _ s a v e : t r . s a v e _ d o c , t o o l _ e d i t o r _ p r e f s : n r . e d i t o r _ p r e f s , t o o l _ e d i t o r _ h o m e p a g e : t r . e d i t o r _ h o m e p a g e , s v g i n f o _ u n i t s _ r u l e r s : n r . u n i t s _ a n d _ r u l e r s , s v g i n f o _ r u l e r s _ o n o f f : n r . s h o w _ r u l e r s , s v g i n f o _ u n i t : n r . b a s e _ u n i t , s v g i n f o _ g r i d _ s e t t i n g s : n r . g r i d , s v g i n f o _ s n a p _ o n o f f : n r . s n a p p i n g _ o n o f f , s v g i n f o _ s n a p _ s t e p : n r . s n a p p i n g _ s t e p s i z e , s v g i n f o _ g r i d _ c o l o r : n r . g r i d _ c o l o r } , ! 0 ) ; v a r s r = { } ; [ " c u t " , " c o p y " , " p a s t e " , " p a s t e _ i n _ p l a c e " , " d e l e t e " , " g r o u p " , " u n g r o u p " , " m o v e _ f r o n t " , " m o v e _ u p " , " m o v e _ d o w n " , " m o v e _ b a c k " ] . f o r E a c h ( ( f u n c t i o n ( e r ) { s r [ ' # c m e n u _ c a n v a s a [ h r e f = " # ' + e r + ' " ] ' ] = t r [ e r ] } ) ) , [ " d u p e " , " m e r g e _ d o w n " , " m e r g e _ a l l " ] . f o r E a c h ( ( f u n c t i o n ( e r ) { s r [ ' # c m e n u _ l a y e r s a [ h r e f = " # ' + e r + ' " ] ' ] = a r [ e r ] } ) ) , s r [ ' # c m e n u _ l a y e r s a [ h r e f = " # d e l e t e " ] ' ] = a r . d e l , i x ( " c o n t e n t " , s r ) ; v a r l r = { } ; r e t u r n O b j e c t . e n t r i e s ( { t o o l _ b l u r : r r . b l u r , t o o l _ p o s i t i o n : t r . a l i g n _ t o _ p a g e , t o o l _ f o n t _ f a m i l y : r r . f o n t _ f a m i l y , z o o m _ p a n e l : o r . z o o m _ l e v e l , s t r o k e _ l i n e j o i n : r r . l i n e j o i n _ m i t e r , s t r o k e _ l i n e c a p : r r . l i n e c a p _ b u t t , t o o l _ o p a c i t y : r r . o p a c i t y } ) . f o r E a c h ( ( f u n c t i o n ( e r ) { v a r t r = _ s l i c e d T o A r r a y ( e r , 2 ) , r r = t r [ 0 ] , n r = t r [ 1 ] ; l r [ " # " + r r + " b u t t o n " ] = n r } ) ) , O b j e c t . e n t r i e s ( { g r o u p _ o p a c i t y : r r . o p a c i t y , z o o m : o r . z o o m _ l e v e l } ) . f o r E a c h ( ( f u n c t i o n ( e r ) { v a r t r = _ s l i c e d T o A r r a y ( e r , 2 ) , r r = t r [ 0 ] , n r = t r [ 1 ] ; l r [ " # " + r r ] = n r } ) ) , i x ( " a r i a - l a b e l " , l r ) , i x ( " t i t l e " , { a l i g n _ r e l a t i v e _ t o : t r . a l i g n _ r e l a t i v e _ t o , c i r c l e _ c x : r r . c i r c l e _ c x , c i r c l e _ c y : r r . c i r c l e _ c y , c i r c l e _ r : r r . c i r c l e _ r , c o r n e r R a d i u s L a b e l : r r . c o r n e r _ r a d i u s , e l l i p s e _ c x : r r . e l l i p s e _ c x , e l l i p s e _ c y : r r . e l l i p s e _ c y , e l l i p s e _ r x : r r . e l l i p s e _ r x , e l l i p s e _ r y : r r . e l l i p s e _ r y , f i l l _ c o l o r : r r . f i l l _ c o l o r , f o n t _ f a m i l y : r r . f o n t _ f a m i l y , i d L a b e l : r r . i d , i m a g e _ h e i g h t : r r . i m a g e _ h e i g h t , i m a g e _ u r l : r r . i m a g e _ u r l , i m a g e _ w i d t h : r r . i m a g e _ w i d t h , l a y e r _ d e l e t e : a r . d e l , l a y e r _ d o w n : a r . m o v e _ d o w n , l a y e r _ n e w : a r . n e w , l a y e r _ r e n a m e : a r . r e n a m e , l a y e r _ m o r e o p t s : i r . m o r e _ o p t s , l a y e r _ u p : a r . m o v e _ u p , l i n e _ x 1 : r r . l i n e _ x 1 , l i n e _ x 2 : r r . l i n e _ x 2 , l i n e _ y 1 : r r . l i n e _ y 1 , l i n e _ y 2 : r r . l i n e _ y 2 , l i n e c a p _ b u t t : r r . l i n e c a p _ b u t t , l i n e c a p _ r o u n d : r r . l i n e c a p _ r o u n d , l i n e c a p _ s q u a r e : r r . l i n e c a p _ s q u a r e , l i n e j o i n _ b e v e l : r r . l i n e j o i n _ b e v e l , l i n e j o i n _ m i t e r : r r . l
2020-09-04 20:34:30 +00:00
/ * !
2020-09-08 23:35:47 +00:00
* html2canvas 1.0 . 0 - rc . 7 < https : //html2canvas.hertzen.com>
* Copyright ( c ) 2020 Niklas von Hertzen < https : //hertzen.com>
* Released under MIT License
* /
2020-09-04 20:34:30 +00:00
er . exports = function ( ) {
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
2020-09-08 23:35:47 +00:00
Copyright ( c ) Microsoft Corporation . All rights reserved .
Licensed under the Apache License , Version 2.0 ( the "License" ) ; you may not use
this file except in compliance with the License . You may obtain a copy of the
License at http : //www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN * AS IS * BASIS , WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND , EITHER EXPRESS OR IMPLIED , INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE , FITNESS FOR A PARTICULAR PURPOSE ,
MERCHANTABLITY OR NON - INFRINGEMENT .
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License .
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
2020-09-13 21:56:45 +00:00
var er = function extendStatics ( tr , rr ) { return ( er = Object . setPrototypeOf || { _ _proto _ _ : [ ] } instanceof Array && function ( er , tr ) { er . _ _proto _ _ = tr } || function ( er , tr ) { for ( var rr in tr ) tr . hasOwnProperty ( rr ) && ( er [ rr ] = tr [ rr ] ) } ) ( tr , rr ) } ; function _ _extends ( tr , rr ) { function _ _ ( ) { this . constructor = tr } er ( tr , rr ) , tr . prototype = null === rr ? Object . create ( rr ) : ( _ _ . prototype = rr . prototype , new _ _ ) } var tr = function _ _assign ( ) { return ( tr = Object . assign || function _ _assign ( er ) { for ( var tr , rr = 1 , nr = arguments . length ; rr < nr ; rr ++ ) for ( var ar in tr = arguments [ rr ] ) Object . prototype . hasOwnProperty . call ( tr , ar ) && ( er [ ar ] = tr [ ar ] ) ; return er } ) . apply ( this , arguments ) } ; function _ _awaiter ( er , tr , rr , nr ) { return new ( rr || ( rr = Promise ) ) ( ( function ( ar , ir ) { function fulfilled ( er ) { try { step ( nr . next ( er ) ) } catch ( er ) { ir ( er ) } } function rejected ( er ) { try { step ( nr . throw ( er ) ) } catch ( er ) { ir ( er ) } } function step ( er ) { er . done ? ar ( er . value ) : new rr ( ( function ( tr ) { tr ( er . value ) } ) ) . then ( fulfilled , rejected ) } step ( ( nr = nr . apply ( er , tr || [ ] ) ) . next ( ) ) } ) ) } function _ _generator ( er , tr ) { var rr , nr , ar , ir , or = { label : 0 , sent : function sent ( ) { if ( 1 & ar [ 0 ] ) throw ar [ 1 ] ; return ar [ 1 ] } , trys : [ ] , ops : [ ] } ; return ir = { next : verb ( 0 ) , throw : verb ( 1 ) , return : verb ( 2 ) } , "function" == typeof Symbol && ( ir [ Symbol . iterator ] = function ( ) { return this } ) , ir ; function verb ( er ) { return function ( tr ) { return step ( [ er , tr ] ) } } function step ( ir ) { if ( rr ) throw new TypeError ( "Generator is already executing." ) ; for ( ; or ; ) try { if ( rr = 1 , nr && ( ar = 2 & ir [ 0 ] ? nr . return : ir [ 0 ] ? nr . throw || ( ( ar = nr . return ) && ar . call ( nr ) , 0 ) : nr . next ) && ! ( ar = ar . call ( nr , ir [ 1 ] ) ) . done ) return ar ; switch ( nr = 0 , ar && ( ir = [ 2 & ir [ 0 ] , ar . value ] ) , ir [ 0 ] ) { case 0 : case 1 : ar = ir ; break ; case 4 : return or . label ++ , { value : ir [ 1 ] , done : ! 1 } ; case 5 : or . label ++ , nr = ir [ 1 ] , ir = [ 0 ] ; continue ; case 7 : ir = or . ops . pop ( ) , or . trys . pop ( ) ; continue ; default : if ( ! ( ( ar = ( ar = or . trys ) . length > 0 && ar [ ar . length - 1 ] ) || 6 !== ir [ 0 ] && 2 !== ir [ 0 ] ) ) { or = 0 ; continue } if ( 3 === ir [ 0 ] && ( ! ar || ir [ 1 ] > ar [ 0 ] && ir [ 1 ] < ar [ 3 ] ) ) { or . label = ir [ 1 ] ; break } if ( 6 === ir [ 0 ] && or . label < ar [ 1 ] ) { or . label = ar [ 1 ] , ar = ir ; break } if ( ar && or . label < ar [ 2 ] ) { or . label = ar [ 2 ] , or . ops . push ( ir ) ; break } ar [ 2 ] && or . ops . pop ( ) , or . trys . pop ( ) ; continue } ir = tr . call ( er , or ) } catch ( er ) { ir = [ 6 , er ] , nr = 0 } finally { rr = ar = 0 } if ( 5 & ir [ 0 ] ) throw ir [ 1 ] ; return { value : ir [ 0 ] ? ir [ 1 ] : void 0 , done : ! 0 } } } for ( var rr = function ( ) { function Bounds ( er , tr , rr , nr ) { this . left = er , this . top = tr , this . width = rr , this . height = nr } return Bounds . prototype . add = function ( er , tr , rr , nr ) { return new Bounds ( this . left + er , this . top + tr , this . width + rr , this . height + nr ) } , Bounds . fromClientRect = function ( er ) { return new Bounds ( er . left , er . top , er . width , er . height ) } , Bounds } ( ) , nr = function parseBounds ( er ) { return rr . fromClientRect ( er . getBoundingClientRect ( ) ) } , ar = function parseDocumentSize ( er ) { var tr = er . body , nr = er . documentElement ; if ( ! tr || ! nr ) throw new Error ( "Unable to get document size" ) ; var ar = Math . max ( Math . max ( tr . scrollWidth , nr . scrollWidth ) , Math . max ( tr . offsetWidth , nr . offsetWidth ) , Math . max ( tr . clientWidth , nr . clientWidth ) ) , ir = Math . max ( Math . max ( tr . scrollHeight , nr . scrollHeight ) , Math . max ( tr . offsetHeight , nr . offsetHeight ) , Math . max ( tr . clientHeight , nr . clientHeight ) ) ; return new rr ( 0 , 0 , ar , ir ) } , ir = function toCodePoints ( er ) { for ( var tr = [ ] , rr = 0 , nr = er . length ; rr < nr ; ) { var ar = er . charCodeAt ( rr ++ ) ; if ( ar >= 55296 && ar <= 56319 && rr < nr ) { var ir = er . charCodeAt ( rr ++ ) ; 56320 == ( 64512 & ir ) ? tr . push ( ( ( 1023 & ar ) << 10 ) + ( 1023 & ir ) + 65536 ) : ( tr . push ( ar ) , rr -- ) } else tr . push ( ar ) } return tr } , or = function fromCodePoint ( ) { for ( var er = [ ] , tr = 0 ; tr < arguments . length ; tr ++ ) er [ tr ] = arguments [ tr ] ; if ( String . fromCodePoint ) return String . fromCodePoint . apply ( String , er ) ; var rr = er . length ; if ( ! rr ) return "" ; for ( var nr = [ ] , ar = - 1 , ir = "" ; ++ ar < rr ; ) { var or = er [ ar ] ; or <= 65535 ? nr . push ( or ) : ( or -= 65536 , nr . push ( 55296 + ( or >> 10 ) , or % 1024 + 56320 ) ) , ( ar + 1 === rr || nr . length > 16384 ) && ( ir += String . fromCharCode . apply ( String , nr ) , nr . length = 0 ) } return ir } , sr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" , lr = "undefined" == typeof Uint8Array ? [ ] : new Uint8Array ( 256 ) , cr = 0 ; cr < sr . length ; cr ++ ) lr [ sr . charCodeAt ( cr ) ] = cr ; var ur , dr = function decode ( er ) { var tr , rr , nr , ar , ir , or = . 75 * er . length , sr = er . length , cr = 0 ; "=" === er [ er . length - 1 ] && ( or -- , "=" === er [ er . length - 2 ] && or -- ) ; var ur = "undefined" != typeof ArrayBuffer && "undefined" != typeof Uint8Array && void 0 !== Uint8Array . prototype . sli
2020-09-04 20:34:30 +00:00
/*! @license DOMPurify | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/2.0.8/LICENSE */
2020-09-13 21:56:45 +00:00
er . exports = function ( ) { function _toConsumableArray ( er ) { if ( Array . isArray ( er ) ) { for ( var tr = 0 , rr = Array ( er . length ) ; tr < er . length ; tr ++ ) rr [ tr ] = er [ tr ] ; return rr } return Array . from ( er ) } var er = Object . hasOwnProperty , tr = Object . setPrototypeOf , rr = Object . isFrozen , nr = Object . keys , ar = Object . freeze , ir = Object . seal , or = "undefined" != typeof Reflect && Reflect , sr = or . apply , lr = or . construct ; sr || ( sr = function apply ( er , tr , rr ) { return er . apply ( tr , rr ) } ) , ar || ( ar = function freeze ( er ) { return er } ) , ir || ( ir = function seal ( er ) { return er } ) , lr || ( lr = function construct ( er , tr ) { return new ( Function . prototype . bind . apply ( er , [ null ] . concat ( _toConsumableArray ( tr ) ) ) ) } ) ; var cr = unapply ( Array . prototype . forEach ) , ur = unapply ( Array . prototype . indexOf ) , dr = unapply ( Array . prototype . join ) , hr = unapply ( Array . prototype . pop ) , Ar = unapply ( Array . prototype . push ) , pr = unapply ( Array . prototype . slice ) , gr = unapply ( String . prototype . toLowerCase ) , fr = unapply ( String . prototype . match ) , mr = unapply ( String . prototype . replace ) , _r = unapply ( String . prototype . indexOf ) , vr = unapply ( String . prototype . trim ) , yr = unapply ( RegExp . prototype . test ) , br = unconstruct ( RegExp ) , wr = unconstruct ( TypeError ) ; function unapply ( er ) { return function ( tr ) { for ( var rr = arguments . length , nr = Array ( rr > 1 ? rr - 1 : 0 ) , ar = 1 ; ar < rr ; ar ++ ) nr [ ar - 1 ] = arguments [ ar ] ; return sr ( er , tr , nr ) } } function unconstruct ( er ) { return function ( ) { for ( var tr = arguments . length , rr = Array ( tr ) , nr = 0 ; nr < tr ; nr ++ ) rr [ nr ] = arguments [ nr ] ; return lr ( er , rr ) } } function addToSet ( er , nr ) { tr && tr ( er , null ) ; for ( var ar = nr . length ; ar -- ; ) { var ir = nr [ ar ] ; if ( "string" == typeof ir ) { var or = gr ( ir ) ; or !== ir && ( rr ( nr ) || ( nr [ ar ] = or ) , ir = or ) } er [ ir ] = ! 0 } return er } function clone ( tr ) { var rr = { } , nr = void 0 ; for ( nr in tr ) sr ( er , tr , [ nr ] ) && ( rr [ nr ] = tr [ nr ] ) ; return rr } var kr = ar ( [ "a" , "abbr" , "acronym" , "address" , "area" , "article" , "aside" , "audio" , "b" , "bdi" , "bdo" , "big" , "blink" , "blockquote" , "body" , "br" , "button" , "canvas" , "caption" , "center" , "cite" , "code" , "col" , "colgroup" , "content" , "data" , "datalist" , "dd" , "decorator" , "del" , "details" , "dfn" , "dir" , "div" , "dl" , "dt" , "element" , "em" , "fieldset" , "figcaption" , "figure" , "font" , "footer" , "form" , "h1" , "h2" , "h3" , "h4" , "h5" , "h6" , "head" , "header" , "hgroup" , "hr" , "html" , "i" , "img" , "input" , "ins" , "kbd" , "label" , "legend" , "li" , "main" , "map" , "mark" , "marquee" , "menu" , "menuitem" , "meter" , "nav" , "nobr" , "ol" , "optgroup" , "option" , "output" , "p" , "picture" , "pre" , "progress" , "q" , "rp" , "rt" , "ruby" , "s" , "samp" , "section" , "select" , "shadow" , "small" , "source" , "spacer" , "span" , "strike" , "strong" , "style" , "sub" , "summary" , "sup" , "table" , "tbody" , "td" , "template" , "textarea" , "tfoot" , "th" , "thead" , "time" , "tr" , "track" , "tt" , "u" , "ul" , "var" , "video" , "wbr" ] ) , xr = ar ( [ "svg" , "a" , "altglyph" , "altglyphdef" , "altglyphitem" , "animatecolor" , "animatemotion" , "animatetransform" , "audio" , "canvas" , "circle" , "clippath" , "defs" , "desc" , "ellipse" , "filter" , "font" , "g" , "glyph" , "glyphref" , "hkern" , "image" , "line" , "lineargradient" , "marker" , "mask" , "metadata" , "mpath" , "path" , "pattern" , "polygon" , "polyline" , "radialgradient" , "rect" , "stop" , "style" , "switch" , "symbol" , "text" , "textpath" , "title" , "tref" , "tspan" , "video" , "view" , "vkern" ] ) , Sr = ar ( [ "feBlend" , "feColorMatrix" , "feComponentTransfer" , "feComposite" , "feConvolveMatrix" , "feDiffuseLighting" , "feDisplacementMap" , "feDistantLight" , "feFlood" , "feFuncA" , "feFuncB" , "feFuncG" , "feFuncR" , "feGaussianBlur" , "feMerge" , "feMergeNode" , "feMorphology" , "feOffset" , "fePointLight" , "feSpecularLighting" , "feSpotLight" , "feTile" , "feTurbulence" ] ) , Cr = ar ( [ "math" , "menclose" , "merror" , "mfenced" , "mfrac" , "mglyph" , "mi" , "mlabeledtr" , "mmultiscripts" , "mn" , "mo" , "mover" , "mpadded" , "mphantom" , "mroot" , "mrow" , "ms" , "mspace" , "msqrt" , "mstyle" , "msub" , "msup" , "msubsup" , "mtable" , "mtd" , "mtext" , "mtr" , "munder" , "munderover" ] ) , Br = ar ( [ "#text" ] ) , Er = ar ( [ "accept" , "action" , "align" , "alt" , "autocapitalize" , "autocomplete" , "autopictureinpicture" , "autoplay" , "background" , "bgcolor" , "border" , "capture" , "cellpadding" , "cellspacing" , "checked" , "cite" , "class" , "clear" , "color" , "cols" , "colspan" , "controls" , "controlslist" , "coords" , "crossorigin" , "datetime" , "decoding" , "default" , "dir" , "disabled" , "disablepictureinpicture" , "disableremoteplayback" , "download" , "draggable" , "enctype" , "enterkeyhint" , "face" , "for" , "headers" , "height" , "hidden" , "high" , "href" , "hreflang" , "id" , "inputmode" , " i