declare const factorySource = "function () {\n\n\treturn (\n\t\t'undefined' == typeof window && ( self.window = self ),\n\t\t( function ( r ) {\n\n\t\t\t'use strict';\n\t\t\tvar e = {\n\t\t\t\tparse: function ( r ) {\n\n\t\t\t\t\tvar t = e._bin,\n\t\t\t\t\t\ta = new Uint8Array( r );\n\t\t\t\t\tif ( 'ttcf' == t.readASCII( a, 0, 4 ) ) {\n\n\t\t\t\t\t\tvar n = 4;\n\t\t\t\t\t\tt.readUshort( a, n ), ( n += 2 ), t.readUshort( a, n ), ( n += 2 );\n\t\t\t\t\t\tvar o = t.readUint( a, n );\n\t\t\t\t\t\tn += 4;\n\t\t\t\t\t\tfor ( var s = [], i = 0; i < o; i ++ ) {\n\n\t\t\t\t\t\t\tvar h = t.readUint( a, n );\n\t\t\t\t\t\t\t( n += 4 ), s.push( e._readFont( a, h ) );\n\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn s;\n\n\t\t\t\t\t}\n\n\t\t\t\t\treturn [ e._readFont( a, 0 ) ];\n\n\t\t\t\t},\n\t\t\t\t_readFont: function ( r, t ) {\n\n\t\t\t\t\tvar a = e._bin,\n\t\t\t\t\t\tn = t;\n\t\t\t\t\ta.readFixed( r, t ), ( t += 4 );\n\t\t\t\t\tvar o = a.readUshort( r, t );\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\ta.readUshort( r, t ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\ta.readUshort( r, t ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\ta.readUshort( r, t ),\n\t\t\t\t\t( t += 2 );\n\t\t\t\t\tfor (\n\t\t\t\t\t\tvar s = [\n\t\t\t\t\t\t\t\t'cmap',\n\t\t\t\t\t\t\t\t'head',\n\t\t\t\t\t\t\t\t'hhea',\n\t\t\t\t\t\t\t\t'maxp',\n\t\t\t\t\t\t\t\t'hmtx',\n\t\t\t\t\t\t\t\t'name',\n\t\t\t\t\t\t\t\t'OS/2',\n\t\t\t\t\t\t\t\t'post',\n\t\t\t\t\t\t\t\t'loca',\n\t\t\t\t\t\t\t\t'glyf',\n\t\t\t\t\t\t\t\t'kern',\n\t\t\t\t\t\t\t\t'CFF ',\n\t\t\t\t\t\t\t\t'GDEF',\n\t\t\t\t\t\t\t\t'GPOS',\n\t\t\t\t\t\t\t\t'GSUB',\n\t\t\t\t\t\t\t\t'SVG ',\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\ti = { _data: r, _offset: n },\n\t\t\t\t\t\t\th = {},\n\t\t\t\t\t\t\td = 0;\n\t\t\t\t\t\td < o;\n\t\t\t\t\t\td ++\n\t\t\t\t\t) {\n\n\t\t\t\t\t\tvar f = a.readASCII( r, t, 4 );\n\t\t\t\t\t\t( t += 4 ), a.readUint( r, t ), ( t += 4 );\n\t\t\t\t\t\tvar u = a.readUint( r, t );\n\t\t\t\t\t\tt += 4;\n\t\t\t\t\t\tvar l = a.readUint( r, t );\n\t\t\t\t\t\t( t += 4 ), ( h[ f ] = { offset: u, length: l } );\n\n\t\t\t\t\t}\n\n\t\t\t\t\tfor ( d = 0; d < s.length; d ++ ) {\n\n\t\t\t\t\t\tvar v = s[ d ];\n\t\t\t\t\t\th[ v ] &&\n ( i[ v.trim() ] = e[ v.trim() ].parse( r, h[ v ].offset, h[ v ].length, i ) );\n\n\t\t\t\t\t}\n\n\t\t\t\t\treturn i;\n\n\t\t\t\t},\n\t\t\t\t_tabOffset: function ( r, t, a ) {\n\n\t\t\t\t\tfor (\n\t\t\t\t\t\tvar n = e._bin, o = n.readUshort( r, a + 4 ), s = a + 12, i = 0;\n\t\t\t\t\t\ti < o;\n\t\t\t\t\t\ti ++\n\t\t\t\t\t) {\n\n\t\t\t\t\t\tvar h = n.readASCII( r, s, 4 );\n\t\t\t\t\t\t( s += 4 ), n.readUint( r, s ), ( s += 4 );\n\t\t\t\t\t\tvar d = n.readUint( r, s );\n\t\t\t\t\t\tif ( ( ( s += 4 ), n.readUint( r, s ), ( s += 4 ), h == t ) ) return d;\n\n\t\t\t\t\t}\n\n\t\t\t\t\treturn 0;\n\n\t\t\t\t},\n\t\t\t};\n\t\t\t( e._bin = {\n\t\t\t\treadFixed: function ( r, e ) {\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t( ( r[ e ] << 8 ) | r[ e + 1 ] ) + ( ( r[ e + 2 ] << 8 ) | r[ e + 3 ] ) / 65540\n\t\t\t\t\t);\n\n\t\t\t\t},\n\t\t\t\treadF2dot14: function ( r, t ) {\n\n\t\t\t\t\treturn e._bin.readShort( r, t ) / 16384;\n\n\t\t\t\t},\n\t\t\t\treadInt: function ( r, t ) {\n\n\t\t\t\t\treturn e._bin._view( r ).getInt32( t );\n\n\t\t\t\t},\n\t\t\t\treadInt8: function ( r, t ) {\n\n\t\t\t\t\treturn e._bin._view( r ).getInt8( t );\n\n\t\t\t\t},\n\t\t\t\treadShort: function ( r, t ) {\n\n\t\t\t\t\treturn e._bin._view( r ).getInt16( t );\n\n\t\t\t\t},\n\t\t\t\treadUshort: function ( r, t ) {\n\n\t\t\t\t\treturn e._bin._view( r ).getUint16( t );\n\n\t\t\t\t},\n\t\t\t\treadUshorts: function ( r, t, a ) {\n\n\t\t\t\t\tfor ( var n = [], o = 0; o < a; o ++ )\n\t\t\t\t\t\tn.push( e._bin.readUshort( r, t + 2 * o ) );\n\t\t\t\t\treturn n;\n\n\t\t\t\t},\n\t\t\t\treadUint: function ( r, t ) {\n\n\t\t\t\t\treturn e._bin._view( r ).getUint32( t );\n\n\t\t\t\t},\n\t\t\t\treadUint64: function ( r, t ) {\n\n\t\t\t\t\treturn 4294967296 * e._bin.readUint( r, t ) + e._bin.readUint( r, t + 4 );\n\n\t\t\t\t},\n\t\t\t\treadASCII: function ( r, e, t ) {\n\n\t\t\t\t\tfor ( var a = '', n = 0; n < t; n ++ )\n\t\t\t\t\t\ta += String.fromCharCode( r[ e + n ] );\n\t\t\t\t\treturn a;\n\n\t\t\t\t},\n\t\t\t\treadUnicode: function ( r, e, t ) {\n\n\t\t\t\t\tfor ( var a = '', n = 0; n < t; n ++ ) {\n\n\t\t\t\t\t\tvar o = ( r[ e ++ ] << 8 ) | r[ e ++ ];\n\t\t\t\t\t\ta += String.fromCharCode( o );\n\n\t\t\t\t\t}\n\n\t\t\t\t\treturn a;\n\n\t\t\t\t},\n\t\t\t\t_tdec:\n 'undefined' != typeof window && window.TextDecoder\n \t? new window.TextDecoder()\n \t: null,\n\t\t\t\treadUTF8: function ( r, t, a ) {\n\n\t\t\t\t\tvar n = e._bin._tdec;\n\t\t\t\t\treturn n && 0 == t && a == r.length\n\t\t\t\t\t\t? n.decode( r )\n\t\t\t\t\t\t: e._bin.readASCII( r, t, a );\n\n\t\t\t\t},\n\t\t\t\treadBytes: function ( r, e, t ) {\n\n\t\t\t\t\tfor ( var a = [], n = 0; n < t; n ++ ) a.push( r[ e + n ] );\n\t\t\t\t\treturn a;\n\n\t\t\t\t},\n\t\t\t\treadASCIIArray: function ( r, e, t ) {\n\n\t\t\t\t\tfor ( var a = [], n = 0; n < t; n ++ )\n\t\t\t\t\t\ta.push( String.fromCharCode( r[ e + n ] ) );\n\t\t\t\t\treturn a;\n\n\t\t\t\t},\n\t\t\t\t_view: function ( r ) {\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\tr._dataView ||\n ( r._dataView = r.buffer\n \t? new DataView( r.buffer, r.byteOffset, r.byteLength )\n \t: new DataView( new Uint8Array( r ).buffer ) )\n\t\t\t\t\t);\n\n\t\t\t\t},\n\t\t\t} ),\n\t\t\t( e._lctf = {} ),\n\t\t\t( e._lctf.parse = function ( r, t, a, n, o ) {\n\n\t\t\t\tvar s = e._bin,\n\t\t\t\t\ti = {},\n\t\t\t\t\th = t;\n\t\t\t\ts.readFixed( r, t ), ( t += 4 );\n\t\t\t\tvar d = s.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tvar f = s.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tvar u = s.readUshort( r, t );\n\t\t\t\treturn (\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( i.scriptList = e._lctf.readScriptList( r, h + d ) ),\n\t\t\t\t\t( i.featureList = e._lctf.readFeatureList( r, h + f ) ),\n\t\t\t\t\t( i.lookupList = e._lctf.readLookupList( r, h + u, o ) ),\n\t\t\t\t\ti\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e._lctf.readLookupList = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = t,\n\t\t\t\t\ts = [],\n\t\t\t\t\ti = n.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tfor ( var h = 0; h < i; h ++ ) {\n\n\t\t\t\t\tvar d = n.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar f = e._lctf.readLookupTable( r, o + d, a );\n\t\t\t\t\ts.push( f );\n\n\t\t\t\t}\n\n\t\t\t\treturn s;\n\n\t\t\t} ),\n\t\t\t( e._lctf.readLookupTable = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = t,\n\t\t\t\t\ts = { tabs: [] };\n\t\t\t\t( s.ltype = n.readUshort( r, t ) ),\n\t\t\t\t( t += 2 ),\n\t\t\t\t( s.flag = n.readUshort( r, t ) ),\n\t\t\t\t( t += 2 );\n\t\t\t\tvar i = n.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tfor ( var h = s.ltype, d = 0; d < i; d ++ ) {\n\n\t\t\t\t\tvar f = n.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar u = a( r, h, o + f, s );\n\t\t\t\t\ts.tabs.push( u );\n\n\t\t\t\t}\n\n\t\t\t\treturn s;\n\n\t\t\t} ),\n\t\t\t( e._lctf.numOfOnes = function ( r ) {\n\n\t\t\t\tfor ( var e = 0, t = 0; t < 32; t ++ ) 0 != ( ( r >>> t ) & 1 ) && e ++;\n\t\t\t\treturn e;\n\n\t\t\t} ),\n\t\t\t( e._lctf.readClassDef = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = [],\n\t\t\t\t\to = a.readUshort( r, t );\n\t\t\t\tif ( ( ( t += 2 ), 1 == o ) ) {\n\n\t\t\t\t\tvar s = a.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar i = a.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tfor ( var h = 0; h < i; h ++ )\n\t\t\t\t\t\tn.push( s + h ),\n\t\t\t\t\t\tn.push( s + h ),\n\t\t\t\t\t\tn.push( a.readUshort( r, t ) ),\n\t\t\t\t\t\t( t += 2 );\n\n\t\t\t\t}\n\n\t\t\t\tif ( 2 == o ) {\n\n\t\t\t\t\tvar d = a.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tfor ( h = 0; h < d; h ++ )\n\t\t\t\t\t\tn.push( a.readUshort( r, t ) ),\n\t\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t\tn.push( a.readUshort( r, t ) ),\n\t\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t\tn.push( a.readUshort( r, t ) ),\n\t\t\t\t\t\t( t += 2 );\n\n\t\t\t\t}\n\n\t\t\t\treturn n;\n\n\t\t\t} ),\n\t\t\t( e._lctf.getInterval = function ( r, e ) {\n\n\t\t\t\tfor ( var t = 0; t < r.length; t += 3 ) {\n\n\t\t\t\t\tvar a = r[ t ],\n\t\t\t\t\t\tn = r[ t + 1 ];\n\t\t\t\t\tif ( ( r[ t + 2 ], a <= e && e <= n ) ) return t;\n\n\t\t\t\t}\n\n\t\t\t\treturn - 1;\n\n\t\t\t} ),\n\t\t\t( e._lctf.readCoverage = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = {};\n\t\t\t\t( n.fmt = a.readUshort( r, t ) ), ( t += 2 );\n\t\t\t\tvar o = a.readUshort( r, t );\n\t\t\t\treturn (\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t1 == n.fmt && ( n.tab = a.readUshorts( r, t, o ) ),\n\t\t\t\t\t2 == n.fmt && ( n.tab = a.readUshorts( r, t, 3 * o ) ),\n\t\t\t\t\tn\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e._lctf.coverageIndex = function ( r, t ) {\n\n\t\t\t\tvar a = r.tab;\n\t\t\t\tif ( 1 == r.fmt ) return a.indexOf( t );\n\t\t\t\tif ( 2 == r.fmt ) {\n\n\t\t\t\t\tvar n = e._lctf.getInterval( a, t );\n\t\t\t\t\tif ( - 1 != n ) return a[ n + 2 ] + ( t - a[ n ] );\n\n\t\t\t\t}\n\n\t\t\t\treturn - 1;\n\n\t\t\t} ),\n\t\t\t( e._lctf.readFeatureList = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = t,\n\t\t\t\t\to = [],\n\t\t\t\t\ts = a.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tfor ( var i = 0; i < s; i ++ ) {\n\n\t\t\t\t\tvar h = a.readASCII( r, t, 4 );\n\t\t\t\t\tt += 4;\n\t\t\t\t\tvar d = a.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar f = e._lctf.readFeatureTable( r, n + d );\n\t\t\t\t\t( f.tag = h.trim() ), o.push( f );\n\n\t\t\t\t}\n\n\t\t\t\treturn o;\n\n\t\t\t} ),\n\t\t\t( e._lctf.readFeatureTable = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = t,\n\t\t\t\t\to = {},\n\t\t\t\t\ts = a.readUshort( r, t );\n\t\t\t\t( t += 2 ), s > 0 && ( o.featureParams = n + s );\n\t\t\t\tvar i = a.readUshort( r, t );\n\t\t\t\t( t += 2 ), ( o.tab = [] );\n\t\t\t\tfor ( var h = 0; h < i; h ++ ) o.tab.push( a.readUshort( r, t + 2 * h ) );\n\t\t\t\treturn o;\n\n\t\t\t} ),\n\t\t\t( e._lctf.readScriptList = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = t,\n\t\t\t\t\to = {},\n\t\t\t\t\ts = a.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tfor ( var i = 0; i < s; i ++ ) {\n\n\t\t\t\t\tvar h = a.readASCII( r, t, 4 );\n\t\t\t\t\tt += 4;\n\t\t\t\t\tvar d = a.readUshort( r, t );\n\t\t\t\t\t( t += 2 ), ( o[ h.trim() ] = e._lctf.readScriptTable( r, n + d ) );\n\n\t\t\t\t}\n\n\t\t\t\treturn o;\n\n\t\t\t} ),\n\t\t\t( e._lctf.readScriptTable = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = t,\n\t\t\t\t\to = {},\n\t\t\t\t\ts = a.readUshort( r, t );\n\t\t\t\t( t += 2 ), s > 0 && ( o.default = e._lctf.readLangSysTable( r, n + s ) );\n\t\t\t\tvar i = a.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tfor ( var h = 0; h < i; h ++ ) {\n\n\t\t\t\t\tvar d = a.readASCII( r, t, 4 );\n\t\t\t\t\tt += 4;\n\t\t\t\t\tvar f = a.readUshort( r, t );\n\t\t\t\t\t( t += 2 ), ( o[ d.trim() ] = e._lctf.readLangSysTable( r, n + f ) );\n\n\t\t\t\t}\n\n\t\t\t\treturn o;\n\n\t\t\t} ),\n\t\t\t( e._lctf.readLangSysTable = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = {};\n\t\t\t\ta.readUshort( r, t ),\n\t\t\t\t( t += 2 ),\n\t\t\t\t( n.reqFeature = a.readUshort( r, t ) ),\n\t\t\t\t( t += 2 );\n\t\t\t\tvar o = a.readUshort( r, t );\n\t\t\t\treturn ( t += 2 ), ( n.features = a.readUshorts( r, t, o ) ), n;\n\n\t\t\t} ),\n\t\t\t( e.CFF = {} ),\n\t\t\t( e.CFF.parse = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin;\n\t\t\t\t( r = new Uint8Array( r.buffer, t, a ) )[ ( t = 0 ) ],\n\t\t\t\tr[ ++ t ],\n\t\t\t\tr[ ++ t ],\n\t\t\t\tr[ ++ t ],\n\t\t\t\tt ++;\n\t\t\t\tvar o = [];\n\t\t\t\tt = e.CFF.readIndex( r, t, o );\n\t\t\t\tfor ( var s = [], i = 0; i < o.length - 1; i ++ )\n\t\t\t\t\ts.push( n.readASCII( r, t + o[ i ], o[ i + 1 ] - o[ i ] ) );\n\t\t\t\tt += o[ o.length - 1 ];\n\t\t\t\tvar h = [];\n\t\t\t\tt = e.CFF.readIndex( r, t, h );\n\t\t\t\tvar d = [];\n\t\t\t\tfor ( i = 0; i < h.length - 1; i ++ )\n\t\t\t\t\td.push( e.CFF.readDict( r, t + h[ i ], t + h[ i + 1 ] ) );\n\t\t\t\tt += h[ h.length - 1 ];\n\t\t\t\tvar f = d[ 0 ],\n\t\t\t\t\tu = [];\n\t\t\t\tt = e.CFF.readIndex( r, t, u );\n\t\t\t\tvar l = [];\n\t\t\t\tfor ( i = 0; i < u.length - 1; i ++ )\n\t\t\t\t\tl.push( n.readASCII( r, t + u[ i ], u[ i + 1 ] - u[ i ] ) );\n\t\t\t\tif (\n\t\t\t\t\t( ( t += u[ u.length - 1 ] ), e.CFF.readSubrs( r, t, f ), f.CharStrings )\n\t\t\t\t) {\n\n\t\t\t\t\tt = f.CharStrings;\n\t\t\t\t\tu = [];\n\t\t\t\t\tt = e.CFF.readIndex( r, t, u );\n\t\t\t\t\tvar v = [];\n\t\t\t\t\tfor ( i = 0; i < u.length - 1; i ++ )\n\t\t\t\t\t\tv.push( n.readBytes( r, t + u[ i ], u[ i + 1 ] - u[ i ] ) );\n\t\t\t\t\tf.CharStrings = v;\n\n\t\t\t\t}\n\n\t\t\t\tif ( f.ROS ) {\n\n\t\t\t\t\tt = f.FDArray;\n\t\t\t\t\tvar c = [];\n\t\t\t\t\t( t = e.CFF.readIndex( r, t, c ) ), ( f.FDArray = [] );\n\t\t\t\t\tfor ( i = 0; i < c.length - 1; i ++ ) {\n\n\t\t\t\t\t\tvar p = e.CFF.readDict( r, t + c[ i ], t + c[ i + 1 ] );\n\t\t\t\t\t\te.CFF._readFDict( r, p, l ), f.FDArray.push( p );\n\n\t\t\t\t\t}\n\n\t\t\t\t\t( t += c[ c.length - 1 ] ), ( t = f.FDSelect ), ( f.FDSelect = [] );\n\t\t\t\t\tvar U = r[ t ];\n\t\t\t\t\tif ( ( t ++, 3 != U ) ) throw U;\n\t\t\t\t\tvar g = n.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tfor ( i = 0; i < g + 1; i ++ )\n\t\t\t\t\t\tf.FDSelect.push( n.readUshort( r, t ), r[ t + 2 ] ), ( t += 3 );\n\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\tf.Encoding &&\n ( f.Encoding = e.CFF.readEncoding(\n \tr,\n \tf.Encoding,\n \tf.CharStrings.length\n ) ),\n\t\t\t\t\tf.charset &&\n ( f.charset = e.CFF.readCharset(\n \tr,\n \tf.charset,\n \tf.CharStrings.length\n ) ),\n\t\t\t\t\te.CFF._readFDict( r, f, l ),\n\t\t\t\t\tf\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e.CFF._readFDict = function ( r, t, a ) {\n\n\t\t\t\tvar n;\n\t\t\t\tfor ( var o in ( t.Private &&\n ( ( n = t.Private[ 1 ] ),\n ( t.Private = e.CFF.readDict( r, n, n + t.Private[ 0 ] ) ),\n t.Private.Subrs &&\n e.CFF.readSubrs( r, n + t.Private.Subrs, t.Private ) ),\n\t\t\t\tt ) )\n\t\t\t\t\t- 1 !=\n [\n \t'FamilyName',\n \t'FontName',\n \t'FullName',\n \t'Notice',\n \t'version',\n \t'Copyright',\n ].indexOf( o ) && ( t[ o ] = a[ t[ o ] - 426 + 35 ] );\n\n\t\t\t} ),\n\t\t\t( e.CFF.readSubrs = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = [];\n\t\t\t\tt = e.CFF.readIndex( r, t, o );\n\t\t\t\tvar s,\n\t\t\t\t\ti = o.length;\n\t\t\t\t( s = i < 1240 ? 107 : i < 33900 ? 1131 : 32768 ),\n\t\t\t\t( a.Bias = s ),\n\t\t\t\t( a.Subrs = [] );\n\t\t\t\tfor ( var h = 0; h < o.length - 1; h ++ )\n\t\t\t\t\ta.Subrs.push( n.readBytes( r, t + o[ h ], o[ h + 1 ] - o[ h ] ) );\n\n\t\t\t} ),\n\t\t\t( e.CFF.tableSE = [\n\t\t\t\t0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n\t\t\t\t0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,\n\t\t\t\t14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,\n\t\t\t\t31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,\n\t\t\t\t48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,\n\t\t\t\t65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81,\n\t\t\t\t82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 0, 0, 0, 0, 0,\n\t\t\t\t0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n\t\t\t\t0, 0, 0, 0, 0, 0, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,\n\t\t\t\t107, 108, 109, 110, 0, 111, 112, 113, 114, 0, 115, 116, 117, 118, 119,\n\t\t\t\t120, 121, 122, 0, 123, 0, 124, 125, 126, 127, 128, 129, 130, 131, 0,\n\t\t\t\t132, 133, 0, 134, 135, 136, 137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n\t\t\t\t0, 0, 0, 0, 138, 0, 139, 0, 0, 0, 0, 140, 141, 142, 143, 0, 0, 0, 0,\n\t\t\t\t0, 144, 0, 0, 0, 145, 0, 0, 146, 147, 148, 149, 0, 0, 0, 0,\n\t\t\t] ),\n\t\t\t( e.CFF.glyphByUnicode = function ( r, e ) {\n\n\t\t\t\tfor ( var t = 0; t < r.charset.length; t ++ )\n\t\t\t\t\tif ( r.charset[ t ] == e ) return t;\n\t\t\t\treturn - 1;\n\n\t\t\t} ),\n\t\t\t( e.CFF.glyphBySE = function ( r, t ) {\n\n\t\t\t\treturn t < 0 || t > 255\n\t\t\t\t\t? - 1\n\t\t\t\t\t: e.CFF.glyphByUnicode( r, e.CFF.tableSE[ t ] );\n\n\t\t\t} ),\n\t\t\t( e.CFF.readEncoding = function ( r, t, a ) {\n\n\t\t\t\te._bin;\n\t\t\t\tvar n = [ '.notdef' ],\n\t\t\t\t\to = r[ t ];\n\t\t\t\tif ( ( t ++, 0 != o ) ) throw 'error: unknown encoding format: ' + o;\n\t\t\t\tvar s = r[ t ];\n\t\t\t\tt ++;\n\t\t\t\tfor ( var i = 0; i < s; i ++ ) n.push( r[ t + i ] );\n\t\t\t\treturn n;\n\n\t\t\t} ),\n\t\t\t( e.CFF.readCharset = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = [ '.notdef' ],\n\t\t\t\t\ts = r[ t ];\n\t\t\t\tif ( ( t ++, 0 == s ) )\n\t\t\t\t\tfor ( var i = 0; i < a; i ++ ) {\n\n\t\t\t\t\t\tvar h = n.readUshort( r, t );\n\t\t\t\t\t\t( t += 2 ), o.push( h );\n\n\t\t\t\t\t}\n\t\t\t\telse {\n\n\t\t\t\t\tif ( 1 != s && 2 != s ) throw 'error: format: ' + s;\n\t\t\t\t\tfor ( ; o.length < a; ) {\n\n\t\t\t\t\t\th = n.readUshort( r, t );\n\t\t\t\t\t\tt += 2;\n\t\t\t\t\t\tvar d = 0;\n\t\t\t\t\t\t1 == s ? ( ( d = r[ t ] ), t ++ ) : ( ( d = n.readUshort( r, t ) ), ( t += 2 ) );\n\t\t\t\t\t\tfor ( i = 0; i <= d; i ++ ) o.push( h ), h ++;\n\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\treturn o;\n\n\t\t\t} ),\n\t\t\t( e.CFF.readIndex = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = n.readUshort( r, t ) + 1,\n\t\t\t\t\ts = r[ ( t += 2 ) ];\n\t\t\t\tif ( ( t ++, 1 == s ) ) for ( var i = 0; i < o; i ++ ) a.push( r[ t + i ] );\n\t\t\t\telse if ( 2 == s )\n\t\t\t\t\tfor ( i = 0; i < o; i ++ ) a.push( n.readUshort( r, t + 2 * i ) );\n\t\t\t\telse if ( 3 == s )\n\t\t\t\t\tfor ( i = 0; i < o; i ++ )\n\t\t\t\t\t\ta.push( 16777215 & n.readUint( r, t + 3 * i - 1 ) );\n\t\t\t\telse if ( 1 != o )\n\t\t\t\t\tthrow 'unsupported offset size: ' + s + ', count: ' + o;\n\t\t\t\treturn ( t += o * s ) - 1;\n\n\t\t\t} ),\n\t\t\t( e.CFF.getCharString = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = r[ t ],\n\t\t\t\t\ts = r[ t + 1 ];\n\t\t\t\tr[ t + 2 ], r[ t + 3 ], r[ t + 4 ];\n\t\t\t\tvar i = 1,\n\t\t\t\t\th = null,\n\t\t\t\t\td = null;\n\t\t\t\to <= 20 && ( ( h = o ), ( i = 1 ) ),\n\t\t\t\t12 == o && ( ( h = 100 * o + s ), ( i = 2 ) ),\n\t\t\t\t21 <= o && o <= 27 && ( ( h = o ), ( i = 1 ) ),\n\t\t\t\t28 == o && ( ( d = n.readShort( r, t + 1 ) ), ( i = 3 ) ),\n\t\t\t\t29 <= o && o <= 31 && ( ( h = o ), ( i = 1 ) ),\n\t\t\t\t32 <= o && o <= 246 && ( ( d = o - 139 ), ( i = 1 ) ),\n\t\t\t\t247 <= o && o <= 250 && ( ( d = 256 * ( o - 247 ) + s + 108 ), ( i = 2 ) ),\n\t\t\t\t251 <= o && o <= 254 && ( ( d = 256 * - ( o - 251 ) - s - 108 ), ( i = 2 ) ),\n\t\t\t\t255 == o && ( ( d = n.readInt( r, t + 1 ) / 65535 ), ( i = 5 ) ),\n\t\t\t\t( a.val = null != d ? d : 'o' + h ),\n\t\t\t\t( a.size = i );\n\n\t\t\t} ),\n\t\t\t( e.CFF.readCharString = function ( r, t, a ) {\n\n\t\t\t\tfor ( var n = t + a, o = e._bin, s = []; t < n; ) {\n\n\t\t\t\t\tvar i = r[ t ],\n\t\t\t\t\t\th = r[ t + 1 ];\n\t\t\t\t\tr[ t + 2 ], r[ t + 3 ], r[ t + 4 ];\n\t\t\t\t\tvar d = 1,\n\t\t\t\t\t\tf = null,\n\t\t\t\t\t\tu = null;\n\t\t\t\t\ti <= 20 && ( ( f = i ), ( d = 1 ) ),\n\t\t\t\t\t12 == i && ( ( f = 100 * i + h ), ( d = 2 ) ),\n\t\t\t\t\t( 19 != i && 20 != i ) || ( ( f = i ), ( d = 2 ) ),\n\t\t\t\t\t21 <= i && i <= 27 && ( ( f = i ), ( d = 1 ) ),\n\t\t\t\t\t28 == i && ( ( u = o.readShort( r, t + 1 ) ), ( d = 3 ) ),\n\t\t\t\t\t29 <= i && i <= 31 && ( ( f = i ), ( d = 1 ) ),\n\t\t\t\t\t32 <= i && i <= 246 && ( ( u = i - 139 ), ( d = 1 ) ),\n\t\t\t\t\t247 <= i &&\n i <= 250 &&\n ( ( u = 256 * ( i - 247 ) + h + 108 ), ( d = 2 ) ),\n\t\t\t\t\t251 <= i &&\n i <= 254 &&\n ( ( u = 256 * - ( i - 251 ) - h - 108 ), ( d = 2 ) ),\n\t\t\t\t\t255 == i && ( ( u = o.readInt( r, t + 1 ) / 65535 ), ( d = 5 ) ),\n\t\t\t\t\ts.push( null != u ? u : 'o' + f ),\n\t\t\t\t\t( t += d );\n\n\t\t\t\t}\n\n\t\t\t\treturn s;\n\n\t\t\t} ),\n\t\t\t( e.CFF.readDict = function ( r, t, a ) {\n\n\t\t\t\tfor ( var n = e._bin, o = {}, s = []; t < a; ) {\n\n\t\t\t\t\tvar i = r[ t ],\n\t\t\t\t\t\th = r[ t + 1 ];\n\t\t\t\t\tr[ t + 2 ], r[ t + 3 ], r[ t + 4 ];\n\t\t\t\t\tvar d = 1,\n\t\t\t\t\t\tf = null,\n\t\t\t\t\t\tu = null;\n\t\t\t\t\tif (\n\t\t\t\t\t\t( 28 == i && ( ( u = n.readShort( r, t + 1 ) ), ( d = 3 ) ),\n\t\t\t\t\t\t29 == i && ( ( u = n.readInt( r, t + 1 ) ), ( d = 5 ) ),\n\t\t\t\t\t\t32 <= i && i <= 246 && ( ( u = i - 139 ), ( d = 1 ) ),\n\t\t\t\t\t\t247 <= i &&\n i <= 250 &&\n ( ( u = 256 * ( i - 247 ) + h + 108 ), ( d = 2 ) ),\n\t\t\t\t\t\t251 <= i &&\n i <= 254 &&\n ( ( u = 256 * - ( i - 251 ) - h - 108 ), ( d = 2 ) ),\n\t\t\t\t\t\t255 == i )\n\t\t\t\t\t)\n\t\t\t\t\t\tthrow (\n\t\t\t\t\t\t\t( ( u = n.readInt( r, t + 1 ) / 65535 ), ( d = 5 ), 'unknown number' )\n\t\t\t\t\t\t);\n\t\t\t\t\tif ( 30 == i ) {\n\n\t\t\t\t\t\tvar l = [];\n\t\t\t\t\t\tfor ( d = 1; ; ) {\n\n\t\t\t\t\t\t\tvar v = r[ t + d ];\n\t\t\t\t\t\t\td ++;\n\t\t\t\t\t\t\tvar c = v >> 4,\n\t\t\t\t\t\t\t\tp = 15 & v;\n\t\t\t\t\t\t\tif ( ( 15 != c && l.push( c ), 15 != p && l.push( p ), 15 == p ) )\n\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tfor (\n\t\t\t\t\t\t\tvar U = '',\n\t\t\t\t\t\t\t\tg = [\n\t\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t5,\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t9,\n\t\t\t\t\t\t\t\t\t'.',\n\t\t\t\t\t\t\t\t\t'e',\n\t\t\t\t\t\t\t\t\t'e-',\n\t\t\t\t\t\t\t\t\t'reserved',\n\t\t\t\t\t\t\t\t\t'-',\n\t\t\t\t\t\t\t\t\t'endOfNumber',\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tS = 0;\n\t\t\t\t\t\t\tS < l.length;\n\t\t\t\t\t\t\tS ++\n\t\t\t\t\t\t)\n\t\t\t\t\t\t\tU += g[ l[ S ] ];\n\t\t\t\t\t\tu = parseFloat( U );\n\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( i <= 21 )\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t( ( f = [\n\t\t\t\t\t\t\t\t'version',\n\t\t\t\t\t\t\t\t'Notice',\n\t\t\t\t\t\t\t\t'FullName',\n\t\t\t\t\t\t\t\t'FamilyName',\n\t\t\t\t\t\t\t\t'Weight',\n\t\t\t\t\t\t\t\t'FontBBox',\n\t\t\t\t\t\t\t\t'BlueValues',\n\t\t\t\t\t\t\t\t'OtherBlues',\n\t\t\t\t\t\t\t\t'FamilyBlues',\n\t\t\t\t\t\t\t\t'FamilyOtherBlues',\n\t\t\t\t\t\t\t\t'StdHW',\n\t\t\t\t\t\t\t\t'StdVW',\n\t\t\t\t\t\t\t\t'escape',\n\t\t\t\t\t\t\t\t'UniqueID',\n\t\t\t\t\t\t\t\t'XUID',\n\t\t\t\t\t\t\t\t'charset',\n\t\t\t\t\t\t\t\t'Encoding',\n\t\t\t\t\t\t\t\t'CharStrings',\n\t\t\t\t\t\t\t\t'Private',\n\t\t\t\t\t\t\t\t'Subrs',\n\t\t\t\t\t\t\t\t'defaultWidthX',\n\t\t\t\t\t\t\t\t'nominalWidthX',\n\t\t\t\t\t\t\t][ i ] ),\n\t\t\t\t\t\t\t( d = 1 ),\n\t\t\t\t\t\t\t12 == i )\n\t\t\t\t\t\t)\n\t\t\t\t\t\t\t( f = [\n\t\t\t\t\t\t\t\t'Copyright',\n\t\t\t\t\t\t\t\t'isFixedPitch',\n\t\t\t\t\t\t\t\t'ItalicAngle',\n\t\t\t\t\t\t\t\t'UnderlinePosition',\n\t\t\t\t\t\t\t\t'UnderlineThickness',\n\t\t\t\t\t\t\t\t'PaintType',\n\t\t\t\t\t\t\t\t'CharstringType',\n\t\t\t\t\t\t\t\t'FontMatrix',\n\t\t\t\t\t\t\t\t'StrokeWidth',\n\t\t\t\t\t\t\t\t'BlueScale',\n\t\t\t\t\t\t\t\t'BlueShift',\n\t\t\t\t\t\t\t\t'BlueFuzz',\n\t\t\t\t\t\t\t\t'StemSnapH',\n\t\t\t\t\t\t\t\t'StemSnapV',\n\t\t\t\t\t\t\t\t'ForceBold',\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t'LanguageGroup',\n\t\t\t\t\t\t\t\t'ExpansionFactor',\n\t\t\t\t\t\t\t\t'initialRandomSeed',\n\t\t\t\t\t\t\t\t'SyntheticBase',\n\t\t\t\t\t\t\t\t'PostScript',\n\t\t\t\t\t\t\t\t'BaseFontName',\n\t\t\t\t\t\t\t\t'BaseFontBlend',\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\t'ROS',\n\t\t\t\t\t\t\t\t'CIDFontVersion',\n\t\t\t\t\t\t\t\t'CIDFontRevision',\n\t\t\t\t\t\t\t\t'CIDFontType',\n\t\t\t\t\t\t\t\t'CIDCount',\n\t\t\t\t\t\t\t\t'UIDBase',\n\t\t\t\t\t\t\t\t'FDArray',\n\t\t\t\t\t\t\t\t'FDSelect',\n\t\t\t\t\t\t\t\t'FontName',\n\t\t\t\t\t\t\t][ h ] ),\n\t\t\t\t\t\t\t( d = 2 );\n\t\t\t\t\tnull != f\n\t\t\t\t\t\t? ( ( o[ f ] = 1 == s.length ? s[ 0 ] : s ), ( s = [] ) )\n\t\t\t\t\t\t: s.push( u ),\n\t\t\t\t\t( t += d );\n\n\t\t\t\t}\n\n\t\t\t\treturn o;\n\n\t\t\t} ),\n\t\t\t( e.cmap = {} ),\n\t\t\t( e.cmap.parse = function ( r, t, a ) {\n\n\t\t\t\t( r = new Uint8Array( r.buffer, t, a ) ), ( t = 0 );\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = {};\n\t\t\t\tn.readUshort( r, t ), ( t += 2 );\n\t\t\t\tvar s = n.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tvar i = [];\n\t\t\t\to.tables = [];\n\t\t\t\tfor ( var h = 0; h < s; h ++ ) {\n\n\t\t\t\t\tvar d = n.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar f = n.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar u = n.readUint( r, t );\n\t\t\t\t\tt += 4;\n\t\t\t\t\tvar l = 'p' + d + 'e' + f,\n\t\t\t\t\t\tv = i.indexOf( u );\n\t\t\t\t\tif ( - 1 == v ) {\n\n\t\t\t\t\t\tvar c;\n\t\t\t\t\t\t( v = o.tables.length ), i.push( u );\n\t\t\t\t\t\tvar p = n.readUshort( r, u );\n\t\t\t\t\t\t0 == p\n\t\t\t\t\t\t\t? ( c = e.cmap.parse0( r, u ) )\n\t\t\t\t\t\t\t: 4 == p\n\t\t\t\t\t\t\t\t? ( c = e.cmap.parse4( r, u ) )\n\t\t\t\t\t\t\t\t: 6 == p\n\t\t\t\t\t\t\t\t\t? ( c = e.cmap.parse6( r, u ) )\n\t\t\t\t\t\t\t\t\t: 12 == p\n\t\t\t\t\t\t\t\t\t\t? ( c = e.cmap.parse12( r, u ) )\n\t\t\t\t\t\t\t\t\t\t: ( c = null ),\n\t\t\t\t\t\to.tables.push( c );\n\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( null != o[ l ] ) throw 'multiple tables for one platform+encoding';\n\t\t\t\t\to[ l ] = v;\n\n\t\t\t\t}\n\n\t\t\t\treturn o;\n\n\t\t\t} ),\n\t\t\t( e.cmap.parse0 = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = {};\n\t\t\t\t( n.format = a.readUshort( r, t ) ), ( t += 2 );\n\t\t\t\tvar o = a.readUshort( r, t );\n\t\t\t\t( t += 2 ), a.readUshort( r, t ), ( t += 2 ), ( n.map = [] );\n\t\t\t\tfor ( var s = 0; s < o - 6; s ++ ) n.map.push( r[ t + s ] );\n\t\t\t\treturn n;\n\n\t\t\t} ),\n\t\t\t( e.cmap.parse4 = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = t,\n\t\t\t\t\to = {};\n\t\t\t\t( o.format = a.readUshort( r, t ) ), ( t += 2 );\n\t\t\t\tvar s = a.readUshort( r, t );\n\t\t\t\t( t += 2 ), a.readUshort( r, t ), ( t += 2 );\n\t\t\t\tvar i = a.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tvar h = i / 2;\n\t\t\t\t( o.searchRange = a.readUshort( r, t ) ),\n\t\t\t\t( t += 2 ),\n\t\t\t\t( o.entrySelector = a.readUshort( r, t ) ),\n\t\t\t\t( t += 2 ),\n\t\t\t\t( o.rangeShift = a.readUshort( r, t ) ),\n\t\t\t\t( t += 2 ),\n\t\t\t\t( o.endCount = a.readUshorts( r, t, h ) ),\n\t\t\t\t( t += 2 * h ),\n\t\t\t\t( t += 2 ),\n\t\t\t\t( o.startCount = a.readUshorts( r, t, h ) ),\n\t\t\t\t( t += 2 * h ),\n\t\t\t\t( o.idDelta = [] );\n\t\t\t\tfor ( var d = 0; d < h; d ++ )\n\t\t\t\t\to.idDelta.push( a.readShort( r, t ) ), ( t += 2 );\n\t\t\t\tfor (\n\t\t\t\t\to.idRangeOffset = a.readUshorts( r, t, h ),\n\t\t\t\t\tt += 2 * h,\n\t\t\t\t\to.glyphIdArray = [];\n\t\t\t\t\tt < n + s;\n\n\t\t\t\t)\n\t\t\t\t\to.glyphIdArray.push( a.readUshort( r, t ) ), ( t += 2 );\n\t\t\t\treturn o;\n\n\t\t\t} ),\n\t\t\t( e.cmap.parse6 = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = {};\n\t\t\t\t( n.format = a.readUshort( r, t ) ),\n\t\t\t\t( t += 2 ),\n\t\t\t\ta.readUshort( r, t ),\n\t\t\t\t( t += 2 ),\n\t\t\t\ta.readUshort( r, t ),\n\t\t\t\t( t += 2 ),\n\t\t\t\t( n.firstCode = a.readUshort( r, t ) ),\n\t\t\t\t( t += 2 );\n\t\t\t\tvar o = a.readUshort( r, t );\n\t\t\t\t( t += 2 ), ( n.glyphIdArray = [] );\n\t\t\t\tfor ( var s = 0; s < o; s ++ )\n\t\t\t\t\tn.glyphIdArray.push( a.readUshort( r, t ) ), ( t += 2 );\n\t\t\t\treturn n;\n\n\t\t\t} ),\n\t\t\t( e.cmap.parse12 = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = {};\n\t\t\t\t( n.format = a.readUshort( r, t ) ),\n\t\t\t\t( t += 2 ),\n\t\t\t\t( t += 2 ),\n\t\t\t\ta.readUint( r, t ),\n\t\t\t\t( t += 4 ),\n\t\t\t\ta.readUint( r, t ),\n\t\t\t\t( t += 4 );\n\t\t\t\tvar o = a.readUint( r, t );\n\t\t\t\t( t += 4 ), ( n.groups = [] );\n\t\t\t\tfor ( var s = 0; s < o; s ++ ) {\n\n\t\t\t\t\tvar i = t + 12 * s,\n\t\t\t\t\t\th = a.readUint( r, i + 0 ),\n\t\t\t\t\t\td = a.readUint( r, i + 4 ),\n\t\t\t\t\t\tf = a.readUint( r, i + 8 );\n\t\t\t\t\tn.groups.push( [ h, d, f ] );\n\n\t\t\t\t}\n\n\t\t\t\treturn n;\n\n\t\t\t} ),\n\t\t\t( e.glyf = {} ),\n\t\t\t( e.glyf.parse = function ( r, e, t, a ) {\n\n\t\t\t\tfor ( var n = [], o = 0; o < a.maxp.numGlyphs; o ++ ) n.push( null );\n\t\t\t\treturn n;\n\n\t\t\t} ),\n\t\t\t( e.glyf._parseGlyf = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = r._data,\n\t\t\t\t\to = e._tabOffset( n, 'glyf', r._offset ) + r.loca[ t ];\n\t\t\t\tif ( r.loca[ t ] == r.loca[ t + 1 ] ) return null;\n\t\t\t\tvar s = {};\n\t\t\t\tif (\n\t\t\t\t\t( ( s.noc = a.readShort( n, o ) ),\n\t\t\t\t\t( o += 2 ),\n\t\t\t\t\t( s.xMin = a.readShort( n, o ) ),\n\t\t\t\t\t( o += 2 ),\n\t\t\t\t\t( s.yMin = a.readShort( n, o ) ),\n\t\t\t\t\t( o += 2 ),\n\t\t\t\t\t( s.xMax = a.readShort( n, o ) ),\n\t\t\t\t\t( o += 2 ),\n\t\t\t\t\t( s.yMax = a.readShort( n, o ) ),\n\t\t\t\t\t( o += 2 ),\n\t\t\t\t\ts.xMin >= s.xMax || s.yMin >= s.yMax )\n\t\t\t\t)\n\t\t\t\t\treturn null;\n\t\t\t\tif ( s.noc > 0 ) {\n\n\t\t\t\t\ts.endPts = [];\n\t\t\t\t\tfor ( var i = 0; i < s.noc; i ++ )\n\t\t\t\t\t\ts.endPts.push( a.readUshort( n, o ) ), ( o += 2 );\n\t\t\t\t\tvar h = a.readUshort( n, o );\n\t\t\t\t\tif ( ( ( o += 2 ), n.length - o < h ) ) return null;\n\t\t\t\t\t( s.instructions = a.readBytes( n, o, h ) ), ( o += h );\n\t\t\t\t\tvar d = s.endPts[ s.noc - 1 ] + 1;\n\t\t\t\t\ts.flags = [];\n\t\t\t\t\tfor ( i = 0; i < d; i ++ ) {\n\n\t\t\t\t\t\tvar f = n[ o ];\n\t\t\t\t\t\tif ( ( o ++, s.flags.push( f ), 0 != ( 8 & f ) ) ) {\n\n\t\t\t\t\t\t\tvar u = n[ o ];\n\t\t\t\t\t\t\to ++;\n\t\t\t\t\t\t\tfor ( var l = 0; l < u; l ++ ) s.flags.push( f ), i ++;\n\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t\t\ts.xs = [];\n\t\t\t\t\tfor ( i = 0; i < d; i ++ ) {\n\n\t\t\t\t\t\tvar v = 0 != ( 2 & s.flags[ i ] ),\n\t\t\t\t\t\t\tc = 0 != ( 16 & s.flags[ i ] );\n\t\t\t\t\t\tv\n\t\t\t\t\t\t\t? ( s.xs.push( c ? n[ o ] : - n[ o ] ), o ++ )\n\t\t\t\t\t\t\t: c\n\t\t\t\t\t\t\t\t? s.xs.push( 0 )\n\t\t\t\t\t\t\t\t: ( s.xs.push( a.readShort( n, o ) ), ( o += 2 ) );\n\n\t\t\t\t\t}\n\n\t\t\t\t\ts.ys = [];\n\t\t\t\t\tfor ( i = 0; i < d; i ++ ) {\n\n\t\t\t\t\t\t( v = 0 != ( 4 & s.flags[ i ] ) ), ( c = 0 != ( 32 & s.flags[ i ] ) );\n\t\t\t\t\t\tv\n\t\t\t\t\t\t\t? ( s.ys.push( c ? n[ o ] : - n[ o ] ), o ++ )\n\t\t\t\t\t\t\t: c\n\t\t\t\t\t\t\t\t? s.ys.push( 0 )\n\t\t\t\t\t\t\t\t: ( s.ys.push( a.readShort( n, o ) ), ( o += 2 ) );\n\n\t\t\t\t\t}\n\n\t\t\t\t\tvar p = 0,\n\t\t\t\t\t\tU = 0;\n\t\t\t\t\tfor ( i = 0; i < d; i ++ )\n\t\t\t\t\t\t( p += s.xs[ i ] ), ( U += s.ys[ i ] ), ( s.xs[ i ] = p ), ( s.ys[ i ] = U );\n\n\t\t\t\t} else {\n\n\t\t\t\t\tvar g;\n\t\t\t\t\ts.parts = [];\n\t\t\t\t\tdo {\n\n\t\t\t\t\t\t( g = a.readUshort( n, o ) ), ( o += 2 );\n\t\t\t\t\t\tvar S = {\n\t\t\t\t\t\t\tm: { a: 1, b: 0, c: 0, d: 1, tx: 0, ty: 0 },\n\t\t\t\t\t\t\tp1: - 1,\n\t\t\t\t\t\t\tp2: - 1,\n\t\t\t\t\t\t};\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t( s.parts.push( S ),\n\t\t\t\t\t\t\t( S.glyphIndex = a.readUshort( n, o ) ),\n\t\t\t\t\t\t\t( o += 2 ),\n\t\t\t\t\t\t\t1 & g )\n\t\t\t\t\t\t) {\n\n\t\t\t\t\t\t\tvar m = a.readShort( n, o );\n\t\t\t\t\t\t\to += 2;\n\t\t\t\t\t\t\tvar b = a.readShort( n, o );\n\t\t\t\t\t\t\to += 2;\n\n\t\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\tm = a.readInt8( n, o );\n\t\t\t\t\t\t\to ++;\n\t\t\t\t\t\t\tb = a.readInt8( n, o );\n\t\t\t\t\t\t\to ++;\n\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t2 & g ? ( ( S.m.tx = m ), ( S.m.ty = b ) ) : ( ( S.p1 = m ), ( S.p2 = b ) ),\n\t\t\t\t\t\t8 & g\n\t\t\t\t\t\t\t? ( ( S.m.a = S.m.d = a.readF2dot14( n, o ) ), ( o += 2 ) )\n\t\t\t\t\t\t\t: 64 & g\n\t\t\t\t\t\t\t\t? ( ( S.m.a = a.readF2dot14( n, o ) ),\n\t\t\t\t\t\t\t\t( o += 2 ),\n\t\t\t\t\t\t\t\t( S.m.d = a.readF2dot14( n, o ) ),\n\t\t\t\t\t\t\t\t( o += 2 ) )\n\t\t\t\t\t\t\t\t: 128 & g &&\n ( ( S.m.a = a.readF2dot14( n, o ) ),\n ( o += 2 ),\n ( S.m.b = a.readF2dot14( n, o ) ),\n ( o += 2 ),\n ( S.m.c = a.readF2dot14( n, o ) ),\n ( o += 2 ),\n ( S.m.d = a.readF2dot14( n, o ) ),\n ( o += 2 ) );\n\n\t\t\t\t\t} while ( 32 & g );\n\n\t\t\t\t\tif ( 256 & g ) {\n\n\t\t\t\t\t\tvar y = a.readUshort( n, o );\n\t\t\t\t\t\t( o += 2 ), ( s.instr = [] );\n\t\t\t\t\t\tfor ( i = 0; i < y; i ++ ) s.instr.push( n[ o ] ), o ++;\n\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\treturn s;\n\n\t\t\t} ),\n\t\t\t( e.GDEF = {} ),\n\t\t\t( e.GDEF.parse = function ( r, t, a, n ) {\n\n\t\t\t\tvar o = t;\n\t\t\t\tt += 4;\n\t\t\t\tvar s = e._bin.readUshort( r, t );\n\t\t\t\treturn {\n\t\t\t\t\tglyphClassDef: 0 === s ? null : e._lctf.readClassDef( r, o + s ),\n\t\t\t\t};\n\n\t\t\t} ),\n\t\t\t( e.GPOS = {} ),\n\t\t\t( e.GPOS.parse = function ( r, t, a, n ) {\n\n\t\t\t\treturn e._lctf.parse( r, t, a, n, e.GPOS.subt );\n\n\t\t\t} ),\n\t\t\t( e.GPOS.subt = function ( r, t, a, n ) {\n\n\t\t\t\tvar o = e._bin,\n\t\t\t\t\ts = a,\n\t\t\t\t\ti = {};\n\t\t\t\tif (\n\t\t\t\t\t( ( i.fmt = o.readUshort( r, a ) ),\n\t\t\t\t\t( a += 2 ),\n\t\t\t\t\t1 == t || 2 == t || 3 == t || 7 == t || ( 8 == t && i.fmt <= 2 ) )\n\t\t\t\t) {\n\n\t\t\t\t\tvar h = o.readUshort( r, a );\n\t\t\t\t\t( a += 2 ), ( i.coverage = e._lctf.readCoverage( r, h + s ) );\n\n\t\t\t\t}\n\n\t\t\t\tif ( 1 == t && 1 == i.fmt ) {\n\n\t\t\t\t\tvar d = o.readUshort( r, a );\n\t\t\t\t\t( a += 2 ), 0 != d && ( i.pos = e.GPOS.readValueRecord( r, a, d ) );\n\n\t\t\t\t} else if ( 2 == t && i.fmt >= 1 && i.fmt <= 2 ) {\n\n\t\t\t\t\td = o.readUshort( r, a );\n\t\t\t\t\ta += 2;\n\t\t\t\t\tvar f = o.readUshort( r, a );\n\t\t\t\t\ta += 2;\n\t\t\t\t\tvar u = e._lctf.numOfOnes( d ),\n\t\t\t\t\t\tl = e._lctf.numOfOnes( f );\n\t\t\t\t\tif ( 1 == i.fmt ) {\n\n\t\t\t\t\t\ti.pairsets = [];\n\t\t\t\t\t\tvar v = o.readUshort( r, a );\n\t\t\t\t\t\ta += 2;\n\t\t\t\t\t\tfor ( var c = 0; c < v; c ++ ) {\n\n\t\t\t\t\t\t\tvar p = s + o.readUshort( r, a );\n\t\t\t\t\t\t\ta += 2;\n\t\t\t\t\t\t\tvar U = o.readUshort( r, p );\n\t\t\t\t\t\t\tp += 2;\n\t\t\t\t\t\t\tfor ( var g = [], S = 0; S < U; S ++ ) {\n\n\t\t\t\t\t\t\t\tvar m = o.readUshort( r, p );\n\t\t\t\t\t\t\t\t( p += 2 ),\n\t\t\t\t\t\t\t\t0 != d &&\n ( ( P = e.GPOS.readValueRecord( r, p, d ) ), ( p += 2 * u ) ),\n\t\t\t\t\t\t\t\t0 != f &&\n ( ( x = e.GPOS.readValueRecord( r, p, f ) ), ( p += 2 * l ) ),\n\t\t\t\t\t\t\t\tg.push( { gid2: m, val1: P, val2: x } );\n\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\ti.pairsets.push( g );\n\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( 2 == i.fmt ) {\n\n\t\t\t\t\t\tvar b = o.readUshort( r, a );\n\t\t\t\t\t\ta += 2;\n\t\t\t\t\t\tvar y = o.readUshort( r, a );\n\t\t\t\t\t\ta += 2;\n\t\t\t\t\t\tvar F = o.readUshort( r, a );\n\t\t\t\t\t\ta += 2;\n\t\t\t\t\t\tvar C = o.readUshort( r, a );\n\t\t\t\t\t\t( a += 2 ),\n\t\t\t\t\t\t( i.classDef1 = e._lctf.readClassDef( r, s + b ) ),\n\t\t\t\t\t\t( i.classDef2 = e._lctf.readClassDef( r, s + y ) ),\n\t\t\t\t\t\t( i.matrix = [] );\n\t\t\t\t\t\tfor ( c = 0; c < F; c ++ ) {\n\n\t\t\t\t\t\t\tvar _ = [];\n\t\t\t\t\t\t\tfor ( S = 0; S < C; S ++ ) {\n\n\t\t\t\t\t\t\t\tvar P = null,\n\t\t\t\t\t\t\t\t\tx = null;\n\t\t\t\t\t\t\t\t0 != d &&\n ( ( P = e.GPOS.readValueRecord( r, a, d ) ), ( a += 2 * u ) ),\n\t\t\t\t\t\t\t\t0 != f &&\n ( ( x = e.GPOS.readValueRecord( r, a, f ) ), ( a += 2 * l ) ),\n\t\t\t\t\t\t\t\t_.push( { val1: P, val2: x } );\n\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\ti.matrix.push( _ );\n\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t\t} else if ( 4 == t && 1 == i.fmt )\n\t\t\t\t\t( i.markCoverage = e._lctf.readCoverage( r, o.readUshort( r, a ) + s ) ),\n\t\t\t\t\t( i.baseCoverage = e._lctf.readCoverage(\n\t\t\t\t\t\tr,\n\t\t\t\t\t\to.readUshort( r, a + 2 ) + s\n\t\t\t\t\t) ),\n\t\t\t\t\t( i.markClassCount = o.readUshort( r, a + 4 ) ),\n\t\t\t\t\t( i.markArray = e.GPOS.readMarkArray(\n\t\t\t\t\t\tr,\n\t\t\t\t\t\to.readUshort( r, a + 6 ) + s\n\t\t\t\t\t) ),\n\t\t\t\t\t( i.baseArray = e.GPOS.readBaseArray(\n\t\t\t\t\t\tr,\n\t\t\t\t\t\to.readUshort( r, a + 8 ) + s,\n\t\t\t\t\t\ti.markClassCount\n\t\t\t\t\t) );\n\t\t\t\telse if ( 6 == t && 1 == i.fmt )\n\t\t\t\t\t( i.mark1Coverage = e._lctf.readCoverage( r, o.readUshort( r, a ) + s ) ),\n\t\t\t\t\t( i.mark2Coverage = e._lctf.readCoverage(\n\t\t\t\t\t\tr,\n\t\t\t\t\t\to.readUshort( r, a + 2 ) + s\n\t\t\t\t\t) ),\n\t\t\t\t\t( i.markClassCount = o.readUshort( r, a + 4 ) ),\n\t\t\t\t\t( i.mark1Array = e.GPOS.readMarkArray(\n\t\t\t\t\t\tr,\n\t\t\t\t\t\to.readUshort( r, a + 6 ) + s\n\t\t\t\t\t) ),\n\t\t\t\t\t( i.mark2Array = e.GPOS.readBaseArray(\n\t\t\t\t\t\tr,\n\t\t\t\t\t\to.readUshort( r, a + 8 ) + s,\n\t\t\t\t\t\ti.markClassCount\n\t\t\t\t\t) );\n\t\t\t\telse {\n\n\t\t\t\t\tif ( 9 == t && 1 == i.fmt ) {\n\n\t\t\t\t\t\tvar I = o.readUshort( r, a );\n\t\t\t\t\t\ta += 2;\n\t\t\t\t\t\tvar w = o.readUint( r, a );\n\t\t\t\t\t\tif ( ( ( a += 4 ), 9 == n.ltype ) ) n.ltype = I;\n\t\t\t\t\t\telse if ( n.ltype != I ) throw 'invalid extension substitution';\n\t\t\t\t\t\treturn e.GPOS.subt( r, n.ltype, s + w );\n\n\t\t\t\t\t}\n\t\t\t\t\t// console.debug(\n\t\t\t\t\t// 'unsupported GPOS table LookupType',\n\t\t\t\t\t// t,\n\t\t\t\t\t// 'format',\n\t\t\t\t\t// i.fmt\n\t\t\t\t\t// );\n\n\t\t\t\t}\n\n\t\t\t\treturn i;\n\n\t\t\t} ),\n\t\t\t( e.GPOS.readValueRecord = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = [];\n\t\t\t\treturn (\n\t\t\t\t\to.push( 1 & a ? n.readShort( r, t ) : 0 ),\n\t\t\t\t\t( t += 1 & a ? 2 : 0 ),\n\t\t\t\t\to.push( 2 & a ? n.readShort( r, t ) : 0 ),\n\t\t\t\t\t( t += 2 & a ? 2 : 0 ),\n\t\t\t\t\to.push( 4 & a ? n.readShort( r, t ) : 0 ),\n\t\t\t\t\t( t += 4 & a ? 2 : 0 ),\n\t\t\t\t\to.push( 8 & a ? n.readShort( r, t ) : 0 ),\n\t\t\t\t\t( t += 8 & a ? 2 : 0 ),\n\t\t\t\t\to\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e.GPOS.readBaseArray = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = [],\n\t\t\t\t\ts = t,\n\t\t\t\t\ti = n.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tfor ( var h = 0; h < i; h ++ ) {\n\n\t\t\t\t\tfor ( var d = [], f = 0; f < a; f ++ )\n\t\t\t\t\t\td.push( e.GPOS.readAnchorRecord( r, s + n.readUshort( r, t ) ) ),\n\t\t\t\t\t\t( t += 2 );\n\t\t\t\t\to.push( d );\n\n\t\t\t\t}\n\n\t\t\t\treturn o;\n\n\t\t\t} ),\n\t\t\t( e.GPOS.readMarkArray = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = [],\n\t\t\t\t\to = t,\n\t\t\t\t\ts = a.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tfor ( var i = 0; i < s; i ++ ) {\n\n\t\t\t\t\tvar h = e.GPOS.readAnchorRecord( r, a.readUshort( r, t + 2 ) + o );\n\t\t\t\t\t( h.markClass = a.readUshort( r, t ) ), n.push( h ), ( t += 4 );\n\n\t\t\t\t}\n\n\t\t\t\treturn n;\n\n\t\t\t} ),\n\t\t\t( e.GPOS.readAnchorRecord = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = {};\n\t\t\t\treturn (\n\t\t\t\t\t( n.fmt = a.readUshort( r, t ) ),\n\t\t\t\t\t( n.x = a.readShort( r, t + 2 ) ),\n\t\t\t\t\t( n.y = a.readShort( r, t + 4 ) ),\n\t\t\t\t\tn\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e.GSUB = {} ),\n\t\t\t( e.GSUB.parse = function ( r, t, a, n ) {\n\n\t\t\t\treturn e._lctf.parse( r, t, a, n, e.GSUB.subt );\n\n\t\t\t} ),\n\t\t\t( e.GSUB.subt = function ( r, t, a, n ) {\n\n\t\t\t\tvar o = e._bin,\n\t\t\t\t\ts = a,\n\t\t\t\t\ti = {};\n\t\t\t\tif (\n\t\t\t\t\t( ( i.fmt = o.readUshort( r, a ) ),\n\t\t\t\t\t( a += 2 ),\n\t\t\t\t\t1 != t && 2 != t && 4 != t && 5 != t && 6 != t )\n\t\t\t\t)\n\t\t\t\t\treturn null;\n\t\t\t\tif (\n\t\t\t\t\t1 == t ||\n 2 == t ||\n 4 == t ||\n ( 5 == t && i.fmt <= 2 ) ||\n ( 6 == t && i.fmt <= 2 )\n\t\t\t\t) {\n\n\t\t\t\t\tvar h = o.readUshort( r, a );\n\t\t\t\t\t( a += 2 ), ( i.coverage = e._lctf.readCoverage( r, s + h ) );\n\n\t\t\t\t}\n\n\t\t\t\tif ( 1 == t && i.fmt >= 1 && i.fmt <= 2 ) {\n\n\t\t\t\t\tif ( 1 == i.fmt ) ( i.delta = o.readShort( r, a ) ), ( a += 2 );\n\t\t\t\t\telse if ( 2 == i.fmt ) {\n\n\t\t\t\t\t\tvar d = o.readUshort( r, a );\n\t\t\t\t\t\t( a += 2 ),\n\t\t\t\t\t\t( i.newg = o.readUshorts( r, a, d ) ),\n\t\t\t\t\t\t( a += 2 * i.newg.length );\n\n\t\t\t\t\t}\n\n\t\t\t\t} else if ( 2 == t && 1 == i.fmt ) {\n\n\t\t\t\t\td = o.readUshort( r, a );\n\t\t\t\t\t( a += 2 ), ( i.seqs = [] );\n\t\t\t\t\tfor ( var f = 0; f < d; f ++ ) {\n\n\t\t\t\t\t\tvar u = o.readUshort( r, a ) + s;\n\t\t\t\t\t\ta += 2;\n\t\t\t\t\t\tvar l = o.readUshort( r, u );\n\t\t\t\t\t\ti.seqs.push( o.readUshorts( r, u + 2, l ) );\n\n\t\t\t\t\t}\n\n\t\t\t\t} else if ( 4 == t ) {\n\n\t\t\t\t\ti.vals = [];\n\t\t\t\t\td = o.readUshort( r, a );\n\t\t\t\t\ta += 2;\n\t\t\t\t\tfor ( f = 0; f < d; f ++ ) {\n\n\t\t\t\t\t\tvar v = o.readUshort( r, a );\n\t\t\t\t\t\t( a += 2 ), i.vals.push( e.GSUB.readLigatureSet( r, s + v ) );\n\n\t\t\t\t\t}\n\n\t\t\t\t} else if ( 5 == t && 2 == i.fmt ) {\n\n\t\t\t\t\tif ( 2 == i.fmt ) {\n\n\t\t\t\t\t\tvar c = o.readUshort( r, a );\n\t\t\t\t\t\t( a += 2 ),\n\t\t\t\t\t\t( i.cDef = e._lctf.readClassDef( r, s + c ) ),\n\t\t\t\t\t\t( i.scset = [] );\n\t\t\t\t\t\tvar p = o.readUshort( r, a );\n\t\t\t\t\t\ta += 2;\n\t\t\t\t\t\tfor ( f = 0; f < p; f ++ ) {\n\n\t\t\t\t\t\t\tvar U = o.readUshort( r, a );\n\t\t\t\t\t\t\t( a += 2 ),\n\t\t\t\t\t\t\ti.scset.push(\n\t\t\t\t\t\t\t\t0 == U ? null : e.GSUB.readSubClassSet( r, s + U )\n\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t\t} else if ( 6 == t && 3 == i.fmt ) {\n\n\t\t\t\t\tif ( 3 == i.fmt ) {\n\n\t\t\t\t\t\tfor ( f = 0; f < 3; f ++ ) {\n\n\t\t\t\t\t\t\td = o.readUshort( r, a );\n\t\t\t\t\t\t\ta += 2;\n\t\t\t\t\t\t\tfor ( var g = [], S = 0; S < d; S ++ )\n\t\t\t\t\t\t\t\tg.push(\n\t\t\t\t\t\t\t\t\te._lctf.readCoverage( r, s + o.readUshort( r, a + 2 * S ) )\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t( a += 2 * d ),\n\t\t\t\t\t\t\t0 == f && ( i.backCvg = g ),\n\t\t\t\t\t\t\t1 == f && ( i.inptCvg = g ),\n\t\t\t\t\t\t\t2 == f && ( i.ahedCvg = g );\n\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\td = o.readUshort( r, a );\n\t\t\t\t\t\t( a += 2 ), ( i.lookupRec = e.GSUB.readSubstLookupRecords( r, a, d ) );\n\n\t\t\t\t\t}\n\n\t\t\t\t} else {\n\n\t\t\t\t\tif ( 7 == t && 1 == i.fmt ) {\n\n\t\t\t\t\t\tvar m = o.readUshort( r, a );\n\t\t\t\t\t\ta += 2;\n\t\t\t\t\t\tvar b = o.readUint( r, a );\n\t\t\t\t\t\tif ( ( ( a += 4 ), 9 == n.ltype ) ) n.ltype = m;\n\t\t\t\t\t\telse if ( n.ltype != m ) throw 'invalid extension substitution';\n\t\t\t\t\t\treturn e.GSUB.subt( r, n.ltype, s + b );\n\n\t\t\t\t\t}\n\t\t\t\t\t// console.debug(\n\t\t\t\t\t// 'unsupported GSUB table LookupType',\n\t\t\t\t\t// t,\n\t\t\t\t\t// 'format',\n\t\t\t\t\t// i.fmt\n\t\t\t\t\t// );\n\n\t\t\t\t}\n\n\t\t\t\treturn i;\n\n\t\t\t} ),\n\t\t\t( e.GSUB.readSubClassSet = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin.readUshort,\n\t\t\t\t\tn = t,\n\t\t\t\t\to = [],\n\t\t\t\t\ts = a( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tfor ( var i = 0; i < s; i ++ ) {\n\n\t\t\t\t\tvar h = a( r, t );\n\t\t\t\t\t( t += 2 ), o.push( e.GSUB.readSubClassRule( r, n + h ) );\n\n\t\t\t\t}\n\n\t\t\t\treturn o;\n\n\t\t\t} ),\n\t\t\t( e.GSUB.readSubClassRule = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin.readUshort,\n\t\t\t\t\tn = {},\n\t\t\t\t\to = a( r, t ),\n\t\t\t\t\ts = a( r, ( t += 2 ) );\n\t\t\t\t( t += 2 ), ( n.input = [] );\n\t\t\t\tfor ( var i = 0; i < o - 1; i ++ ) n.input.push( a( r, t ) ), ( t += 2 );\n\t\t\t\treturn (\n\t\t\t\t\t( n.substLookupRecords = e.GSUB.readSubstLookupRecords( r, t, s ) ), n\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e.GSUB.readSubstLookupRecords = function ( r, t, a ) {\n\n\t\t\t\tfor ( var n = e._bin.readUshort, o = [], s = 0; s < a; s ++ )\n\t\t\t\t\to.push( n( r, t ), n( r, t + 2 ) ), ( t += 4 );\n\t\t\t\treturn o;\n\n\t\t\t} ),\n\t\t\t( e.GSUB.readChainSubClassSet = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = t,\n\t\t\t\t\to = [],\n\t\t\t\t\ts = a.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tfor ( var i = 0; i < s; i ++ ) {\n\n\t\t\t\t\tvar h = a.readUshort( r, t );\n\t\t\t\t\t( t += 2 ), o.push( e.GSUB.readChainSubClassRule( r, n + h ) );\n\n\t\t\t\t}\n\n\t\t\t\treturn o;\n\n\t\t\t} ),\n\t\t\t( e.GSUB.readChainSubClassRule = function ( r, t ) {\n\n\t\t\t\tfor (\n\t\t\t\t\tvar a = e._bin,\n\t\t\t\t\t\tn = {},\n\t\t\t\t\t\to = [ 'backtrack', 'input', 'lookahead' ],\n\t\t\t\t\t\ts = 0;\n\t\t\t\t\ts < o.length;\n\t\t\t\t\ts ++\n\t\t\t\t) {\n\n\t\t\t\t\tvar i = a.readUshort( r, t );\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t1 == s && i --,\n\t\t\t\t\t( n[ o[ s ] ] = a.readUshorts( r, t, i ) ),\n\t\t\t\t\t( t += 2 * n[ o[ s ] ].length );\n\n\t\t\t\t}\n\n\t\t\t\ti = a.readUshort( r, t );\n\t\t\t\treturn (\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( n.subst = a.readUshorts( r, t, 2 * i ) ),\n\t\t\t\t\t( t += 2 * n.subst.length ),\n\t\t\t\t\tn\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e.GSUB.readLigatureSet = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = t,\n\t\t\t\t\to = [],\n\t\t\t\t\ts = a.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tfor ( var i = 0; i < s; i ++ ) {\n\n\t\t\t\t\tvar h = a.readUshort( r, t );\n\t\t\t\t\t( t += 2 ), o.push( e.GSUB.readLigature( r, n + h ) );\n\n\t\t\t\t}\n\n\t\t\t\treturn o;\n\n\t\t\t} ),\n\t\t\t( e.GSUB.readLigature = function ( r, t ) {\n\n\t\t\t\tvar a = e._bin,\n\t\t\t\t\tn = { chain: [] };\n\t\t\t\t( n.nglyph = a.readUshort( r, t ) ), ( t += 2 );\n\t\t\t\tvar o = a.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tfor ( var s = 0; s < o - 1; s ++ )\n\t\t\t\t\tn.chain.push( a.readUshort( r, t ) ), ( t += 2 );\n\t\t\t\treturn n;\n\n\t\t\t} ),\n\t\t\t( e.head = {} ),\n\t\t\t( e.head.parse = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = {};\n\t\t\t\treturn (\n\t\t\t\t\tn.readFixed( r, t ),\n\t\t\t\t\t( t += 4 ),\n\t\t\t\t\t( o.fontRevision = n.readFixed( r, t ) ),\n\t\t\t\t\t( t += 4 ),\n\t\t\t\t\tn.readUint( r, t ),\n\t\t\t\t\t( t += 4 ),\n\t\t\t\t\tn.readUint( r, t ),\n\t\t\t\t\t( t += 4 ),\n\t\t\t\t\t( o.flags = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.unitsPerEm = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.created = n.readUint64( r, t ) ),\n\t\t\t\t\t( t += 8 ),\n\t\t\t\t\t( o.modified = n.readUint64( r, t ) ),\n\t\t\t\t\t( t += 8 ),\n\t\t\t\t\t( o.xMin = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.yMin = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.xMax = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.yMax = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.macStyle = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.lowestRecPPEM = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.fontDirectionHint = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.indexToLocFormat = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.glyphDataFormat = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\to\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e.hhea = {} ),\n\t\t\t( e.hhea.parse = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = {};\n\t\t\t\treturn (\n\t\t\t\t\tn.readFixed( r, t ),\n\t\t\t\t\t( t += 4 ),\n\t\t\t\t\t( o.ascender = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.descender = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.lineGap = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.advanceWidthMax = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.minLeftSideBearing = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.minRightSideBearing = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.xMaxExtent = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.caretSlopeRise = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.caretSlopeRun = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.caretOffset = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( t += 8 ),\n\t\t\t\t\t( o.metricDataFormat = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.numberOfHMetrics = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\to\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e.hmtx = {} ),\n\t\t\t( e.hmtx.parse = function ( r, t, a, n ) {\n\n\t\t\t\tfor (\n\t\t\t\t\tvar o = e._bin,\n\t\t\t\t\t\ts = { aWidth: [], lsBearing: [] },\n\t\t\t\t\t\ti = 0,\n\t\t\t\t\t\th = 0,\n\t\t\t\t\t\td = 0;\n\t\t\t\t\td < n.maxp.numGlyphs;\n\t\t\t\t\td ++\n\t\t\t\t)\n\t\t\t\t\td < n.hhea.numberOfHMetrics &&\n ( ( i = o.readUshort( r, t ) ),\n ( t += 2 ),\n ( h = o.readShort( r, t ) ),\n ( t += 2 ) ),\n\t\t\t\t\ts.aWidth.push( i ),\n\t\t\t\t\ts.lsBearing.push( h );\n\t\t\t\treturn s;\n\n\t\t\t} ),\n\t\t\t( e.kern = {} ),\n\t\t\t( e.kern.parse = function ( r, t, a, n ) {\n\n\t\t\t\tvar o = e._bin,\n\t\t\t\t\ts = o.readUshort( r, t );\n\t\t\t\tif ( ( ( t += 2 ), 1 == s ) ) return e.kern.parseV1( r, t - 2, a, n );\n\t\t\t\tvar i = o.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tfor ( var h = { glyph1: [], rval: [] }, d = 0; d < i; d ++ ) {\n\n\t\t\t\t\tt += 2;\n\t\t\t\t\ta = o.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar f = o.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar u = f >>> 8;\n\t\t\t\t\tif ( 0 != ( u &= 15 ) ) throw 'unknown kern table format: ' + u;\n\t\t\t\t\tt = e.kern.readFormat0( r, t, h );\n\n\t\t\t\t}\n\n\t\t\t\treturn h;\n\n\t\t\t} ),\n\t\t\t( e.kern.parseV1 = function ( r, t, a, n ) {\n\n\t\t\t\tvar o = e._bin;\n\t\t\t\to.readFixed( r, t ), ( t += 4 );\n\t\t\t\tvar s = o.readUint( r, t );\n\t\t\t\tt += 4;\n\t\t\t\tfor ( var i = { glyph1: [], rval: [] }, h = 0; h < s; h ++ ) {\n\n\t\t\t\t\to.readUint( r, t ), ( t += 4 );\n\t\t\t\t\tvar d = o.readUshort( r, t );\n\t\t\t\t\t( t += 2 ), o.readUshort( r, t ), ( t += 2 );\n\t\t\t\t\tvar f = d >>> 8;\n\t\t\t\t\tif ( 0 != ( f &= 15 ) ) throw 'unknown kern table format: ' + f;\n\t\t\t\t\tt = e.kern.readFormat0( r, t, i );\n\n\t\t\t\t}\n\n\t\t\t\treturn i;\n\n\t\t\t} ),\n\t\t\t( e.kern.readFormat0 = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = - 1,\n\t\t\t\t\ts = n.readUshort( r, t );\n\t\t\t\t( t += 2 ),\n\t\t\t\tn.readUshort( r, t ),\n\t\t\t\t( t += 2 ),\n\t\t\t\tn.readUshort( r, t ),\n\t\t\t\t( t += 2 ),\n\t\t\t\tn.readUshort( r, t ),\n\t\t\t\t( t += 2 );\n\t\t\t\tfor ( var i = 0; i < s; i ++ ) {\n\n\t\t\t\t\tvar h = n.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar d = n.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar f = n.readShort( r, t );\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\th != o &&\n ( a.glyph1.push( h ), a.rval.push( { glyph2: [], vals: [] } ) );\n\t\t\t\t\tvar u = a.rval[ a.rval.length - 1 ];\n\t\t\t\t\tu.glyph2.push( d ), u.vals.push( f ), ( o = h );\n\n\t\t\t\t}\n\n\t\t\t\treturn t;\n\n\t\t\t} ),\n\t\t\t( e.loca = {} ),\n\t\t\t( e.loca.parse = function ( r, t, a, n ) {\n\n\t\t\t\tvar o = e._bin,\n\t\t\t\t\ts = [],\n\t\t\t\t\ti = n.head.indexToLocFormat,\n\t\t\t\t\th = n.maxp.numGlyphs + 1;\n\t\t\t\tif ( 0 == i )\n\t\t\t\t\tfor ( var d = 0; d < h; d ++ )\n\t\t\t\t\t\ts.push( o.readUshort( r, t + ( d << 1 ) ) << 1 );\n\t\t\t\tif ( 1 == i )\n\t\t\t\t\tfor ( d = 0; d < h; d ++ ) s.push( o.readUint( r, t + ( d << 2 ) ) );\n\t\t\t\treturn s;\n\n\t\t\t} ),\n\t\t\t( e.maxp = {} ),\n\t\t\t( e.maxp.parse = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = {},\n\t\t\t\t\ts = n.readUint( r, t );\n\t\t\t\treturn (\n\t\t\t\t\t( t += 4 ),\n\t\t\t\t\t( o.numGlyphs = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t65536 == s &&\n ( ( o.maxPoints = n.readUshort( r, t ) ),\n ( t += 2 ),\n ( o.maxContours = n.readUshort( r, t ) ),\n ( t += 2 ),\n ( o.maxCompositePoints = n.readUshort( r, t ) ),\n ( t += 2 ),\n ( o.maxCompositeContours = n.readUshort( r, t ) ),\n ( t += 2 ),\n ( o.maxZones = n.readUshort( r, t ) ),\n ( t += 2 ),\n ( o.maxTwilightPoints = n.readUshort( r, t ) ),\n ( t += 2 ),\n ( o.maxStorage = n.readUshort( r, t ) ),\n ( t += 2 ),\n ( o.maxFunctionDefs = n.readUshort( r, t ) ),\n ( t += 2 ),\n ( o.maxInstructionDefs = n.readUshort( r, t ) ),\n ( t += 2 ),\n ( o.maxStackElements = n.readUshort( r, t ) ),\n ( t += 2 ),\n ( o.maxSizeOfInstructions = n.readUshort( r, t ) ),\n ( t += 2 ),\n ( o.maxComponentElements = n.readUshort( r, t ) ),\n ( t += 2 ),\n ( o.maxComponentDepth = n.readUshort( r, t ) ),\n ( t += 2 ) ),\n\t\t\t\t\to\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e.name = {} ),\n\t\t\t( e.name.parse = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = {};\n\t\t\t\tn.readUshort( r, t ), ( t += 2 );\n\t\t\t\tvar s = n.readUshort( r, t );\n\t\t\t\t( t += 2 ), n.readUshort( r, t );\n\t\t\t\tfor (\n\t\t\t\t\tvar i,\n\t\t\t\t\t\th = [\n\t\t\t\t\t\t\t'copyright',\n\t\t\t\t\t\t\t'fontFamily',\n\t\t\t\t\t\t\t'fontSubfamily',\n\t\t\t\t\t\t\t'ID',\n\t\t\t\t\t\t\t'fullName',\n\t\t\t\t\t\t\t'version',\n\t\t\t\t\t\t\t'postScriptName',\n\t\t\t\t\t\t\t'trademark',\n\t\t\t\t\t\t\t'manufacturer',\n\t\t\t\t\t\t\t'designer',\n\t\t\t\t\t\t\t'description',\n\t\t\t\t\t\t\t'urlVendor',\n\t\t\t\t\t\t\t'urlDesigner',\n\t\t\t\t\t\t\t'licence',\n\t\t\t\t\t\t\t'licenceURL',\n\t\t\t\t\t\t\t'---',\n\t\t\t\t\t\t\t'typoFamilyName',\n\t\t\t\t\t\t\t'typoSubfamilyName',\n\t\t\t\t\t\t\t'compatibleFull',\n\t\t\t\t\t\t\t'sampleText',\n\t\t\t\t\t\t\t'postScriptCID',\n\t\t\t\t\t\t\t'wwsFamilyName',\n\t\t\t\t\t\t\t'wwsSubfamilyName',\n\t\t\t\t\t\t\t'lightPalette',\n\t\t\t\t\t\t\t'darkPalette',\n\t\t\t\t\t\t],\n\t\t\t\t\t\td = ( t += 2 ),\n\t\t\t\t\t\tf = 0;\n\t\t\t\t\tf < s;\n\t\t\t\t\tf ++\n\t\t\t\t) {\n\n\t\t\t\t\tvar u = n.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar l = n.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar v = n.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar c = n.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar p = n.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar U = n.readUshort( r, t );\n\t\t\t\t\tt += 2;\n\t\t\t\t\tvar g,\n\t\t\t\t\t\tS = h[ c ],\n\t\t\t\t\t\tm = d + 12 * s + U;\n\t\t\t\t\tif ( 0 == u ) g = n.readUnicode( r, m, p / 2 );\n\t\t\t\t\telse if ( 3 == u && 0 == l ) g = n.readUnicode( r, m, p / 2 );\n\t\t\t\t\telse if ( 0 == l ) g = n.readASCII( r, m, p );\n\t\t\t\t\telse if ( 1 == l ) g = n.readUnicode( r, m, p / 2 );\n\t\t\t\t\telse if ( 3 == l ) g = n.readUnicode( r, m, p / 2 );\n\t\t\t\t\telse {\n\n\t\t\t\t\t\tif ( 1 != u ) throw 'unknown encoding ' + l + ', platformID: ' + u;\n\t\t\t\t\t\t( g = n.readASCII( r, m, p ) ),\n\t\t\t\t\t\tconsole.debug(\n\t\t\t\t\t\t\t'reading unknown MAC encoding ' + l + ' as ASCII'\n\t\t\t\t\t\t);\n\n\t\t\t\t\t}\n\n\t\t\t\t\tvar b = 'p' + u + ',' + v.toString( 16 );\n\t\t\t\t\tnull == o[ b ] && ( o[ b ] = {} ),\n\t\t\t\t\t( o[ b ][ void 0 !== S ? S : c ] = g ),\n\t\t\t\t\t( o[ b ]._lang = v );\n\n\t\t\t\t}\n\n\t\t\t\tfor ( var y in o )\n\t\t\t\t\tif ( null != o[ y ].postScriptName && 1033 == o[ y ]._lang ) return o[ y ];\n\t\t\t\tfor ( var y in o )\n\t\t\t\t\tif ( null != o[ y ].postScriptName && 0 == o[ y ]._lang ) return o[ y ];\n\t\t\t\tfor ( var y in o )\n\t\t\t\t\tif ( null != o[ y ].postScriptName && 3084 == o[ y ]._lang ) return o[ y ];\n\t\t\t\tfor ( var y in o ) if ( null != o[ y ].postScriptName ) return o[ y ];\n\t\t\t\tfor ( var y in o ) {\n\n\t\t\t\t\ti = y;\n\t\t\t\t\tbreak;\n\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\tconsole.debug( 'returning name table with languageID ' + o[ i ]._lang ),\n\t\t\t\t\to[ i ]\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e[ 'OS/2' ] = {} ),\n\t\t\t( e[ 'OS/2' ].parse = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin.readUshort( r, t );\n\t\t\t\tt += 2;\n\t\t\t\tvar o = {};\n\t\t\t\tif ( 0 == n ) e[ 'OS/2' ].version0( r, t, o );\n\t\t\t\telse if ( 1 == n ) e[ 'OS/2' ].version1( r, t, o );\n\t\t\t\telse if ( 2 == n || 3 == n || 4 == n ) e[ 'OS/2' ].version2( r, t, o );\n\t\t\t\telse {\n\n\t\t\t\t\tif ( 5 != n ) throw 'unknown OS/2 table version: ' + n;\n\t\t\t\t\te[ 'OS/2' ].version5( r, t, o );\n\n\t\t\t\t}\n\n\t\t\t\treturn o;\n\n\t\t\t} ),\n\t\t\t( e[ 'OS/2' ].version0 = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin;\n\t\t\t\treturn (\n\t\t\t\t\t( a.xAvgCharWidth = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.usWeightClass = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.usWidthClass = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.fsType = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.ySubscriptXSize = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.ySubscriptYSize = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.ySubscriptXOffset = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.ySubscriptYOffset = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.ySuperscriptXSize = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.ySuperscriptYSize = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.ySuperscriptXOffset = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.ySuperscriptYOffset = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.yStrikeoutSize = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.yStrikeoutPosition = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.sFamilyClass = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.panose = n.readBytes( r, t, 10 ) ),\n\t\t\t\t\t( t += 10 ),\n\t\t\t\t\t( a.ulUnicodeRange1 = n.readUint( r, t ) ),\n\t\t\t\t\t( t += 4 ),\n\t\t\t\t\t( a.ulUnicodeRange2 = n.readUint( r, t ) ),\n\t\t\t\t\t( t += 4 ),\n\t\t\t\t\t( a.ulUnicodeRange3 = n.readUint( r, t ) ),\n\t\t\t\t\t( t += 4 ),\n\t\t\t\t\t( a.ulUnicodeRange4 = n.readUint( r, t ) ),\n\t\t\t\t\t( t += 4 ),\n\t\t\t\t\t( a.achVendID = [\n\t\t\t\t\t\tn.readInt8( r, t ),\n\t\t\t\t\t\tn.readInt8( r, t + 1 ),\n\t\t\t\t\t\tn.readInt8( r, t + 2 ),\n\t\t\t\t\t\tn.readInt8( r, t + 3 ),\n\t\t\t\t\t] ),\n\t\t\t\t\t( t += 4 ),\n\t\t\t\t\t( a.fsSelection = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.usFirstCharIndex = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.usLastCharIndex = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.sTypoAscender = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.sTypoDescender = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.sTypoLineGap = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.usWinAscent = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.usWinDescent = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 )\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e[ 'OS/2' ].version1 = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin;\n\t\t\t\treturn (\n\t\t\t\t\t( t = e[ 'OS/2' ].version0( r, t, a ) ),\n\t\t\t\t\t( a.ulCodePageRange1 = n.readUint( r, t ) ),\n\t\t\t\t\t( t += 4 ),\n\t\t\t\t\t( a.ulCodePageRange2 = n.readUint( r, t ) ),\n\t\t\t\t\t( t += 4 )\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e[ 'OS/2' ].version2 = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin;\n\t\t\t\treturn (\n\t\t\t\t\t( t = e[ 'OS/2' ].version1( r, t, a ) ),\n\t\t\t\t\t( a.sxHeight = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.sCapHeight = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.usDefault = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.usBreak = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.usMaxContext = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 )\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e[ 'OS/2' ].version5 = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin;\n\t\t\t\treturn (\n\t\t\t\t\t( t = e[ 'OS/2' ].version2( r, t, a ) ),\n\t\t\t\t\t( a.usLowerOpticalPointSize = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( a.usUpperOpticalPointSize = n.readUshort( r, t ) ),\n\t\t\t\t\t( t += 2 )\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\t( e.post = {} ),\n\t\t\t( e.post.parse = function ( r, t, a ) {\n\n\t\t\t\tvar n = e._bin,\n\t\t\t\t\to = {};\n\t\t\t\treturn (\n\t\t\t\t\t( o.version = n.readFixed( r, t ) ),\n\t\t\t\t\t( t += 4 ),\n\t\t\t\t\t( o.italicAngle = n.readFixed( r, t ) ),\n\t\t\t\t\t( t += 4 ),\n\t\t\t\t\t( o.underlinePosition = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\t( o.underlineThickness = n.readShort( r, t ) ),\n\t\t\t\t\t( t += 2 ),\n\t\t\t\t\to\n\t\t\t\t);\n\n\t\t\t} ),\n\t\t\tnull == e && ( e = {} ),\n\t\t\tnull == e.U && ( e.U = {} ),\n\t\t\t( e.U.codeToGlyph = function ( r, e ) {\n\n\t\t\t\tvar t = r.cmap,\n\t\t\t\t\ta = - 1;\n\t\t\t\tif (\n\t\t\t\t\t( null != t.p0e4\n\t\t\t\t\t\t? ( a = t.p0e4 )\n\t\t\t\t\t\t: null != t.p3e1\n\t\t\t\t\t\t\t? ( a = t.p3e1 )\n\t\t\t\t\t\t\t: null != t.p1e0\n\t\t\t\t\t\t\t\t? ( a = t.p1e0 )\n\t\t\t\t\t\t\t\t: null != t.p0e3 && ( a = t.p0e3 ),\n\t\t\t\t\t- 1 == a )\n\t\t\t\t)\n\t\t\t\t\tthrow 'no familiar platform and encoding!';\n\t\t\t\tvar n = t.tables[ a ];\n\t\t\t\tif ( 0 == n.format ) return e >= n.map.length ? 0 : n.map[ e ];\n\t\t\t\tif ( 4 == n.format ) {\n\n\t\t\t\t\tfor ( var o = - 1, s = 0; s < n.endCount.length; s ++ )\n\t\t\t\t\t\tif ( e <= n.endCount[ s ] ) {\n\n\t\t\t\t\t\t\to = s;\n\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t}\n\n\t\t\t\t\tif ( - 1 == o ) return 0;\n\t\t\t\t\tif ( n.startCount[ o ] > e ) return 0;\n\t\t\t\t\treturn (\n\t\t\t\t\t\t65535 &\n ( 0 != n.idRangeOffset[ o ]\n \t? n.glyphIdArray[\n \t\te -\n n.startCount[ o ] +\n ( n.idRangeOffset[ o ] >> 1 ) -\n ( n.idRangeOffset.length - o )\n \t]\n \t: e + n.idDelta[ o ] )\n\t\t\t\t\t);\n\n\t\t\t\t}\n\n\t\t\t\tif ( 12 == n.format ) {\n\n\t\t\t\t\tif ( e > n.groups[ n.groups.length - 1 ][ 1 ] ) return 0;\n\t\t\t\t\tfor ( s = 0; s < n.groups.length; s ++ ) {\n\n\t\t\t\t\t\tvar i = n.groups[ s ];\n\t\t\t\t\t\tif ( i[ 0 ] <= e && e <= i[ 1 ] ) return i[ 2 ] + ( e - i[ 0 ] );\n\n\t\t\t\t\t}\n\n\t\t\t\t\treturn 0;\n\n\t\t\t\t}\n\n\t\t\t\tthrow 'unknown cmap table format ' + n.format;\n\n\t\t\t} ),\n\t\t\t( e.U.glyphToPath = function ( r, t ) {\n\n\t\t\t\tvar a = { cmds: [], crds: [] };\n\t\t\t\tif ( r.SVG && r.SVG.entries[ t ] ) {\n\n\t\t\t\t\tvar n = r.SVG.entries[ t ];\n\t\t\t\t\treturn null == n\n\t\t\t\t\t\t? a\n\t\t\t\t\t\t: ( 'string' == typeof n &&\n ( ( n = e.SVG.toPath( n ) ), ( r.SVG.entries[ t ] = n ) ),\n\t\t\t\t\t\tn );\n\n\t\t\t\t}\n\n\t\t\t\tif ( r.CFF ) {\n\n\t\t\t\t\tvar o = {\n\t\t\t\t\t\t\tx: 0,\n\t\t\t\t\t\t\ty: 0,\n\t\t\t\t\t\t\tstack: [],\n\t\t\t\t\t\t\tnStems: 0,\n\t\t\t\t\t\t\thaveWidth: ! 1,\n\t\t\t\t\t\t\twidth: r.CFF.Private ? r.CFF.Private.defaultWidthX : 0,\n\t\t\t\t\t\t\topen: ! 1,\n\t\t\t\t\t\t},\n\t\t\t\t\t\ts = r.CFF,\n\t\t\t\t\t\ti = r.CFF.Private;\n\t\t\t\t\tif ( s.ROS ) {\n\n\t\t\t\t\t\tfor ( var h = 0; s.FDSelect[ h + 2 ] <= t; ) h += 2;\n\t\t\t\t\t\ti = s.FDArray[ s.FDSelect[ h + 1 ] ].Private;\n\n\t\t\t\t\t}\n\n\t\t\t\t\te.U._drawCFF( r.CFF.CharStrings[ t ], o, s, i, a );\n\n\t\t\t\t} else r.glyf && e.U._drawGlyf( t, r, a );\n\t\t\t\treturn a;\n\n\t\t\t} ),\n\t\t\t( e.U._drawGlyf = function ( r, t, a ) {\n\n\t\t\t\tvar n = t.glyf[ r ];\n\t\t\t\tnull == n && ( n = t.glyf[ r ] = e.glyf._parseGlyf( t, r ) ),\n\t\t\t\tnull != n &&\n ( n.noc > - 1 ? e.U._simpleGlyph( n, a ) : e.U._compoGlyph( n, t, a ) );\n\n\t\t\t} ),\n\t\t\t( e.U._simpleGlyph = function ( r, t ) {\n\n\t\t\t\tfor ( var a = 0; a < r.noc; a ++ ) {\n\n\t\t\t\t\tfor (\n\t\t\t\t\t\tvar n = 0 == a ? 0 : r.endPts[ a - 1 ] + 1, o = r.endPts[ a ], s = n;\n\t\t\t\t\t\ts <= o;\n\t\t\t\t\t\ts ++\n\t\t\t\t\t) {\n\n\t\t\t\t\t\tvar i = s == n ? o : s - 1,\n\t\t\t\t\t\t\th = s == o ? n : s + 1,\n\t\t\t\t\t\t\td = 1 & r.flags[ s ],\n\t\t\t\t\t\t\tf = 1 & r.flags[ i ],\n\t\t\t\t\t\t\tu = 1 & r.flags[ h ],\n\t\t\t\t\t\t\tl = r.xs[ s ],\n\t\t\t\t\t\t\tv = r.ys[ s ];\n\t\t\t\t\t\tif ( s == n )\n\t\t\t\t\t\t\tif ( d ) {\n\n\t\t\t\t\t\t\t\tif ( ! f ) {\n\n\t\t\t\t\t\t\t\t\te.U.P.moveTo( t, l, v );\n\t\t\t\t\t\t\t\t\tcontinue;\n\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\te.U.P.moveTo( t, r.xs[ i ], r.ys[ i ] );\n\n\t\t\t\t\t\t\t} else\n\t\t\t\t\t\t\t\tf\n\t\t\t\t\t\t\t\t\t? e.U.P.moveTo( t, r.xs[ i ], r.ys[ i ] )\n\t\t\t\t\t\t\t\t\t: e.U.P.moveTo( t, ( r.xs[ i ] + l ) / 2, ( r.ys[ i ] + v ) / 2 );\n\t\t\t\t\t\td\n\t\t\t\t\t\t\t? f && e.U.P.lineTo( t, l, v )\n\t\t\t\t\t\t\t: u\n\t\t\t\t\t\t\t\t? e.U.P.qcurveTo( t, l, v, r.xs[ h ], r.ys[ h ] )\n\t\t\t\t\t\t\t\t: e.U.P.qcurveTo( t, l, v, ( l + r.xs[ h ] ) / 2, ( v + r.ys[ h ] ) / 2 );\n\n\t\t\t\t\t}\n\n\t\t\t\t\te.U.P.closePath( t );\n\n\t\t\t\t}\n\n\t\t\t} ),\n\t\t\t( e.U._compoGlyph = function ( r, t, a ) {\n\n\t\t\t\tfor ( var n = 0; n < r.parts.length; n ++ ) {\n\n\t\t\t\t\tvar o = { cmds: [], crds: [] },\n\t\t\t\t\t\ts = r.parts[ n ];\n\t\t\t\t\te.U._drawGlyf( s.glyphIndex, t, o );\n\t\t\t\t\tfor ( var i = s.m, h = 0; h < o.crds.length; h += 2 ) {\n\n\t\t\t\t\t\tvar d = o.crds[ h ],\n\t\t\t\t\t\t\tf = o.crds[ h + 1 ];\n\t\t\t\t\t\ta.crds.push( d * i.a + f * i.b + i.tx ),\n\t\t\t\t\t\ta.crds.push( d * i.c + f * i.d + i.ty );\n\n\t\t\t\t\t}\n\n\t\t\t\t\tfor ( h = 0; h < o.cmds.length; h ++ ) a.cmds.push( o.cmds[ h ] );\n\n\t\t\t\t}\n\n\t\t\t} ),\n\t\t\t( e.U._getGlyphClass = function ( r, t ) {\n\n\t\t\t\tvar a = e._lctf.getInterval( t, r );\n\t\t\t\treturn - 1 == a ? 0 : t[ a + 2 ];\n\n\t\t\t} ),\n\t\t\t( e.U._applySubs = function ( r, t, a, n ) {\n\n\t\t\t\tfor ( var o = r.length - t - 1, s = 0; s < a.tabs.length; s ++ )\n\t\t\t\t\tif ( null != a.tabs[ s ] ) {\n\n\t\t\t\t\t\tvar i,\n\t\t\t\t\t\t\th = a.tabs[ s ];\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t! h.coverage ||\n - 1 != ( i = e._lctf.coverageIndex( h.coverage, r[ t ] ) )\n\t\t\t\t\t\t)\n\t\t\t\t\t\t\tif ( 1 == a.ltype )\n\t\t\t\t\t\t\t\tr[ t ],\n\t\t\t\t\t\t\t\t1 == h.fmt ? ( r[ t ] = r[ t ] + h.delta ) : ( r[ t ] = h.newg[ i ] );\n\t\t\t\t\t\t\telse if ( 4 == a.ltype )\n\t\t\t\t\t\t\t\tfor ( var d = h.vals[ i ], f = 0; f < d.length; f ++ ) {\n\n\t\t\t\t\t\t\t\t\tvar u = d[ f ],\n\t\t\t\t\t\t\t\t\t\tl = u.chain.length;\n\t\t\t\t\t\t\t\t\tif ( ! ( l > o ) ) {\n\n\t\t\t\t\t\t\t\t\t\tfor ( var v = ! 0, c = 0, p = 0; p < l; p ++ ) {\n\n\t\t\t\t\t\t\t\t\t\t\tfor ( ; - 1 == r[ t + c + ( 1 + p ) ]; ) c ++;\n\t\t\t\t\t\t\t\t\t\t\tu.chain[ p ] != r[ t + c + ( 1 + p ) ] && ( v = ! 1 );\n\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\tif ( v ) {\n\n\t\t\t\t\t\t\t\t\t\t\tr[ t ] = u.nglyph;\n\t\t\t\t\t\t\t\t\t\t\tfor ( p = 0; p < l + c; p ++ ) r[ t + p + 1 ] = - 1;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse if ( 5 == a.ltype && 2 == h.fmt )\n\t\t\t\t\t\t\t\tfor (\n\t\t\t\t\t\t\t\t\tvar U = e._lctf.getInterval( h.cDef, r[ t ] ),\n\t\t\t\t\t\t\t\t\t\tg = h.cDef[ U + 2 ],\n\t\t\t\t\t\t\t\t\t\tS = h.scset[ g ],\n\t\t\t\t\t\t\t\t\t\tm = 0;\n\t\t\t\t\t\t\t\t\tm < S.length;\n\t\t\t\t\t\t\t\t\tm ++\n\t\t\t\t\t\t\t\t) {\n\n\t\t\t\t\t\t\t\t\tvar b = S[ m ],\n\t\t\t\t\t\t\t\t\t\ty = b.input;\n\t\t\t\t\t\t\t\t\tif ( ! ( y.length > o ) ) {\n\n\t\t\t\t\t\t\t\t\t\tfor ( v = ! 0, p = 0; p < y.length; p ++ ) {\n\n\t\t\t\t\t\t\t\t\t\t\tvar F = e._lctf.getInterval( h.cDef, r[ t + 1 + p ] );\n\t\t\t\t\t\t\t\t\t\t\tif ( - 1 == U && h.cDef[ F + 2 ] != y[ p ] ) {\n\n\t\t\t\t\t\t\t\t\t\t\t\tv = ! 1;\n\t\t\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\tif ( v ) {\n\n\t\t\t\t\t\t\t\t\t\t\tvar C = b.substLookupRecords;\n\t\t\t\t\t\t\t\t\t\t\tfor ( f = 0; f < C.length; f += 2 ) C[ f ], C[ f + 1 ];\n\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse if ( 6 == a.ltype && 3 == h.fmt ) {\n\n\t\t\t\t\t\t\t\tif ( ! e.U._glsCovered( r, h.backCvg, t - h.backCvg.length ) )\n\t\t\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t\t\tif ( ! e.U._glsCovered( r, h.inptCvg, t ) ) continue;\n\t\t\t\t\t\t\t\tif ( ! e.U._glsCovered( r, h.ahedCvg, t + h.inptCvg.length ) )\n\t\t\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t\t\tvar _ = h.lookupRec;\n\t\t\t\t\t\t\t\tfor ( m = 0; m < _.length; m += 2 ) {\n\n\t\t\t\t\t\t\t\t\tU = _[ m ];\n\t\t\t\t\t\t\t\t\tvar P = n[ _[ m + 1 ] ];\n\t\t\t\t\t\t\t\t\te.U._applySubs( r, t + U, P, n );\n\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t} ),\n\t\t\t( e.U._glsCovered = function ( r, t, a ) {\n\n\t\t\t\tfor ( var n = 0; n < t.length; n ++ ) {\n\n\t\t\t\t\tif ( - 1 == e._lctf.coverageIndex( t[ n ], r[ a + n ] ) ) return ! 1;\n\n\t\t\t\t}\n\n\t\t\t\treturn ! 0;\n\n\t\t\t} ),\n\t\t\t( e.U.glyphsToPath = function ( r, t, a ) {\n\n\t\t\t\tfor (\n\t\t\t\t\tvar n = { cmds: [], crds: [] }, o = 0, s = 0;\n\t\t\t\t\ts < t.length;\n\t\t\t\t\ts ++\n\t\t\t\t) {\n\n\t\t\t\t\tvar i = t[ s ];\n\t\t\t\t\tif ( - 1 != i ) {\n\n\t\t\t\t\t\tfor (\n\t\t\t\t\t\t\tvar h = s < t.length - 1 && - 1 != t[ s + 1 ] ? t[ s + 1 ] : 0,\n\t\t\t\t\t\t\t\td = e.U.glyphToPath( r, i ),\n\t\t\t\t\t\t\t\tf = 0;\n\t\t\t\t\t\t\tf < d.crds.length;\n\t\t\t\t\t\t\tf += 2\n\t\t\t\t\t\t)\n\t\t\t\t\t\t\tn.crds.push( d.crds[ f ] + o ), n.crds.push( d.crds[ f + 1 ] );\n\t\t\t\t\t\ta && n.cmds.push( a );\n\t\t\t\t\t\tfor ( f = 0; f < d.cmds.length; f ++ ) n.cmds.push( d.cmds[ f ] );\n\t\t\t\t\t\ta && n.cmds.push( 'X' ),\n\t\t\t\t\t\t( o += r.hmtx.aWidth[ i ] ),\n\t\t\t\t\t\ts < t.length - 1 && ( o += e.U.getPairAdjustment( r, i, h ) );\n\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\treturn n;\n\n\t\t\t} ),\n\t\t\t( e.U.P = {} ),\n\t\t\t( e.U.P.moveTo = function ( r, e, t ) {\n\n\t\t\t\tr.cmds.push( 'M' ), r.crds.push( e, t );\n\n\t\t\t} ),\n\t\t\t( e.U.P.lineTo = function ( r, e, t ) {\n\n\t\t\t\tr.cmds.push( 'L' ), r.crds.push( e, t );\n\n\t\t\t} ),\n\t\t\t( e.U.P.curveTo = function ( r, e, t, a, n, o, s ) {\n\n\t\t\t\tr.cmds.push( 'C' ), r.crds.push( e, t, a, n, o, s );\n\n\t\t\t} ),\n\t\t\t( e.U.P.qcurveTo = function ( r, e, t, a, n ) {\n\n\t\t\t\tr.cmds.push( 'Q' ), r.crds.push( e, t, a, n );\n\n\t\t\t} ),\n\t\t\t( e.U.P.closePath = function ( r ) {\n\n\t\t\t\tr.cmds.push( 'Z' );\n\n\t\t\t} ),\n\t\t\t( e.U._drawCFF = function ( r, t, a, n, o ) {\n\n\t\t\t\tfor (\n\t\t\t\t\tvar s = t.stack,\n\t\t\t\t\t\ti = t.nStems,\n\t\t\t\t\t\th = t.haveWidth,\n\t\t\t\t\t\td = t.width,\n\t\t\t\t\t\tf = t.open,\n\t\t\t\t\t\tu = 0,\n\t\t\t\t\t\tl = t.x,\n\t\t\t\t\t\tv = t.y,\n\t\t\t\t\t\tc = 0,\n\t\t\t\t\t\tp = 0,\n\t\t\t\t\t\tU = 0,\n\t\t\t\t\t\tg = 0,\n\t\t\t\t\t\tS = 0,\n\t\t\t\t\t\tm = 0,\n\t\t\t\t\t\tb = 0,\n\t\t\t\t\t\ty = 0,\n\t\t\t\t\t\tF = 0,\n\t\t\t\t\t\tC = 0,\n\t\t\t\t\t\t_ = { val: 0, size: 0 };\n\t\t\t\t\tu < r.length;\n\n\t\t\t\t) {\n\n\t\t\t\t\te.CFF.getCharString( r, u, _ );\n\t\t\t\t\tvar P = _.val;\n\t\t\t\t\tif ( ( ( u += _.size ), 'o1' == P || 'o18' == P ) )\n\t\t\t\t\t\ts.length % 2 != 0 && ! h && ( d = s.shift() + n.nominalWidthX ),\n\t\t\t\t\t\t( i += s.length >> 1 ),\n\t\t\t\t\t\t( s.length = 0 ),\n\t\t\t\t\t\t( h = ! 0 );\n\t\t\t\t\telse if ( 'o3' == P || 'o23' == P ) {\n\n\t\t\t\t\t\ts.length % 2 != 0 && ! h && ( d = s.shift() + n.nominalWidthX ),\n\t\t\t\t\t\t( i += s.length >> 1 ),\n\t\t\t\t\t\t( s.length = 0 ),\n\t\t\t\t\t\t( h = ! 0 );\n\n\t\t\t\t\t} else if ( 'o4' == P )\n\t\t\t\t\t\ts.length > 1 &&\n ! h &&\n ( ( d = s.shift() + n.nominalWidthX ), ( h = ! 0 ) ),\n\t\t\t\t\t\tf && e.U.P.closePath( o ),\n\t\t\t\t\t\t( v += s.pop() ),\n\t\t\t\t\t\te.U.P.moveTo( o, l, v ),\n\t\t\t\t\t\t( f = ! 0 );\n\t\t\t\t\telse if ( 'o5' == P )\n\t\t\t\t\t\tfor ( ; s.length > 0; )\n\t\t\t\t\t\t\t( l += s.shift() ), ( v += s.shift() ), e.U.P.lineTo( o, l, v );\n\t\t\t\t\telse if ( 'o6' == P || 'o7' == P )\n\t\t\t\t\t\tfor ( var x = s.length, I = 'o6' == P, w = 0; w < x; w ++ ) {\n\n\t\t\t\t\t\t\tvar k = s.shift();\n\t\t\t\t\t\t\tI ? ( l += k ) : ( v += k ), ( I = ! I ), e.U.P.lineTo( o, l, v );\n\n\t\t\t\t\t\t}\n\t\t\t\t\telse if ( 'o8' == P || 'o24' == P ) {\n\n\t\t\t\t\t\tx = s.length;\n\t\t\t\t\t\tfor ( var G = 0; G + 6 <= x; )\n\t\t\t\t\t\t\t( c = l + s.shift() ),\n\t\t\t\t\t\t\t( p = v + s.shift() ),\n\t\t\t\t\t\t\t( U = c + s.shift() ),\n\t\t\t\t\t\t\t( g = p + s.shift() ),\n\t\t\t\t\t\t\t( l = U + s.shift() ),\n\t\t\t\t\t\t\t( v = g + s.shift() ),\n\t\t\t\t\t\t\te.U.P.curveTo( o, c, p, U, g, l, v ),\n\t\t\t\t\t\t\t( G += 6 );\n\t\t\t\t\t\t'o24' == P &&\n ( ( l += s.shift() ), ( v += s.shift() ), e.U.P.lineTo( o, l, v ) );\n\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\tif ( 'o11' == P ) break;\n\t\t\t\t\t\tif ( 'o1234' == P || 'o1235' == P || 'o1236' == P || 'o1237' == P )\n\t\t\t\t\t\t\t'o1234' == P &&\n ( ( p = v ),\n ( U = ( c = l + s.shift() ) + s.shift() ),\n ( C = g = p + s.shift() ),\n ( m = g ),\n ( y = v ),\n ( l =\n ( b = ( S = ( F = U + s.shift() ) + s.shift() ) + s.shift() ) +\n s.shift() ),\n e.U.P.curveTo( o, c, p, U, g, F, C ),\n e.U.P.curveTo( o, S, m, b, y, l, v ) ),\n\t\t\t\t\t\t\t'o1235' == P &&\n ( ( c = l + s.shift() ),\n ( p = v + s.shift() ),\n ( U = c + s.shift() ),\n ( g = p + s.shift() ),\n ( F = U + s.shift() ),\n ( C = g + s.shift() ),\n ( S = F + s.shift() ),\n ( m = C + s.shift() ),\n ( b = S + s.shift() ),\n ( y = m + s.shift() ),\n ( l = b + s.shift() ),\n ( v = y + s.shift() ),\n s.shift(),\n e.U.P.curveTo( o, c, p, U, g, F, C ),\n e.U.P.curveTo( o, S, m, b, y, l, v ) ),\n\t\t\t\t\t\t\t'o1236' == P &&\n ( ( c = l + s.shift() ),\n ( p = v + s.shift() ),\n ( U = c + s.shift() ),\n ( C = g = p + s.shift() ),\n ( m = g ),\n ( b = ( S = ( F = U + s.shift() ) + s.shift() ) + s.shift() ),\n ( y = m + s.shift() ),\n ( l = b + s.shift() ),\n e.U.P.curveTo( o, c, p, U, g, F, C ),\n e.U.P.curveTo( o, S, m, b, y, l, v ) ),\n\t\t\t\t\t\t\t'o1237' == P &&\n ( ( c = l + s.shift() ),\n ( p = v + s.shift() ),\n ( U = c + s.shift() ),\n ( g = p + s.shift() ),\n ( F = U + s.shift() ),\n ( C = g + s.shift() ),\n ( S = F + s.shift() ),\n ( m = C + s.shift() ),\n ( b = S + s.shift() ),\n ( y = m + s.shift() ),\n Math.abs( b - l ) > Math.abs( y - v )\n \t? ( l = b + s.shift() )\n \t: ( v = y + s.shift() ),\n e.U.P.curveTo( o, c, p, U, g, F, C ),\n e.U.P.curveTo( o, S, m, b, y, l, v ) );\n\t\t\t\t\t\telse if ( 'o14' == P ) {\n\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t( s.length > 0 &&\n ! h &&\n ( ( d = s.shift() + a.nominalWidthX ), ( h = ! 0 ) ),\n\t\t\t\t\t\t\t\t4 == s.length )\n\t\t\t\t\t\t\t) {\n\n\t\t\t\t\t\t\t\tvar O = s.shift(),\n\t\t\t\t\t\t\t\t\tT = s.shift(),\n\t\t\t\t\t\t\t\t\tD = s.shift(),\n\t\t\t\t\t\t\t\t\tB = s.shift(),\n\t\t\t\t\t\t\t\t\tA = e.CFF.glyphBySE( a, D ),\n\t\t\t\t\t\t\t\t\tR = e.CFF.glyphBySE( a, B );\n\t\t\t\t\t\t\t\te.U._drawCFF( a.CharStrings[ A ], t, a, n, o ),\n\t\t\t\t\t\t\t\t( t.x = O ),\n\t\t\t\t\t\t\t\t( t.y = T ),\n\t\t\t\t\t\t\t\te.U._drawCFF( a.CharStrings[ R ], t, a, n, o );\n\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tf && ( e.U.P.closePath( o ), ( f = ! 1 ) );\n\n\t\t\t\t\t\t} else if ( 'o19' == P || 'o20' == P ) {\n\n\t\t\t\t\t\t\ts.length % 2 != 0 && ! h && ( d = s.shift() + n.nominalWidthX ),\n\t\t\t\t\t\t\t( i += s.length >> 1 ),\n\t\t\t\t\t\t\t( s.length = 0 ),\n\t\t\t\t\t\t\t( h = ! 0 ),\n\t\t\t\t\t\t\t( u += ( i + 7 ) >> 3 );\n\n\t\t\t\t\t\t} else if ( 'o21' == P )\n\t\t\t\t\t\t\ts.length > 2 &&\n ! h &&\n ( ( d = s.shift() + n.nominalWidthX ), ( h = ! 0 ) ),\n\t\t\t\t\t\t\t( v += s.pop() ),\n\t\t\t\t\t\t\t( l += s.pop() ),\n\t\t\t\t\t\t\tf && e.U.P.closePath( o ),\n\t\t\t\t\t\t\te.U.P.moveTo( o, l, v ),\n\t\t\t\t\t\t\t( f = ! 0 );\n\t\t\t\t\t\telse if ( 'o22' == P )\n\t\t\t\t\t\t\ts.length > 1 &&\n ! h &&\n ( ( d = s.shift() + n.nominalWidthX ), ( h = ! 0 ) ),\n\t\t\t\t\t\t\t( l += s.pop() ),\n\t\t\t\t\t\t\tf && e.U.P.closePath( o ),\n\t\t\t\t\t\t\te.U.P.moveTo( o, l, v ),\n\t\t\t\t\t\t\t( f = ! 0 );\n\t\t\t\t\t\telse if ( 'o25' == P ) {\n\n\t\t\t\t\t\t\tfor ( ; s.length > 6; )\n\t\t\t\t\t\t\t\t( l += s.shift() ), ( v += s.shift() ), e.U.P.lineTo( o, l, v );\n\t\t\t\t\t\t\t( c = l + s.shift() ),\n\t\t\t\t\t\t\t( p = v + s.shift() ),\n\t\t\t\t\t\t\t( U = c + s.shift() ),\n\t\t\t\t\t\t\t( g = p + s.shift() ),\n\t\t\t\t\t\t\t( l = U + s.shift() ),\n\t\t\t\t\t\t\t( v = g + s.shift() ),\n\t\t\t\t\t\t\te.U.P.curveTo( o, c, p, U, g, l, v );\n\n\t\t\t\t\t\t} else if ( 'o26' == P )\n\t\t\t\t\t\t\tfor ( s.length % 2 && ( l += s.shift() ); s.length > 0; )\n\t\t\t\t\t\t\t\t( c = l ),\n\t\t\t\t\t\t\t\t( p = v + s.shift() ),\n\t\t\t\t\t\t\t\t( l = U = c + s.shift() ),\n\t\t\t\t\t\t\t\t( v = ( g = p + s.shift() ) + s.shift() ),\n\t\t\t\t\t\t\t\te.U.P.curveTo( o, c, p, U, g, l, v );\n\t\t\t\t\t\telse if ( 'o27' == P )\n\t\t\t\t\t\t\tfor ( s.length % 2 && ( v += s.shift() ); s.length > 0; )\n\t\t\t\t\t\t\t\t( p = v ),\n\t\t\t\t\t\t\t\t( U = ( c = l + s.shift() ) + s.shift() ),\n\t\t\t\t\t\t\t\t( g = p + s.shift() ),\n\t\t\t\t\t\t\t\t( l = U + s.shift() ),\n\t\t\t\t\t\t\t\t( v = g ),\n\t\t\t\t\t\t\t\te.U.P.curveTo( o, c, p, U, g, l, v );\n\t\t\t\t\t\telse if ( 'o10' == P || 'o29' == P ) {\n\n\t\t\t\t\t\t\tvar L = 'o10' == P ? n : a;\n\t\t\t\t\t\t\tif ( 0 == s.length ) console.debug( 'error: empty stack' );\n\t\t\t\t\t\t\telse {\n\n\t\t\t\t\t\t\t\tvar W = s.pop(),\n\t\t\t\t\t\t\t\t\tM = L.Subrs[ W + L.Bias ];\n\t\t\t\t\t\t\t\t( t.x = l ),\n\t\t\t\t\t\t\t\t( t.y = v ),\n\t\t\t\t\t\t\t\t( t.nStems = i ),\n\t\t\t\t\t\t\t\t( t.haveWidth = h ),\n\t\t\t\t\t\t\t\t( t.width = d ),\n\t\t\t\t\t\t\t\t( t.open = f ),\n\t\t\t\t\t\t\t\te.U._drawCFF( M, t, a, n, o ),\n\t\t\t\t\t\t\t\t( l = t.x ),\n\t\t\t\t\t\t\t\t( v = t.y ),\n\t\t\t\t\t\t\t\t( i = t.nStems ),\n\t\t\t\t\t\t\t\t( h = t.haveWidth ),\n\t\t\t\t\t\t\t\t( d = t.width ),\n\t\t\t\t\t\t\t\t( f = t.open );\n\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t} else if ( 'o30' == P || 'o31' == P ) {\n\n\t\t\t\t\t\t\tvar V = s.length,\n\t\t\t\t\t\t\t\tE = ( ( G = 0 ), 'o31' == P );\n\t\t\t\t\t\t\tfor ( G += V - ( x = - 3 & V ); G < x; )\n\t\t\t\t\t\t\t\tE\n\t\t\t\t\t\t\t\t\t? ( ( p = v ),\n\t\t\t\t\t\t\t\t\t( U = ( c = l + s.shift() ) + s.shift() ),\n\t\t\t\t\t\t\t\t\t( v = ( g = p + s.shift() ) + s.shift() ),\n\t\t\t\t\t\t\t\t\tx - G == 5 ? ( ( l = U + s.shift() ), G ++ ) : ( l = U ),\n\t\t\t\t\t\t\t\t\t( E = ! 1 ) )\n\t\t\t\t\t\t\t\t\t: ( ( c = l ),\n\t\t\t\t\t\t\t\t\t( p = v + s.shift() ),\n\t\t\t\t\t\t\t\t\t( U = c + s.shift() ),\n\t\t\t\t\t\t\t\t\t( g = p + s.shift() ),\n\t\t\t\t\t\t\t\t\t( l = U + s.shift() ),\n\t\t\t\t\t\t\t\t\tx - G == 5 ? ( ( v = g + s.shift() ), G ++ ) : ( v = g ),\n\t\t\t\t\t\t\t\t\t( E = ! 0 ) ),\n\t\t\t\t\t\t\t\te.U.P.curveTo( o, c, p, U, g, l, v ),\n\t\t\t\t\t\t\t\t( G += 4 );\n\n\t\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\tif ( 'o' == ( P + '' ).charAt( 0 ) )\n\t\t\t\t\t\t\t\tthrow ( console.debug( 'Unknown operation: ' + P, r ), P );\n\t\t\t\t\t\t\ts.push( P );\n\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\t( t.x = l ),\n\t\t\t\t( t.y = v ),\n\t\t\t\t( t.nStems = i ),\n\t\t\t\t( t.haveWidth = h ),\n\t\t\t\t( t.width = d ),\n\t\t\t\t( t.open = f );\n\n\t\t\t} );\n\t\t\tvar t = e,\n\t\t\t\ta = { Typr: t };\n\t\t\treturn (\n\t\t\t\t( r.Typr = t ),\n\t\t\t\t( r.default = a ),\n\t\t\t\tObject.defineProperty( r, '__esModule', { value: ! 0 } ),\n\t\t\t\tr\n\t\t\t);\n\n\t\t} )( {} ).Typr\n\t);\n\n}"; export default factorySource;