Files

1095 lines
1.3 MiB
JavaScript
Raw Permalink Normal View History

2025-11-26 11:32:30 +08:00
/*
* This combined file was created by the DataTables downloader builder:
* https://datatables.net/download
*
* To rebuild or modify this file with the latest versions of the included
* software please visit:
* https://datatables.net/download/#bs/jszip-2.5.0,pdfmake-0.1.18,dt-1.10.10,b-1.1.0,b-html5-1.1.0,b-print-1.1.0,r-2.0.0
*
* Included libraries:
* JSZip 2.5.0, pdfmake 0.1.18, DataTables 1.10.10, Buttons 1.1.0, HTML5 export 1.1.0, Print view 1.1.0, Responsive 2.0.0
*/
/*!
JSZip - A Javascript class for generating and reading zip files
<http://stuartk.com/jszip>
(c) 2009-2014 Stuart Knightley <stuart [at] stuartk.com>
Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/master/LICENSE.markdown.
JSZip uses the library pako released under the MIT license :
https://github.com/nodeca/pako/blob/master/LICENSE
*/
!function (a) { if ("object" == typeof exports && "undefined" != typeof module) module.exports = a(); else if ("function" == typeof define && define.amd) define([], a); else { var b; "undefined" != typeof window ? b = window : "undefined" != typeof global ? b = global : "undefined" != typeof self && (b = self), b.JSZip = a() } }(function () {
return function a(b, c, d) { function e(g, h) { if (!c[g]) { if (!b[g]) { var i = "function" == typeof require && require; if (!h && i) return i(g, !0); if (f) return f(g, !0); throw new Error("Cannot find module '" + g + "'") } var j = c[g] = { exports: {} }; b[g][0].call(j.exports, function (a) { var c = b[g][1][a]; return e(c ? c : a) }, j, j.exports, a, b, c, d) } return c[g].exports } for (var f = "function" == typeof require && require, g = 0; g < d.length; g++)e(d[g]); return e }({
1: [function (a, b, c) { "use strict"; var d = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; c.encode = function (a) { for (var b, c, e, f, g, h, i, j = "", k = 0; k < a.length;)b = a.charCodeAt(k++), c = a.charCodeAt(k++), e = a.charCodeAt(k++), f = b >> 2, g = (3 & b) << 4 | c >> 4, h = (15 & c) << 2 | e >> 6, i = 63 & e, isNaN(c) ? h = i = 64 : isNaN(e) && (i = 64), j = j + d.charAt(f) + d.charAt(g) + d.charAt(h) + d.charAt(i); return j }, c.decode = function (a) { var b, c, e, f, g, h, i, j = "", k = 0; for (a = a.replace(/[^A-Za-z0-9\+\/\=]/g, ""); k < a.length;)f = d.indexOf(a.charAt(k++)), g = d.indexOf(a.charAt(k++)), h = d.indexOf(a.charAt(k++)), i = d.indexOf(a.charAt(k++)), b = f << 2 | g >> 4, c = (15 & g) << 4 | h >> 2, e = (3 & h) << 6 | i, j += String.fromCharCode(b), 64 != h && (j += String.fromCharCode(c)), 64 != i && (j += String.fromCharCode(e)); return j } }, {}], 2: [function (a, b) { "use strict"; function c() { this.compressedSize = 0, this.uncompressedSize = 0, this.crc32 = 0, this.compressionMethod = null, this.compressedContent = null } c.prototype = { getContent: function () { return null }, getCompressedContent: function () { return null } }, b.exports = c }, {}], 3: [function (a, b, c) { "use strict"; c.STORE = { magic: "\x00\x00", compress: function (a) { return a }, uncompress: function (a) { return a }, compressInputType: null, uncompressInputType: null }, c.DEFLATE = a("./flate") }, { "./flate": 8 }], 4: [function (a, b) { "use strict"; var c = a("./utils"), d = [0, 1996959894, 3993919788, 2567524794, 124634137, 1886057615, 3915621685, 2657392035, 249268274, 2044508324, 3772115230, 2547177864, 162941995, 2125561021, 3887607047, 2428444049, 498536548, 1789927666, 4089016648, 2227061214, 450548861, 1843258603, 4107580753, 2211677639, 325883990, 1684777152, 4251122042, 2321926636, 335633487, 1661365465, 4195302755, 2366115317, 997073096, 1281953886, 3579855332, 2724688242, 1006888145, 1258607687, 3524101629, 2768942443, 901097722, 1119000684, 3686517206, 2898065728, 853044451, 1172266101, 3705015759, 2882616665, 651767980, 1373503546, 3369554304, 3218104598, 565507253, 1454621731, 3485111705, 3099436303, 671266974, 1594198024, 3322730930, 2970347812, 795835527, 1483230225, 3244367275, 3060149565, 1994146192, 31158534, 2563907772, 4023717930, 1907459465, 112637215, 2680153253, 3904427059, 2013776290, 251722036, 2517215374, 3775830040, 2137656763, 141376813, 2439277719, 3865271297, 1802195444, 476864866, 2238001368, 4066508878, 1812370925, 453092731, 2181625025, 4111451223, 1706088902, 314042704, 2344532202, 4240017532, 1658658271, 366619977, 2362670323, 4224994405, 1303535960, 984961486, 2747007092, 3569037538, 1256170817, 1037604311, 2765210733, 3554079995, 1131014506, 879679996, 2909243462, 3663771856, 1141124467, 855842277, 2852801631, 3708648649, 1342533948, 654459306, 3188396048, 3373015174, 1466479909, 544179635, 3110523913, 3462522015, 1591671054, 702138776, 2966460450, 3352799412, 1504918807, 783551873, 3082640443, 3233442989, 3988292384, 2596254646, 62317068, 1957810842, 3939845945, 2647816111, 81470997, 1943803523, 3814918930, 2489596804, 225274430, 2053790376, 3826175755, 2466906013, 167816743, 2097651377, 4027552580, 2265490386, 503444072, 1762050814, 4150417245, 2154129355, 426522225, 1852507879, 4275313526, 2312317920, 282753626, 1742555852, 4189708143, 2394877945, 397917763, 1622183637, 3604390888, 2714866558, 953729732, 1340076626, 3518719985, 2797360999, 1068828381, 1219638859, 3624741850, 2936675148, 906185462, 1090812512, 3747672003, 2825379669, 829329135, 1181335161, 3412177804, 3160834842, 628085408, 1382605366, 3423369109, 3138078467, 570562233, 1426400815, 3317316542, 2998733608, 733239954, 1555261956, 3268935591, 3050360625, 752459403, 1541320221, 2607071920, 3965973030, 1969922972, 40735498, 2617837225, 3943577151, 1913087877, 83908371, 2512341634, 3803740692, 2075208622, 213261112, 2463272603, 3855990285, 2094854071, 198958881, 2262029012, 4057260610, 1759359992, 534414190, 2176718541, 4139329115, 1873836001, 414664567, 2282248934, 427
"use strict"; function c(a, b) { this.options = a, this.loadOptions = b } var d = a("./stringReader"), e = a("./utils"), f = a("./compressedObject"), g = a("./object"), h = 0, i = 3; c.prototype = {
isEncrypted: function () { return 1 === (1 & this.bitFlag) }, useUTF8: function () { return 2048 === (2048 & this.bitFlag) }, prepareCompressedContent: function (a, b, c) { return function () { var d = a.index; a.setIndex(b); var e = a.readData(c); return a.setIndex(d), e } }, prepareContent: function (a, b, c, d, f) { return function () { var a = e.transformTo(d.uncompressInputType, this.getCompressedContent()), b = d.uncompress(a); if (b.length !== f) throw new Error("Bug : uncompressed data size mismatch"); return b } }, readLocalPart: function (a) { var b, c; if (a.skip(22), this.fileNameLength = a.readInt(2), c = a.readInt(2), this.fileName = a.readString(this.fileNameLength), a.skip(c), -1 == this.compressedSize || -1 == this.uncompressedSize) throw new Error("Bug or corrupted zip : didn't get enough informations from the central directory (compressedSize == -1 || uncompressedSize == -1)"); if (b = e.findCompression(this.compressionMethod), null === b) throw new Error("Corrupted zip : compression " + e.pretty(this.compressionMethod) + " unknown (inner file : " + this.fileName + ")"); if (this.decompressed = new f, this.decompressed.compressedSize = this.compressedSize, this.decompressed.uncompressedSize = this.uncompressedSize, this.decompressed.crc32 = this.crc32, this.decompressed.compressionMethod = this.compressionMethod, this.decompressed.getCompressedContent = this.prepareCompressedContent(a, a.index, this.compressedSize, b), this.decompressed.getContent = this.prepareContent(a, a.index, this.compressedSize, b, this.uncompressedSize), this.loadOptions.checkCRC32 && (this.decompressed = e.transformTo("string", this.decompressed.getContent()), g.crc32(this.decompressed) !== this.crc32)) throw new Error("Corrupted zip : CRC32 mismatch") }, readCentralPart: function (a) { if (this.versionMadeBy = a.readInt(2), this.versionNeeded = a.readInt(2), this.bitFlag = a.readInt(2), this.compressionMethod = a.readString(2), this.date = a.readDate(), this.crc32 = a.readInt(4), this.compressedSize = a.readInt(4), this.uncompressedSize = a.readInt(4), this.fileNameLength = a.readInt(2), this.extraFieldsLength = a.readInt(2), this.fileCommentLength = a.readInt(2), this.diskNumberStart = a.readInt(2), this.internalFileAttributes = a.readInt(2), this.externalFileAttributes = a.readInt(4), this.localHeaderOffset = a.readInt(4), this.isEncrypted()) throw new Error("Encrypted zip are not supported"); this.fileName = a.readString(this.fileNameLength), this.readExtraFields(a), this.parseZIP64ExtraField(a), this.fileComment = a.readString(this.fileCommentLength) }, processAttributes: function () { this.unixPermissions = null, this.dosPermissions = null; var a = this.versionMadeBy >> 8; this.dir = 16 & this.externalFileAttributes ? !0 : !1, a === h && (this.dosPermissions = 63 & this.externalFileAttributes), a === i && (this.unixPermissions = this.externalFileAttributes >> 16 & 65535), this.dir || "/" !== this.fileName.slice(-1) || (this.dir = !0) }, parseZIP64ExtraField: function () { if (this.extraFields[1]) { var a = new d(this.extraFields[1].value); this.uncompressedSize === e.MAX_VALUE_32BITS && (this.uncompressedSize = a.readInt(8)), this.compressedSize === e.MAX_VALUE_32BITS && (this.compressedSize = a.readInt(8)), this.localHeaderOffset === e.MAX_VALUE_32BITS && (this.localHeaderOffset = a.readInt(8)), this.diskNumberStart === e.MAX_VALUE_32BITS && (this.diskNumberStart = a.readInt(4)) } }, readExtraFields: function (a) { var b, c, d, e = a.index; for (this.extraFields = this.extraFields || {}; a.index < e + this.extraFieldsLength;)b = a.readInt(2), c = a.readInt(2), d = a.readString(c), this.extraFields[b] = { id: b, length: c, value: d } }, handleUTF8: function () { if (this.useUTF8()) this.fileName = g.utf8decode(this.fileName), this.fileComment = g.utf8decode(this.fileComment); else { var a = this.findExtraFieldUnicodePath(); null !== a && (this.fileName = a); var b = this.findExtraFieldUnicodeComment(); null !== b && (this.fileComment = b) } }, findExtraFieldUnicodePath: function () {
var a = this.extraFields[28789]; if (a) {
var b = new d(a.value); return 1 !== b.readInt(1) ? null : g.crc32(this.fileName) !== b.readInt(4) ? null : g.utf8decode(b.readString(a.length - 5))
} return null
}, findExtraFieldUnicodeComment: function () { var a = this.extraFields[25461]; if (a) { var b = new d(a.value); return 1 !== b.readInt(1) ? null : g.crc32(this.fileComment) !== b.readInt(4) ? null : g.utf8decode(b.readString(a.length - 5)) } return null }
}, b.exports = c
}, { "./compressedObject": 2, "./object": 13, "./stringReader": 15, "./utils": 21 }], 24: [function (a, b) { "use strict"; var c = a("./lib/utils/common").assign, d = a("./lib/deflate"), e = a("./lib/inflate"), f = a("./lib/zlib/constants"), g = {}; c(g, d, e, f), b.exports = g }, { "./lib/deflate": 25, "./lib/inflate": 26, "./lib/utils/common": 27, "./lib/zlib/constants": 30 }], 25: [function (a, b, c) { "use strict"; function d(a, b) { var c = new s(b); if (c.push(a, !0), c.err) throw c.msg; return c.result } function e(a, b) { return b = b || {}, b.raw = !0, d(a, b) } function f(a, b) { return b = b || {}, b.gzip = !0, d(a, b) } var g = a("./zlib/deflate.js"), h = a("./utils/common"), i = a("./utils/strings"), j = a("./zlib/messages"), k = a("./zlib/zstream"), l = 0, m = 4, n = 0, o = 1, p = -1, q = 0, r = 8, s = function (a) { this.options = h.assign({ level: p, method: r, chunkSize: 16384, windowBits: 15, memLevel: 8, strategy: q, to: "" }, a || {}); var b = this.options; b.raw && b.windowBits > 0 ? b.windowBits = -b.windowBits : b.gzip && b.windowBits > 0 && b.windowBits < 16 && (b.windowBits += 16), this.err = 0, this.msg = "", this.ended = !1, this.chunks = [], this.strm = new k, this.strm.avail_out = 0; var c = g.deflateInit2(this.strm, b.level, b.method, b.windowBits, b.memLevel, b.strategy); if (c !== n) throw new Error(j[c]); b.header && g.deflateSetHeader(this.strm, b.header) }; s.prototype.push = function (a, b) { var c, d, e = this.strm, f = this.options.chunkSize; if (this.ended) return !1; d = b === ~~b ? b : b === !0 ? m : l, e.input = "string" == typeof a ? i.string2buf(a) : a, e.next_in = 0, e.avail_in = e.input.length; do { if (0 === e.avail_out && (e.output = new h.Buf8(f), e.next_out = 0, e.avail_out = f), c = g.deflate(e, d), c !== o && c !== n) return this.onEnd(c), this.ended = !0, !1; (0 === e.avail_out || 0 === e.avail_in && d === m) && this.onData("string" === this.options.to ? i.buf2binstring(h.shrinkBuf(e.output, e.next_out)) : h.shrinkBuf(e.output, e.next_out)) } while ((e.avail_in > 0 || 0 === e.avail_out) && c !== o); return d === m ? (c = g.deflateEnd(this.strm), this.onEnd(c), this.ended = !0, c === n) : !0 }, s.prototype.onData = function (a) { this.chunks.push(a) }, s.prototype.onEnd = function (a) { a === n && (this.result = "string" === this.options.to ? this.chunks.join("") : h.flattenChunks(this.chunks)), this.chunks = [], this.err = a, this.msg = this.strm.msg }, c.Deflate = s, c.deflate = d, c.deflateRaw = e, c.gzip = f }, { "./utils/common": 27, "./utils/strings": 28, "./zlib/deflate.js": 32, "./zlib/messages": 37, "./zlib/zstream": 39 }], 26: [function (a, b, c) { "use strict"; function d(a, b) { var c = new m(b); if (c.push(a, !0), c.err) throw c.msg; return c.result } function e(a, b) { return b = b || {}, b.raw = !0, d(a, b) } var f = a("./zlib/inflate.js"), g = a("./utils/common"), h = a("./utils/strings"), i = a("./zlib/constants"), j = a("./zlib/messages"), k = a("./zlib/zstream"), l = a("./zlib/gzheader"), m = function (a) { this.options = g.assign({ chunkSize: 16384, windowBits: 0, to: "" }, a || {}); var b = this.options; b.raw && b.windowBits >= 0 && b.windowBits < 16 && (b.windowBits = -b.windowBits, 0 === b.windowBits && (b.windowBits = -15)), !(b.windowBits >= 0 && b.windowBits < 16) || a && a.windowBits || (b.windowBits += 32), b.windowBits > 15 && b.windowBits < 48 && 0 === (15 & b.windowBits) && (b.windowBits |= 15), this.err = 0, this.msg = "", this.ended = !1, this.chunks = [], this.strm = new k, this.strm.avail_out = 0; var c = f.inflateInit2(this.strm, b.windowBits); if (c !== i.Z_OK) throw new Error(j[c]); this.header = new l, f.inflateGetHeader(this.strm, this.header) }; m.prototype.push = function (a, b) { var c, d, e, j, k, l = this.strm, m = this.options.chunkSize; if (this.ended) return !1; d = b === ~~b ? b : b === !0 ? i.Z_FINISH : i.Z_NO_FLUSH, l.input = "string" == typeof a ? h.binstring2buf(a) : a, l.next_in = 0, l.avail_in = l.input.length; do { if (0 === l.avail_out && (l.output = new g.Buf8(m), l.next_out = 0, l.avail_out = m), c = f
"use strict"; function d(a) { return (a >>> 24 & 255) + (a >>> 8 & 65280) + ((65280 & a) << 8) + ((255 & a) << 24) } function e() { this.mode = 0, this.last = !1, this.wrap = 0, this.havedict = !1, this.flags = 0, this.dmax = 0, this.check = 0, this.total = 0, this.head = null, this.wbits = 0, this.wsize = 0, this.whave = 0, this.wnext = 0, this.window = null, this.hold = 0, this.bits = 0, this.length = 0, this.offset = 0, this.extra = 0, this.lencode = null, this.distcode = null, this.lenbits = 0, this.distbits = 0, this.ncode = 0, this.nlen = 0, this.ndist = 0, this.have = 0, this.next = null, this.lens = new r.Buf16(320), this.work = new r.Buf16(288), this.lendyn = null, this.distdyn = null, this.sane = 0, this.back = 0, this.was = 0 } function f(a) { var b; return a && a.state ? (b = a.state, a.total_in = a.total_out = b.total = 0, a.msg = "", b.wrap && (a.adler = 1 & b.wrap), b.mode = K, b.last = 0, b.havedict = 0, b.dmax = 32768, b.head = null, b.hold = 0, b.bits = 0, b.lencode = b.lendyn = new r.Buf32(ob), b.distcode = b.distdyn = new r.Buf32(pb), b.sane = 1, b.back = -1, C) : F } function g(a) { var b; return a && a.state ? (b = a.state, b.wsize = 0, b.whave = 0, b.wnext = 0, f(a)) : F } function h(a, b) { var c, d; return a && a.state ? (d = a.state, 0 > b ? (c = 0, b = -b) : (c = (b >> 4) + 1, 48 > b && (b &= 15)), b && (8 > b || b > 15) ? F : (null !== d.window && d.wbits !== b && (d.window = null), d.wrap = c, d.wbits = b, g(a))) : F } function i(a, b) { var c, d; return a ? (d = new e, a.state = d, d.window = null, c = h(a, b), c !== C && (a.state = null), c) : F } function j(a) { return i(a, rb) } function k(a) { if (sb) { var b; for (p = new r.Buf32(512), q = new r.Buf32(32), b = 0; 144 > b;)a.lens[b++] = 8; for (; 256 > b;)a.lens[b++] = 9; for (; 280 > b;)a.lens[b++] = 7; for (; 288 > b;)a.lens[b++] = 8; for (v(x, a.lens, 0, 288, p, 0, a.work, { bits: 9 }), b = 0; 32 > b;)a.lens[b++] = 5; v(y, a.lens, 0, 32, q, 0, a.work, { bits: 5 }), sb = !1 } a.lencode = p, a.lenbits = 9, a.distcode = q, a.distbits = 5 } function l(a, b, c, d) { var e, f = a.state; return null === f.window && (f.wsize = 1 << f.wbits, f.wnext = 0, f.whave = 0, f.window = new r.Buf8(f.wsize)), d >= f.wsize ? (r.arraySet(f.window, b, c - f.wsize, f.wsize, 0), f.wnext = 0, f.whave = f.wsize) : (e = f.wsize - f.wnext, e > d && (e = d), r.arraySet(f.window, b, c - d, e, f.wnext), d -= e, d ? (r.arraySet(f.window, b, c - d, d, 0), f.wnext = d, f.whave = f.wsize) : (f.wnext += e, f.wnext === f.wsize && (f.wnext = 0), f.whave < f.wsize && (f.whave += e))), 0 } function m(a, b) {
var c, e, f, g, h, i, j, m, n, o, p, q, ob, pb, qb, rb, sb, tb, ub, vb, wb, xb, yb, zb, Ab = 0, Bb = new r.Buf8(4), Cb = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]; if (!a || !a.state || !a.output || !a.input && 0 !== a.avail_in) return F; c = a.state, c.mode === V && (c.mode = W), h = a.next_out, f = a.output, j = a.avail_out, g = a.next_in, e = a.input, i = a.avail_in, m = c.hold, n = c.bits, o = i, p = j, xb = C; a: for (; ;)switch (c.mode) {
case K: if (0 === c.wrap) { c.mode = W; break } for (; 16 > n;) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } if (2 & c.wrap && 35615 === m) { c.check = 0, Bb[0] = 255 & m, Bb[1] = m >>> 8 & 255, c.check = t(c.check, Bb, 2, 0), m = 0, n = 0, c.mode = L; break } if (c.flags = 0, c.head && (c.head.done = !1), !(1 & c.wrap) || (((255 & m) << 8) + (m >> 8)) % 31) { a.msg = "incorrect header check", c.mode = lb; break } if ((15 & m) !== J) { a.msg = "unknown compression method", c.mode = lb; break } if (m >>>= 4, n -= 4, wb = (15 & m) + 8, 0 === c.wbits) c.wbits = wb; else if (wb > c.wbits) { a.msg = "invalid window size", c.mode = lb; break } c.dmax = 1 << wb, a.adler = c.check = 1, c.mode = 512 & m ? T : V, m = 0, n = 0; break; case L: for (; 16 > n;) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } if (c.flags = m, (255 & c.flags) !== J) { a.msg = "unknown compression method", c.mode = lb; break } if (57344 & c.flags) { a.msg = "unknown header flags set", c.mode = lb; break } c.head && (c.head.text = m >> 8 & 1), 512 & c.flags && (Bb[0] = 255 & m, Bb[1] = m >>> 8 & 255, c.check = t(c.check, Bb, 2, 0)), m = 0, n = 0, c.mode = M; case M: for (; 32 > n;) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } c.head && (c.head.time = m), 512 & c.flags && (Bb[0] = 255 & m, Bb[1] = m >>> 8 & 255, Bb[2] = m >>> 16 & 255, Bb[3] = m >>> 24 & 255, c.check = t(c.check, Bb, 4, 0)), m = 0, n = 0, c.mode = N; case N: for (; 16 > n;) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } c.head && (c.head.xflags = 255 & m, c.head.os = m >> 8), 512 & c.flags && (Bb[0] = 255 & m, Bb[1] = m >>> 8 & 255, c.check = t(c.check, Bb, 2, 0)), m = 0, n = 0, c.mode = O; case O: if (1024 & c.flags) { for (; 16 > n;) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } c.length = m, c.head && (c.head.extra_len = m), 512 & c.flags && (Bb[0] = 255 & m, Bb[1] = m >>> 8 & 255, c.check = t(c.check, Bb, 2, 0)), m = 0, n = 0 } else c.head && (c.head.extra = null); c.mode = P; case P: if (1024 & c.flags && (q = c.length, q > i && (q = i), q && (c.head && (wb = c.head.extra_len - c.length, c.head.extra || (c.head.extra = new Array(c.head.extra_len)), r.arraySet(c.head.extra, e, g, q, wb)), 512 & c.flags && (c.check = t(c.check, e, q, g)), i -= q, g += q, c.length -= q), c.length)) break a; c.length = 0, c.mode = Q; case Q: if (2048 & c.flags) { if (0 === i) break a; q = 0; do wb = e[g + q++], c.head && wb && c.length < 65536 && (c.head.name += String.fromCharCode(wb)); while (wb && i > q); if (512 & c.flags && (c.check = t(c.check, e, q, g)), i -= q, g += q, wb) break a } else c.head && (c.head.name = null); c.length = 0, c.mode = R; case R: if (4096 & c.flags) { if (0 === i) break a; q = 0; do wb = e[g + q++], c.head && wb && c.length < 65536 && (c.head.comment += String.fromCharCode(wb)); while (wb && i > q); if (512 & c.flags && (c.check = t(c.check, e, q, g)), i -= q, g += q, wb) break a } else c.head && (c.head.comment = null); c.mode = S; case S: if (512 & c.flags) { for (; 16 > n;) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } if (m !== (65535 & c.check)) { a.msg = "header crc mismatch", c.mode = lb; break } m = 0, n = 0 } c.head && (c.head.hcrc = c.flags >> 9 & 1, c.head.done = !0), a.adler = c.check = 0, c.mode = V; break; case T: for (; 32 > n;) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } a.adler = c.check = d(m), m = 0, n = 0, c.mode = U; case U: if (0 === c.havedict) return a.next_out = h, a.avail_out = j, a.next_in = g, a.avail_in = i, c.hold = m, c.bits = n, E; a.adler = c.check = 1, c.mode = V; case V: if (b === A || b === B) break a; case W: if (c.last) { m >>>= 7 & n, n -= 7 & n, c.mode = ib; break } for (; 3 > n;) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } switch (c.last = 1 & m, m >>>= 1, n -= 1, 3 & m) { case 0: c.mode = X; break; case 1: if (k(c), c.mode = bb, b === B) { m >>>= 2, n -= 2; break a } break; case 2: c.mode = $; break; case 3: a.msg = "invalid block type", c.mode = lb }m >>>= 2, n -= 2; break; case X: for (m >>>= 7 & n, n -= 7 & n; 32 > n;) {
a.next_out = h, a.avail_out = j, a.next_in = g, a.avail_in = i, c.hold = m, c.bits = n, u(a, p), h = a.next_out, f = a.output, j = a.avail_out, g = a.next_in, e = a.input, i = a.avail_in, m = c.hold, n = c.bits, c.mode === V && (c.back = -1);
break
} for (c.back = 0; Ab = c.lencode[m & (1 << c.lenbits) - 1], qb = Ab >>> 24, rb = Ab >>> 16 & 255, sb = 65535 & Ab, !(n >= qb);) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } if (rb && 0 === (240 & rb)) { for (tb = qb, ub = rb, vb = sb; Ab = c.lencode[vb + ((m & (1 << tb + ub) - 1) >> tb)], qb = Ab >>> 24, rb = Ab >>> 16 & 255, sb = 65535 & Ab, !(n >= tb + qb);) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } m >>>= tb, n -= tb, c.back += tb } if (m >>>= qb, n -= qb, c.back += qb, c.length = sb, 0 === rb) { c.mode = hb; break } if (32 & rb) { c.back = -1, c.mode = V; break } if (64 & rb) { a.msg = "invalid literal/length code", c.mode = lb; break } c.extra = 15 & rb, c.mode = db; case db: if (c.extra) { for (zb = c.extra; zb > n;) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } c.length += m & (1 << c.extra) - 1, m >>>= c.extra, n -= c.extra, c.back += c.extra } c.was = c.length, c.mode = eb; case eb: for (; Ab = c.distcode[m & (1 << c.distbits) - 1], qb = Ab >>> 24, rb = Ab >>> 16 & 255, sb = 65535 & Ab, !(n >= qb);) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } if (0 === (240 & rb)) { for (tb = qb, ub = rb, vb = sb; Ab = c.distcode[vb + ((m & (1 << tb + ub) - 1) >> tb)], qb = Ab >>> 24, rb = Ab >>> 16 & 255, sb = 65535 & Ab, !(n >= tb + qb);) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } m >>>= tb, n -= tb, c.back += tb } if (m >>>= qb, n -= qb, c.back += qb, 64 & rb) { a.msg = "invalid distance code", c.mode = lb; break } c.offset = sb, c.extra = 15 & rb, c.mode = fb; case fb: if (c.extra) { for (zb = c.extra; zb > n;) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } c.offset += m & (1 << c.extra) - 1, m >>>= c.extra, n -= c.extra, c.back += c.extra } if (c.offset > c.dmax) { a.msg = "invalid distance too far back", c.mode = lb; break } c.mode = gb; case gb: if (0 === j) break a; if (q = p - j, c.offset > q) { if (q = c.offset - q, q > c.whave && c.sane) { a.msg = "invalid distance too far back", c.mode = lb; break } q > c.wnext ? (q -= c.wnext, ob = c.wsize - q) : ob = c.wnext - q, q > c.length && (q = c.length), pb = c.window } else pb = f, ob = h - c.offset, q = c.length; q > j && (q = j), j -= q, c.length -= q; do f[h++] = pb[ob++]; while (--q); 0 === c.length && (c.mode = cb); break; case hb: if (0 === j) break a; f[h++] = c.length, j-- , c.mode = cb; break; case ib: if (c.wrap) { for (; 32 > n;) { if (0 === i) break a; i-- , m |= e[g++] << n, n += 8 } if (p -= j, a.total_out += p, c.total += p, p && (a.adler = c.check = c.flags ? t(c.check, f, p, h - p) : s(c.check, f, p, h - p)), p = j, (c.flags ? m : d(m)) !== c.check) { a.msg = "incorrect data check", c.mode = lb; break } m = 0, n = 0 } c.mode = jb; case jb: if (c.wrap && c.flags) { for (; 32 > n;) { if (0 === i) break a; i-- , m += e[g++] << n, n += 8 } if (m !== (4294967295 & c.total)) { a.msg = "incorrect length check", c.mode = lb; break } m = 0, n = 0 } c.mode = kb; case kb: xb = D; break a; case lb: xb = G; break a; case mb: return H; case nb: default: return F
}return a.next_out = h, a.avail_out = j, a.next_in = g, a.avail_in = i, c.hold = m, c.bits = n, (c.wsize || p !== a.avail_out && c.mode < lb && (c.mode < ib || b !== z)) && l(a, a.output, a.next_out, p - a.avail_out) ? (c.mode = mb, H) : (o -= a.avail_in, p -= a.avail_out, a.total_in += o, a.total_out += p, c.total += p, c.wrap && p && (a.adler = c.check = c.flags ? t(c.check, f, p, a.next_out - p) : s(c.check, f, p, a.next_out - p)), a.data_type = c.bits + (c.last ? 64 : 0) + (c.mode === V ? 128 : 0) + (c.mode === bb || c.mode === Y ? 256 : 0), (0 === o && 0 === p || b === z) && xb === C && (xb = I), xb)
} function n(a) { if (!a || !a.state) return F; var b = a.state; return b.window && (b.window = null), a.state = null, C } function o(a, b) { var c; return a && a.state ? (c = a.state, 0 === (2 & c.wrap) ? F : (c.head = b, b.done = !1, C)) : F } var p, q, r = a("../utils/common"), s = a("./adler32"), t = a("./crc32"), u = a("./inffast"), v = a("./inftrees"), w = 0, x = 1, y = 2, z = 4, A = 5, B = 6, C = 0, D = 1, E = 2, F = -2, G = -3, H = -4, I = -5, J = 8, K = 1, L = 2, M = 3, N = 4, O = 5, P = 6, Q = 7, R = 8, S = 9, T = 10, U = 11, V = 12, W = 13, X = 14, Y = 15, Z = 16, $ = 17, _ = 18, ab = 19, bb = 20, cb = 21, db = 22, eb = 23, fb = 24, gb = 25, hb = 26, ib = 27, jb = 28, kb = 29, lb = 30, mb = 31, nb = 32, ob = 852, pb = 592, qb = 15, rb = qb, sb = !0; c.inflateReset = g, c.inflateReset2 = h, c.inflateResetKeep = f, c.inflateInit = j, c.inflateInit2 = i, c.inflate = m, c.inflateEnd = n, c.inflateGetHeader = o, c.inflateInfo = "pako inflate (from Nodeca project)"
}, { "../utils/common": 27, "./adler32": 29, "./crc32": 31, "./inffast": 34, "./inftrees": 36 }], 36: [function (a, b) { "use strict"; var c = a("../utils/common"), d = 15, e = 852, f = 592, g = 0, h = 1, i = 2, j = [3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0], k = [16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78], l = [1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0], m = [16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64]; b.exports = function (a, b, n, o, p, q, r, s) { var t, u, v, w, x, y, z, A, B, C = s.bits, D = 0, E = 0, F = 0, G = 0, H = 0, I = 0, J = 0, K = 0, L = 0, M = 0, N = null, O = 0, P = new c.Buf16(d + 1), Q = new c.Buf16(d + 1), R = null, S = 0; for (D = 0; d >= D; D++)P[D] = 0; for (E = 0; o > E; E++)P[b[n + E]]++; for (H = C, G = d; G >= 1 && 0 === P[G]; G--); if (H > G && (H = G), 0 === G) return p[q++] = 20971520, p[q++] = 20971520, s.bits = 1, 0; for (F = 1; G > F && 0 === P[F]; F++); for (F > H && (H = F), K = 1, D = 1; d >= D; D++)if (K <<= 1, K -= P[D], 0 > K) return -1; if (K > 0 && (a === g || 1 !== G)) return -1; for (Q[1] = 0, D = 1; d > D; D++)Q[D + 1] = Q[D] + P[D]; for (E = 0; o > E; E++)0 !== b[n + E] && (r[Q[b[n + E]]++] = E); if (a === g ? (N = R = r, y = 19) : a === h ? (N = j, O -= 257, R = k, S -= 257, y = 256) : (N = l, R = m, y = -1), M = 0, E = 0, D = F, x = q, I = H, J = 0, v = -1, L = 1 << H, w = L - 1, a === h && L > e || a === i && L > f) return 1; for (var T = 0; ;) { T++ , z = D - J, r[E] < y ? (A = 0, B = r[E]) : r[E] > y ? (A = R[S + r[E]], B = N[O + r[E]]) : (A = 96, B = 0), t = 1 << D - J, u = 1 << I, F = u; do u -= t, p[x + (M >> J) + u] = z << 24 | A << 16 | B | 0; while (0 !== u); for (t = 1 << D - 1; M & t;)t >>= 1; if (0 !== t ? (M &= t - 1, M += t) : M = 0, E++ , 0 === --P[D]) { if (D === G) break; D = b[n + r[E]] } if (D > H && (M & w) !== v) { for (0 === J && (J = H), x += F, I = D - J, K = 1 << I; G > I + J && (K -= P[I + J], !(0 >= K));)I++ , K <<= 1; if (L += 1 << I, a === h && L > e || a === i && L > f) return 1; v = M & w, p[v] = H << 24 | I << 16 | x - q | 0 } } return 0 !== M && (p[x + M] = D - J << 24 | 64 << 16 | 0), s.bits = H, 0 } }, { "../utils/common": 27 }], 37: [function (a, b) { "use strict"; b.exports = { 2: "need dictionary", 1: "stream end", 0: "", "-1": "file error", "-2": "stream error", "-3": "data error", "-4": "insufficient memory", "-5": "buffer error", "-6": "incompatible version" } }, {}], 38: [function (a, b, c) { "use strict"; function d(a) { for (var b = a.length; --b >= 0;)a[b] = 0 } function e(a) { return 256 > a ? gb[a] : gb[256 + (a >>> 7)] } function f(a, b) { a.pending_buf[a.pending++] = 255 & b, a.pending_buf[a.pending++] = b >>> 8 & 255 } function g(a, b, c) { a.bi_valid > V - c ? (a.bi_buf |= b << a.bi_valid & 65535, f(a, a.bi_buf), a.bi_buf = b >> V - a.bi_valid, a.bi_valid += c - V) : (a.bi_buf |= b << a.bi_valid & 65535, a.bi_valid += c) } function h(a, b, c) { g(a, c[2 * b], c[2 * b + 1]) } function i(a, b) { var c = 0; do c |= 1 & a, a >>>= 1, c <<= 1; while (--b > 0); return c >>> 1 } function j(a) { 16 === a.bi_valid ? (f(a, a.bi_buf), a.bi_buf = 0, a.bi_valid = 0) : a.bi_valid >= 8 && (a.pending_buf[a.pending++] = 255 & a.bi_buf, a.bi_buf >>= 8, a.bi_valid -= 8) } function k(a, b) { var c, d, e, f, g, h, i = b.dyn_tree, j = b.max_code, k = b.stat_desc.static_tree, l = b.stat_desc.has_stree, m = b.stat_desc.extra_bits, n = b.stat_desc.extra_base, o = b.stat_desc.max_length, p = 0; for (f = 0; U >= f; f++)a.bl_count[f] = 0; for (i[2 * a.heap[a.heap_max] + 1] = 0, c = a.heap_max + 1; T > c; c++)d = a.heap[c], f = i[2 * i[2 * d + 1] + 1] + 1, f > o && (f = o, p++), i[2 * d + 1] = f, d > j || (a.bl_count[f]++ , g = 0, d >= n && (g = m[d - n]), h = i[2 * d], a.opt_len += h * (f + g), l && (a
}, {}, [9])(9)
});
!function (t) { function e(r) { if (n[r]) return n[r].exports; var i = n[r] = { exports: {}, id: r, loaded: !1 }; return t[r].call(i.exports, i, i.exports, e), i.loaded = !0, i.exports } var n = {}; return e.m = t, e.c = n, e.p = "", e(0) }([function (t, e, n) { (function (e) { t.exports = e.pdfMake = n(1) }).call(e, function () { return this }()) }, function (t, e, n) { (function (e) { "use strict"; function r(t, e, n) { this.docDefinition = t, this.fonts = e || a, this.vfs = n } var i = n(2), o = n(3), a = { Roboto: { normal: "Roboto-Regular.ttf", bold: "Roboto-Medium.ttf", italics: "Roboto-Italic.ttf", bolditalics: "Roboto-Italic.ttf" } }; r.prototype._createDoc = function (t, n) { var r = new i(this.fonts); r.fs.bindFS(this.vfs); var o, a = r.createPdfKitDocument(this.docDefinition, t), s = []; a.on("data", function (t) { s.push(t) }), a.on("end", function () { o = e.concat(s), n(o, a._pdfMakePages) }), a.end() }, r.prototype._getPages = function (t, e) { if (!e) throw "getBuffer is an async method and needs a callback argument"; this._createDoc(t, function (t, n) { e(n) }) }, r.prototype.open = function (t) { var e = window.open("", "_blank"); try { this.getDataUrl(function (t) { e.location.href = t }) } catch (n) { throw e.close(), n } }, r.prototype.print = function () { this.getDataUrl(function (t) { var e = document.createElement("iframe"); e.style.position = "absolute", e.style.left = "-99999px", e.src = t, e.onload = function () { function t() { document.body.removeChild(e), document.removeEventListener("click", t) } document.addEventListener("click", t, !1) }, document.body.appendChild(e) }, { autoPrint: !0 }) }, r.prototype.download = function (t, e) { "function" == typeof t && (e = t, t = null), t = t || "file.pdf", this.getBuffer(function (n) { o(new Blob([n], { type: "application/pdf" }), t), "function" == typeof e && e() }) }, r.prototype.getBase64 = function (t, e) { if (!t) throw "getBase64 is an async method and needs a callback argument"; this._createDoc(e, function (e) { t(e.toString("base64")) }) }, r.prototype.getDataUrl = function (t, e) { if (!t) throw "getDataUrl is an async method and needs a callback argument"; this._createDoc(e, function (e) { t("data:application/pdf;base64," + e.toString("base64")) }) }, r.prototype.getBuffer = function (t, e) { if (!t) throw "getBuffer is an async method and needs a callback argument"; this._createDoc(e, function (e) { t(e) }) }, t.exports = { createPdf: function (t) { return new r(t, window.pdfMake.fonts, window.pdfMake.vfs) } } }).call(e, n(4).Buffer) }, function (t, e, n) { "use strict"; function r(t) { this.fontDescriptors = t } function i(t) { if (!t) return null; if ("number" == typeof t || t instanceof Number) t = { left: t, right: t, top: t, bottom: t }; else if (t instanceof Array) if (2 === t.length) t = { left: t[0], top: t[1], right: t[0], bottom: t[1] }; else { if (4 !== t.length) throw "Invalid pageMargins definition"; t = { left: t[0], top: t[1], right: t[2], bottom: t[3] } } return t } function o(t) { t.registerTableLayouts({ noBorders: { hLineWidth: function (t) { return 0 }, vLineWidth: function (t) { return 0 }, paddingLeft: function (t) { return t && 4 || 0 }, paddingRight: function (t, e) { return t < e.table.widths.length - 1 ? 4 : 0 } }, headerLineOnly: { hLineWidth: function (t, e) { return 0 === t || t === e.table.body.length ? 0 : t === e.table.headerRows ? 2 : 0 }, vLineWidth: function (t) { return 0 }, paddingLeft: function (t) { return 0 === t ? 0 : 8 }, paddingRight: function (t, e) { return t === e.table.widths.length - 1 ? 0 : 8 } }, lightHorizontalLines: { hLineWidth: function (t, e) { return 0 === t || t === e.table.body.length ? 0 : t === e.table.headerRows ? 2 : 1 }, vLineWidth: function (t) { return 0 }, hLineColor: function (t) { return 1 === t ? "black" : "#aaa" }, paddingLeft: function (t) { return 0 === t ? 0 : 8 }, paddingRight: function (t, e) { return t === e.table.widths.length - 1 ? 0 : 8 } } }) } function a(t) { if ("string" == typeof t || t instanceof String) { var e = y[t.toUpperCase()]; if (!e) throw "Page
var r, i; (function (t) {/*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */
var o = o || "undefined" != typeof navigator && navigator.msSaveOrOpenBlob && navigator.msSaveOrOpenBlob.bind(navigator) || function (t) { "use strict"; if ("undefined" == typeof navigator || !/MSIE [1-9]\./.test(navigator.userAgent)) { var e = t.document, n = function () { return t.URL || t.webkitURL || t }, r = e.createElementNS("http://www.w3.org/1999/xhtml", "a"), i = "download" in r, o = function (n) { var r = e.createEvent("MouseEvents"); r.initMouseEvent("click", !0, !1, t, 0, 0, 0, 0, 0, !1, !1, !1, !1, 0, null), n.dispatchEvent(r) }, a = t.webkitRequestFileSystem, s = t.requestFileSystem || a || t.mozRequestFileSystem, h = function (e) { (t.setImmediate || t.setTimeout)(function () { throw e }, 0) }, u = "application/octet-stream", l = 0, c = 10, f = function (e) { var r = function () { "string" == typeof e ? n().revokeObjectURL(e) : e.remove() }; t.chrome ? r() : setTimeout(r, c) }, d = function (t, e, n) { e = [].concat(e); for (var r = e.length; r--;) { var i = t["on" + e[r]]; if ("function" == typeof i) try { i.call(t, n || t) } catch (o) { h(o) } } }, p = function (e, h) { var c, p, g, v = this, m = e.type, y = !1, w = function () { d(v, "writestart progress write writeend".split(" ")) }, _ = function () { if ((y || !c) && (c = n().createObjectURL(e)), p) p.location.href = c; else { var r = t.open(c, "_blank"); void 0 == r && "undefined" != typeof safari && (t.location.href = c) } v.readyState = v.DONE, w(), f(c) }, b = function (t) { return function () { return v.readyState !== v.DONE ? t.apply(this, arguments) : void 0 } }, x = { create: !0, exclusive: !1 }; return v.readyState = v.INIT, h || (h = "download"), i ? (c = n().createObjectURL(e), r.href = c, r.download = h, o(r), v.readyState = v.DONE, w(), void f(c)) : (t.chrome && m && m !== u && (g = e.slice || e.webkitSlice, e = g.call(e, 0, e.size, u), y = !0), a && "download" !== h && (h += ".download"), (m === u || a) && (p = t), s ? (l += e.size, void s(t.TEMPORARY, l, b(function (t) { t.root.getDirectory("saved", x, b(function (t) { var n = function () { t.getFile(h, x, b(function (t) { t.createWriter(b(function (n) { n.onwriteend = function (e) { p.location.href = t.toURL(), v.readyState = v.DONE, d(v, "writeend", e), f(t) }, n.onerror = function () { var t = n.error; t.code !== t.ABORT_ERR && _() }, "writestart progress write abort".split(" ").forEach(function (t) { n["on" + t] = v["on" + t] }), n.write(e), v.abort = function () { n.abort(), v.readyState = v.DONE }, v.readyState = v.WRITING }), _) }), _) }; t.getFile(h, { create: !1 }, b(function (t) { t.remove(), n() }), b(function (t) { t.code === t.NOT_FOUND_ERR ? n() : _() })) }), _) }), _)) : void _()) }, g = p.prototype, v = function (t, e) { return new p(t, e) }; return g.abort = function () { var t = this; t.readyState = t.DONE, d(t, "abort") }, g.readyState = g.INIT = 0, g.WRITING = 1, g.DONE = 2, g.error = g.onwritestart = g.onprogress = g.onwrite = g.onabort = g.onerror = g.onwriteend = null, v } }("undefined" != typeof self && self || "undefined" != typeof window && window || this.content); "undefined" != typeof t && null !== t ? t.exports = o : null !== n(13) && null != n(14) && (r = [], i = function () { return o }.apply(e, r), !(void 0 !== i && (t.exports = i)))
}).call(e, n(15)(t))
}, function (t, e, n) {
(function (t) {
function t(e) { return this instanceof t ? (this.length = 0, this.parent = void 0, "number" == typeof e ? r(this, e) : "string" == typeof e ? i(this, e, arguments.length > 1 ? arguments[1] : "utf8") : o(this, e)) : arguments.length > 1 ? new t(e, arguments[1]) : new t(e) } function r(e, n) { if (e = c(e, 0 > n ? 0 : 0 | f(n)), !t.TYPED_ARRAY_SUPPORT) for (var r = 0; n > r; r++)e[r] = 0; return e } function i(t, e, n) { ("string" != typeof n || "" === n) && (n = "utf8"); var r = 0 | p(e, n); return t = c(t, r), t.write(e, n), t } function o(e, n) { if (t.isBuffer(n)) return a(e, n); if (G(n)) return s(e, n); if (null == n) throw new TypeError("must start with number, buffer, array or string"); return "undefined" != typeof ArrayBuffer && n.buffer instanceof ArrayBuffer ? h(e, n) : n.length ? u(e, n) : l(e, n) } function a(t, e) { var n = 0 | f(e.length); return t = c(t, n), e.copy(t, 0, 0, n), t } function s(t, e) { var n = 0 | f(e.length); t = c(t, n); for (var r = 0; n > r; r += 1)t[r] = 255 & e[r]; return t } function h(t, e) { var n = 0 | f(e.length); t = c(t, n); for (var r = 0; n > r; r += 1)t[r] = 255 & e[r]; return t } function u(t, e) { var n = 0 | f(e.length); t = c(t, n); for (var r = 0; n > r; r += 1)t[r] = 255 & e[r]; return t } function l(t, e) { var n, r = 0; "Buffer" === e.type && G(e.data) && (n = e.data, r = 0 | f(n.length)), t = c(t, r); for (var i = 0; r > i; i += 1)t[i] = 255 & n[i]; return t } function c(e, n) { t.TYPED_ARRAY_SUPPORT ? e = t._augment(new Uint8Array(n)) : (e.length = n, e._isBuffer = !0); var r = 0 !== n && n <= t.poolSize >>> 1; return r && (e.parent = Y), e } function f(t) { if (t >= q) throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x" + q.toString(16) + " bytes"); return 0 | t } function d(e, n) { if (!(this instanceof d)) return new d(e, n); var r = new t(e, n); return delete r.parent, r } function p(t, e) { if ("string" != typeof t && (t = String(t)), 0 === t.length) return 0; switch (e || "utf8") { case "ascii": case "binary": case "raw": return t.length; case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return 2 * t.length; case "hex": return t.length >>> 1; case "utf8": case "utf-8": return P(t).length; case "base64": return W(t).length; default: return t.length } } function g(t, e, n, r) { n = Number(n) || 0; var i = t.length - n; r ? (r = Number(r), r > i && (r = i)) : r = i; var o = e.length; if (o % 2 !== 0) throw new Error("Invalid hex string"); r > o / 2 && (r = o / 2); for (var a = 0; r > a; a++) { var s = parseInt(e.substr(2 * a, 2), 16); if (isNaN(s)) throw new Error("Invalid hex string"); t[n + a] = s } return a } function v(t, e, n, r) { return N(P(e, t.length - n), t, n, r) } function m(t, e, n, r) { return N(F(e), t, n, r) } function y(t, e, n, r) { return m(t, e, n, r) } function w(t, e, n, r) { return N(W(e), t, n, r) } function _(t, e, n, r) { return N(z(e, t.length - n), t, n, r) } function b(t, e, n) { return H.fromByteArray(0 === e && n === t.length ? t : t.slice(e, n)) } function x(t, e, n) { var r = "", i = ""; n = Math.min(t.length, n); for (var o = e; n > o; o++)t[o] <= 127 ? (r += j(i) + String.fromCharCode(t[o]), i = "") : i += "%" + t[o].toString(16); return r + j(i) } function S(t, e, n) { var r = ""; n = Math.min(t.length, n); for (var i = e; n > i; i++)r += String.fromCharCode(127 & t[i]); return r } function k(t, e, n) { var r = ""; n = Math.min(t.length, n); for (var i = e; n > i; i++)r += String.fromCharCode(t[i]); return r } function E(t, e, n) { var r = t.length; (!e || 0 > e) && (e = 0), (!n || 0 > n || n > r) && (n = r); for (var i = "", o = e; n > o; o++)i += U(t[o]); return i } function C(t, e, n) { for (var r = t.slice(e, n), i = "", o = 0; o < r.length; o += 2)i += String.fromCharCode(r[o] + 256 * r[o + 1]); return i } function I(t, e, n) { if (t % 1 !== 0 || 0 > t) throw new RangeError("offset is not uint"); if (t + e > n) throw new RangeError("Trying to access beyond buffer length") } function A(e, n, r, i, o, a) { if (!t.isBuffer(e)) throw new TypeError("buffer must be a Buffer instance")
* The buffer module from node.js, for the browser.
*
* @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>
* @license MIT
*/
var H = n(31), Z = n(29), G = n(30); e.Buffer = t, e.SlowBuffer = d, e.INSPECT_MAX_BYTES = 50, t.poolSize = 8192; var q = 1073741823, Y = {}; t.TYPED_ARRAY_SUPPORT = function () { try { var t = new ArrayBuffer(0), e = new Uint8Array(t); return e.foo = function () { return 42 }, 42 === e.foo() && "function" == typeof e.subarray && 0 === new Uint8Array(1).subarray(1, 1).byteLength } catch (n) { return !1 } }(), t.isBuffer = function (t) { return !(null == t || !t._isBuffer) }, t.compare = function (e, n) { if (!t.isBuffer(e) || !t.isBuffer(n)) throw new TypeError("Arguments must be Buffers"); if (e === n) return 0; for (var r = e.length, i = n.length, o = 0, a = Math.min(r, i); a > o && e[o] === n[o];)++o; return o !== a && (r = e[o], i = n[o]), i > r ? -1 : r > i ? 1 : 0 }, t.isEncoding = function (t) { switch (String(t).toLowerCase()) { case "hex": case "utf8": case "utf-8": case "ascii": case "binary": case "base64": case "raw": case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return !0; default: return !1 } }, t.concat = function (e, n) { if (!G(e)) throw new TypeError("list argument must be an Array of Buffers."); if (0 === e.length) return new t(0); if (1 === e.length) return e[0]; var r; if (void 0 === n) for (n = 0, r = 0; r < e.length; r++)n += e[r].length; var i = new t(n), o = 0; for (r = 0; r < e.length; r++) { var a = e[r]; a.copy(i, o), o += a.length } return i }, t.byteLength = p, t.prototype.length = void 0, t.prototype.parent = void 0, t.prototype.toString = function (t, e, n) { var r = !1; if (e = 0 | e, n = void 0 === n || n === 1 / 0 ? this.length : 0 | n, t || (t = "utf8"), 0 > e && (e = 0), n > this.length && (n = this.length), e >= n) return ""; for (; ;)switch (t) { case "hex": return E(this, e, n); case "utf8": case "utf-8": return x(this, e, n); case "ascii": return S(this, e, n); case "binary": return k(this, e, n); case "base64": return b(this, e, n); case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return C(this, e, n); default: if (r) throw new TypeError("Unknown encoding: " + t); t = (t + "").toLowerCase(), r = !0 } }, t.prototype.equals = function (e) { if (!t.isBuffer(e)) throw new TypeError("Argument must be a Buffer"); return this === e ? !0 : 0 === t.compare(this, e) }, t.prototype.inspect = function () { var t = "", n = e.INSPECT_MAX_BYTES; return this.length > 0 && (t = this.toString("hex", 0, n).match(/.{2}/g).join(" "), this.length > n && (t += " ... ")), "<Buffer " + t + ">" }, t.prototype.compare = function (e) { if (!t.isBuffer(e)) throw new TypeError("Argument must be a Buffer"); return this === e ? 0 : t.compare(this, e) }, t.prototype.indexOf = function (e, n) { function r(t, e, n) { for (var r = -1, i = 0; n + i < t.length; i++)if (t[n + i] === e[-1 === r ? 0 : i - r]) { if (-1 === r && (r = i), i - r + 1 === e.length) return n + r } else r = -1; return -1 } if (n > 2147483647 ? n = 2147483647 : -2147483648 > n && (n = -2147483648), n >>= 0, 0 === this.length) return -1; if (n >= this.length) return -1; if (0 > n && (n = Math.max(this.length + n, 0)), "string" == typeof e) return 0 === e.length ? -1 : String.prototype.indexOf.call(this, e, n); if (t.isBuffer(e)) return r(this, e, n); if ("number" == typeof e) return t.TYPED_ARRAY_SUPPORT && "function" === Uint8Array.prototype.indexOf ? Uint8Array.prototype.indexOf.call(this, e, n) : r(this, [e], n); throw new TypeError("val must be string, number or Buffer") }, t.prototype.get = function (t) { return this.readUInt8(t) }, t.prototype.set = function (t, e) { return this.writeUInt8(t, e) }, t.prototype.write = function (t, e, n, r) { if (void 0 === e) r = "utf8", n = this.length, e = 0; else if (void 0 === n && "string" == typeof e) r = e, n = this.length, e = 0; else if (isFinite(e)) e = 0 | e, isFinite(n) ? (n = 0 | n, void 0 === r && (r = "utf8")) : (r = n, n = void 0); else { var i = r; r = e, e = 0 | n, n = i } var o = this.length - e; if ((void 0 === n || n > o) && (n = o), t.length > 0 && (0 > n || 0 > e) || e > this.length) throw new RangeError("attempt to write outside buffer bounds"); r ||
}).call(e, n(4).Buffer)
}, function (t, e, n) { "use strict"; function r(t, e) { var n = "normal"; return t && e ? n = "bolditalics" : t ? n = "bold" : e && (n = "italics"), n } function i(t, e) { this.fonts = {}, this.pdfDoc = e, this.fontWrappers = {}; for (var n in t) if (t.hasOwnProperty(n)) { var r = t[n]; this.fonts[n] = { normal: r.normal, bold: r.bold, italics: r.italics, bolditalics: r.bolditalics } } } var o = n(11), a = n(16); i.prototype.provideFont = function (t, e, n) { if (!this.fonts[t]) return this.pdfDoc._font; var i = r(e, n); return this.fontWrappers[t] = this.fontWrappers[t] || {}, this.fontWrappers[t][i] || (this.fontWrappers[t][i] = new a(this.pdfDoc, this.fonts[t][i], t + "(" + i + ")")), this.fontWrappers[t][i] }, i.prototype.setFontRefsToPdfDoc = function () { var t = this; o.each(t.fontWrappers, function (e) { o.each(e, function (e) { o.each(e.pdfFonts, function (e) { t.pdfDoc.page.fonts[e.id] || (t.pdfDoc.page.fonts[e.id] = e.ref()) }) }) }) }, t.exports = i }, function (t, e, n) { "use strict"; function r(t, e) { a.each(e, function (e) { t.push(e) }) } function i(t, e, n) { this.pageSize = t, this.pageMargins = e, this.tracker = new s, this.imageMeasure = n, this.tableLayouts = {} } function o(t) { var e = t.x, n = t.y; t.positions = [], a.each(t.canvas, function (t) { var e = t.x, n = t.y; t.resetXY = function () { t.x = e, t.y = n } }), t.resetXY = function () { t.x = e, t.y = n, a.each(t.canvas, function (t) { t.resetXY() }) } } var a = n(11), s = n(18), h = n(19), u = n(20), l = n(21), c = n(22), f = n(23), d = n(24), p = n(25).pack, g = n(25).offsetVector, v = n(25).fontStringify, m = n(25).isFunction, y = n(26), w = n(27); i.prototype.registerTableLayouts = function (t) { this.tableLayouts = p(this.tableLayouts, t) }, i.prototype.layoutDocument = function (t, e, n, r, i, o, s, u, l, c) { function f(t, e) { return t = a.reject(t, function (t) { return a.isEmpty(t.positions) }), a.each(t, function (t) { var n = a.pick(t, ["id", "text", "ul", "ol", "table", "image", "qr", "canvas", "columns", "headlineLevel", "style", "pageBreak", "pageOrientation", "width", "height"]); n.startPosition = a.first(t.positions), n.pageNumbers = a.chain(t.positions).map("pageNumber").uniq().value(), n.pages = e.length, n.stack = a.isArray(t.stack), t.nodeInfo = n }), a.any(t, function (t, e, n) { if ("before" !== t.pageBreak && !t.pageBreakCalculated) { t.pageBreakCalculated = !0; var r = a.first(t.nodeInfo.pageNumbers), i = a.chain(n).drop(e + 1).filter(function (t) { return a.contains(t.nodeInfo.pageNumbers, r) }).value(), o = a.chain(n).drop(e + 1).filter(function (t) { return a.contains(t.nodeInfo.pageNumbers, r + 1) }).value(), s = a.chain(n).take(e).filter(function (t) { return a.contains(t.nodeInfo.pageNumbers, r) }).value(); if (c(t.nodeInfo, a.map(i, "nodeInfo"), a.map(o, "nodeInfo"), a.map(s, "nodeInfo"))) return t.pageBreak = "before", !0 } }) } function d(t) { a.each(t.linearNodeList, function (t) { t.resetXY() }) } m(c) || (c = function () { return !1 }), this.docMeasure = new h(e, n, r, this.imageMeasure, this.tableLayouts, u); for (var p = this.tryLayoutDocument(t, e, n, r, i, o, s, u, l); f(p.linearNodeList, p.pages);)d(p), p = this.tryLayoutDocument(t, e, n, r, i, o, s, u, l); return p.pages }, i.prototype.tryLayoutDocument = function (t, e, n, r, i, o, a, s, h, c) { this.linearNodeList = [], t = this.docMeasure.measureDocument(t), this.writer = new l(new u(this.pageSize, this.pageMargins), this.tracker); var f = this; return this.writer.context().tracker.startTracking("pageAdded", function () { f.addBackground(i) }), this.addBackground(i), this.processNode(t), this.addHeadersAndFooters(o, a), null != h && this.addWatermark(h, e), { pages: this.writer.context().pages, linearNodeList: this.linearNodeList } }, i.prototype.addBackground = function (t) { var e = m(t) ? t : function () { return t }, n = e(this.writer.context().page + 1); if (n) { var r = this.writer.context().getCurrentPage().pageSize; this.writer.beginUnbreakableBlock(r.width, r.height), this.processNode(this.docMeasure.measureDocument(n)), this.writer.
var r; (function (t, i) {
(function () {
function o(t, e) { if (t !== e) { var n = t === t, r = e === e; if (t > e || !n || "undefined" == typeof t && r) return 1; if (e > t || !r || "undefined" == typeof e && n) return -1 } return 0 } function a(t, e, n) { if (e !== e) return m(t, n); for (var r = (n || 0) - 1, i = t.length; ++r < i;)if (t[r] === e) return r; return -1 } function s(t, e) { var n = t.length; for (t.sort(e); n--;)t[n] = t[n].value; return t } function h(t) { return "string" == typeof t ? t : null == t ? "" : t + "" } function u(t) { return t.charCodeAt(0) } function l(t, e) { for (var n = -1, r = t.length; ++n < r && e.indexOf(t.charAt(n)) > -1;); return n } function c(t, e) { for (var n = t.length; n-- && e.indexOf(t.charAt(n)) > -1;); return n } function f(t, e) { return o(t.criteria, e.criteria) || t.index - e.index } function d(t, e) { for (var n = -1, r = t.criteria, i = e.criteria, a = r.length; ++n < a;) { var s = o(r[n], i[n]); if (s) return s } return t.index - e.index } function p(t) { return Ht[t] } function g(t) { return Zt[t] } function v(t) { return "\\" + Yt[t] } function m(t, e, n) { for (var r = t.length, i = n ? e || r : (e || 0) - 1; n ? i-- : ++i < r;) { var o = t[i]; if (o !== o) return i } return -1 } function y(t) { return t && "object" == typeof t || !1 } function w(t) { return 160 >= t && t >= 9 && 13 >= t || 32 == t || 160 == t || 5760 == t || 6158 == t || t >= 8192 && (8202 >= t || 8232 == t || 8233 == t || 8239 == t || 8287 == t || 12288 == t || 65279 == t) } function _(t, e) { for (var n = -1, r = t.length, i = -1, o = []; ++n < r;)t[n] === e && (t[n] = G, o[++i] = n); return o } function b(t, e) { for (var n, r = -1, i = t.length, o = -1, a = []; ++r < i;) { var s = t[r], h = e ? e(s, r, t) : s; r && n === h || (n = h, a[++o] = s) } return a } function x(t) { for (var e = -1, n = t.length; ++e < n && w(t.charCodeAt(e));); return e } function S(t) { for (var e = t.length; e-- && w(t.charCodeAt(e));); return e } function k(t) { return Gt[t] } function E(t) {
function e(t) { if (y(t) && !ja(t)) { if (t instanceof n) return t; if (qo.call(t, "__wrapped__")) return new n(t.__wrapped__, t.__chain__, Vt(t.__actions__)) } return new n(t) } function n(t, e, n) { this.__actions__ = n || [], this.__chain__ = !!e, this.__wrapped__ = t } function r(t) { this.actions = null, this.dir = 1, this.dropCount = 0, this.filtered = !1, this.iteratees = null, this.takeCount = xa, this.views = null, this.wrapped = t } function i() { var t = this.actions, e = this.iteratees, n = this.views, i = new r(this.wrapped); return i.actions = t ? Vt(t) : null, i.dir = this.dir, i.dropCount = this.dropCount, i.filtered = this.filtered, i.iteratees = e ? Vt(e) : null, i.takeCount = this.takeCount, i.views = n ? Vt(n) : null, i } function w() { if (this.filtered) { var t = new r(this); t.dir = -1, t.filtered = !0 } else t = this.clone(), t.dir *= -1; return t } function J() { var t = this.wrapped.value(); if (!ja(t)) return qe(t, this.actions); var e = this.dir, n = 0 > e, r = vn(0, t.length, this.views), i = r.start, o = r.end, a = o - i, s = this.dropCount, h = va(a, this.takeCount - s), u = n ? o : i - 1, l = this.iteratees, c = l ? l.length : 0, f = 0, d = []; t: for (; a-- && h > f;) { u += e; for (var p = -1, g = t[u]; ++p < c;) { var v = l[p], m = v.iteratee, y = m(g, u, t), w = v.type; if (w == j) g = y; else if (!y) { if (w == N) continue t; break t } } s ? s-- : d[f++] = g } return d } function nt() { this.__data__ = {} } function it(t) { return this.has(t) && delete this.__data__[t] } function Ht(t) { return "__proto__" == t ? C : this.__data__[t] } function Zt(t) { return "__proto__" != t && qo.call(this.__data__, t) } function Gt(t, e) { return "__proto__" != t && (this.__data__[t] = e), this } function qt(t) { var e = t ? t.length : 0; for (this.data = { hash: fa(null), set: new oa }; e--;)this.push(t[e]) } function Yt(t, e) { var n = t.data, r = "string" == typeof e || _i(e) ? n.set.has(e) : n.hash[e]; return r ? 0 : -1 } function Xt(t) { var e = this.data; "string" == typeof t || _i(t) ? e.set.add(t) : e.hash[t] = !0 } function Vt(t, e) { var n = -1, r = t.length; for (e || (e = Bo(r)); ++n < r;)e[n] = t[n]; return e } function $t(t, e) { for (var n = -1, r = t.length; ++n < r && e(t[n], n, t) !== !1;); return t } function Qt(t, e) { for (var n = t.length; n-- && e(t[n], n, t) !== !1;); return t } function te(t, e) { for (var n = -1, r = t.length; ++n < r;)if (!e(t[n], n, t)) return !1; return !0 } function ee(t, e) { for (var n = -1, r = t.length, i = -1, o = []; ++n < r;) { var a = t[n]; e(a, n, t) && (o[++i] = a) } return o } function ne(t, e) { for (var n = -1, r = t.length, i = Bo(r); ++n < r;)i[n] = e(t[n], n, t); return i } function re(t) { for (var e = -1, n = t.length, r = ba; ++e < n;) { var i = t[e]; i > r && (r = i) } return r } function ie(t) { for (var e = -1, n = t.length, r = xa; ++e < n;) { var i = t[e]; r > i && (r = i) } return r } function oe(t, e, n, r) { var i = -1, o = t.length; for (r && o && (n = t[++i]); ++i < o;)n = e(n, t[i], i, t); return n } function ae(t, e, n, r) { var i = t.length; for (r && i && (n = t[--i]); i--;)n = e(n, t[i], i, t); return n } function se(t, e) { for (var n = -1, r = t.length; ++n < r;)if (e(t[n], n, t)) return !0; return !1 } function he(t, e) { return "undefined" == typeof t ? e : t } function ue(t, e, n, r) { return "undefined" != typeof t && qo.call(r, n) ? t : e } function le(t, e, n) { var r = qa(e); if (!n) return fe(e, t, r); for (var i = -1, o = r.length; ++i < o;) { var a = r[i], s = t[a], h = n(s, e[a], a, t, e); (h === h ? h === s : s !== s) && ("undefined" != typeof s || a in t) || (t[a] = h) } return t } function ce(t, e) { for (var n = -1, r = t.length, i = Sn(r), o = e.length, a = Bo(o); ++n < o;) { var s = e[n]; i ? (s = parseFloat(s), a[n] = bn(s, r) ? t[s] : C) : a[n] = t[s] } return a } function fe(t, e, n) { n || (n = e, e = {}); for (var r = -1, i = n.length; ++r < i;) { var o = n[r]; e[o] = t[o] } return e } function de(t, e) { for (var n = -1, r = e.length; ++n < r;) { var i = e[n]; t[i] = un(t[i], A
var r = -1, i = "function" == typeof e, o = t ? t.length : 0, a = Sn(o) ? Bo(o) : []; return ye(t, function (t) {
var o = i ? e : null != t && t[e]; a[++r] = o ? o.apply(t, n) : C
}), a
} function Be(t, e, n, r, i, o) { if (t === e) return 0 !== t || 1 / t == 1 / e; var a = typeof t, s = typeof e; return "function" != a && "object" != a && "function" != s && "object" != s || null == t || null == e ? t !== t && e !== e : Te(t, e, Be, n, r, i, o) } function Te(t, e, n, r, i, o, a) { var s = ja(t), h = ja(e), u = Y, l = Y; s || (u = Ko.call(t), u == q ? u = tt : u != tt && (s = Ai(t))), h || (l = Ko.call(e), l == q ? l = tt : l != tt && (h = Ai(e))); var c = u == tt, f = l == tt, d = u == l; if (d && !s && !c) return cn(t, e, u); var p = c && qo.call(t, "__wrapped__"), g = f && qo.call(e, "__wrapped__"); if (p || g) return n(p ? t.value() : t, g ? e.value() : e, r, i, o, a); if (!d) return !1; o || (o = []), a || (a = []); for (var v = o.length; v--;)if (o[v] == t) return a[v] == e; o.push(t), a.push(e); var m = (s ? ln : fn)(t, e, n, r, i, o, a); return o.pop(), a.pop(), m } function Me(t, e, n, r, i) { var o = e.length; if (null == t) return !o; for (var a = -1, s = !i; ++a < o;)if (s && r[a] ? n[a] !== t[e[a]] : !qo.call(t, e[a])) return !1; for (a = -1; ++a < o;) { var h = e[a]; if (s && r[a]) var u = qo.call(t, h); else { var l = t[h], c = n[a]; u = i ? i(l, c, h) : C, "undefined" == typeof u && (u = Be(c, l, i, !0)) } if (!u) return !1 } return !0 } function Oe(t, e) { var n = []; return ye(t, function (t, r, i) { n.push(e(t, r, i)) }), n } function De(t) { var e = qa(t), n = e.length; if (1 == n) { var r = e[0], i = t[r]; if (kn(i)) return function (t) { return null != t && i === t[r] && qo.call(t, r) } } for (var o = Bo(n), a = Bo(n); n--;)i = t[e[n]], o[n] = i, a[n] = kn(i); return function (t) { return Me(t, e, o, a) } } function Ue(t, e, n, r, i) { var o = Sn(e.length) && (ja(e) || Ai(e)); return (o ? $t : Ie)(e, function (e, a, s) { if (y(e)) return r || (r = []), i || (i = []), Pe(t, s, a, Ue, n, r, i); var h = t[a], u = n ? n(h, e, a, t, s) : C, l = "undefined" == typeof u; l && (u = e), !o && "undefined" == typeof u || !l && (u === u ? u === h : h !== h) || (t[a] = u) }), t } function Pe(t, e, n, r, i, o, a) { for (var s = o.length, h = e[n]; s--;)if (o[s] == h) return void (t[n] = a[s]); var u = t[n], l = i ? i(u, h, n, t, e) : C, c = "undefined" == typeof l; c && (l = h, Sn(h.length) && (ja(h) || Ai(h)) ? l = ja(u) ? u : u ? Vt(u) : [] : Za(h) || fi(h) ? l = fi(u) ? Bi(u) : Za(u) ? u : {} : c = !1), o.push(h), a.push(l), c ? t[n] = r(l, h, i, o, a) : (l === l ? l !== u : u === u) && (t[n] = l) } function Fe(t) { return function (e) { return null == e ? C : e[t] } } function ze(t, e) { var n = e.length, r = ce(t, e); for (e.sort(o); n--;) { var i = parseFloat(e[n]); if (i != a && bn(i)) { var a = i; sa.call(t, i, 1) } } return r } function We(t, e) { return t + ea(_a() * (e - t + 1)) } function Ne(t, e, n, r, i) { return i(t, function (t, i, o) { n = r ? (r = !1, t) : e(n, t, i, o) }), n } function je(t, e, n) { var r = -1, i = t.length; e = null == e ? 0 : +e || 0, 0 > e && (e = -e > i ? 0 : i + e), n = "undefined" == typeof n || n > i ? i : +n || 0, 0 > n && (n += i), i = e > n ? 0 : n - e >>> 0, e >>>= 0; for (var o = Bo(i); ++r < i;)o[r] = t[r + e]; return o } function He(t, e) { var n; return ye(t, function (t, r, i) { return n = e(t, r, i), !n }), !!n } function Ze(t, e) { var n = -1, r = gn(), i = t.length, o = r == a, s = o && i >= 200, h = s && Ta(), u = []; h ? (r = Yt, o = !1) : (s = !1, h = e ? [] : u); t: for (; ++n < i;) { var l = t[n], c = e ? e(l, n, t) : l; if (o && l === l) { for (var f = h.length; f--;)if (h[f] === c) continue t; e && h.push(c), u.push(l) } else r(h, c) < 0 && ((e || s) && h.push(c), u.push(l)) } return u } function Ge(t, e) { for (var n = -1, r = e.length, i = Bo(r); ++n < r;)i[n] = t[e[n]]; return i } function qe(t, e) { var n = t; n instanceof r && (n = n.value()); for (var i = -1, o = e.length; ++i < o;) { var a = [n], s = e[i]; ra.apply(a, s.args), n = s.func.apply(s.thisArg, a) } return n } function Ye(t, e, n) { var r = 0, i = t ? t.length : r; if ("number" == typeof e && e === e && Ea >= i) { for (; i > r;) { var o = r + i >>> 1,
e.pluck = Tr, e.property = Co, e.propertyOf = Io, e.pull = Vn, e.pullAt = $n, e.range = Ao, e.rearg = si, e.reject = Dr, e.remove = Jn, e.rest = Qn, e.shuffle = Pr, e.slice = tr, e.sortBy = Wr, e.sortByAll = Nr, e.take = rr, e.takeRight = ir, e.takeRightWhile = or, e.takeWhile = ar, e.tap = gr, e.throttle = hi, e.thru = vr, e.times = Lo, e.toArray = Ri, e.toPlainObject = Bi, e.transform = Xi, e.union = sr, e.uniq = hr, e.unzip = ur, e.values = Vi, e.valuesIn = $i, e.where = jr, e.without = lr, e.wrap = ui, e.xor = cr, e.zip = fr, e.zipObject = dr, e.backflow = ei, e.collect = Br, e.compose = ei, e.each = Ar, e.eachRight = Lr, e.extend = Ga, e.iteratee = wo, e.methods = Wi, e.object = dr, e.select = kr, e.tail = Qn, e.unique = hr, So(e, e), e.attempt = yo, e.camelCase = Ka, e.capitalize = Qi, e.clone = li, e.cloneDeep = ci, e.deburr = to, e.endsWith = eo, e.escape = no, e.escapeRegExp = ro, e.every = Sr, e.find = Er, e.findIndex = Wn, e.findKey = Oi, e.findLast = Cr, e.findLastIndex = Nn, e.findLastKey = Di, e.findWhere = Ir, e.first = jn, e.has = Ni, e.identity = bo, e.includes = xr, e.indexOf = Gn, e.isArguments = fi, e.isArray = ja, e.isBoolean = di, e.isDate = pi, e.isElement = gi, e.isEmpty = vi, e.isEqual = mi, e.isError = yi, e.isFinite = Ha, e.isFunction = wi, e.isMatch = bi, e.isNaN = xi, e.isNative = Si, e.isNull = ki, e.isNumber = Ei, e.isObject = _i, e.isPlainObject = Za, e.isRegExp = Ci, e.isString = Ii, e.isTypedArray = Ai, e.isUndefined = Li, e.kebabCase = Xa, e.last = Kn, e.lastIndexOf = Xn, e.max = Fa, e.min = za, e.noConflict = ko, e.noop = Eo, e.now = Na, e.pad = io, e.padLeft = oo, e.padRight = ao, e.parseInt = so, e.random = Ji, e.reduce = Mr, e.reduceRight = Or, e.repeat = ho, e.result = Ki, e.runInContext = E, e.size = Fr, e.snakeCase = Va, e.some = zr, e.sortedIndex = er, e.sortedLastIndex = nr, e.startCase = $a, e.startsWith = uo, e.template = lo, e.trim = co, e.trimLeft = fo, e.trimRight = po, e.trunc = go, e.unescape = vo, e.uniqueId = Ro, e.words = mo, e.all = Sr, e.any = zr, e.contains = xr, e.detect = Er, e.foldl = Mr, e.foldr = Or, e.head = jn, e.include = xr, e.inject = Mr, So(e, function () { var t = {}; return Ie(e, function (n, r) { e.prototype[r] || (t[r] = n) }), t }(), !1), e.sample = Ur, e.prototype.sample = function (t) { return this.__chain__ || null != t ? this.thru(function (e) { return Ur(e, t) }) : Ur(this.value()) }, e.VERSION = I, $t(["bind", "bindKey", "curry", "curryRight", "partial", "partialRight"], function (t) { e[t].placeholder = e }), $t(["filter", "map", "takeWhile"], function (t, e) { var n = e == N; r.prototype[t] = function (t, r) { var i = this.clone(), o = i.filtered, a = i.iteratees || (i.iteratees = []); return i.filtered = o || n || e == H && i.dir < 0, a.push({ iteratee: pn(t, r, 3), type: e }), i } }), $t(["drop", "take"], function (t, e) { var n = t + "Count", i = t + "While"; r.prototype[t] = function (r) { r = null == r ? 1 : ga(+r || 0, 0); var i = this.clone(); if (i.filtered) { var o = i[n]; i[n] = e ? va(o, r) : o + r } else { var a = i.views || (i.views = []); a.push({ size: r, type: t + (i.dir < 0 ? "Right" : "") }) } return i }, r.prototype[t + "Right"] = function (e) { return this.reverse()[t](e).reverse() }, r.prototype[t + "RightWhile"] = function (t, e) { return this.reverse()[i](t, e).reverse() } }), $t(["first", "last"], function (t, e) { var n = "take" + (e ? "Right" : ""); r.prototype[t] = function () { return this[n](1).value()[0] } }), $t(["initial", "rest"], function (t, e) { var n = "drop" + (e ? "" : "Right"); r.prototype[t] = function () { return this[n](1) } }), $t(["pluck", "where"], function (t, e) { var n = e ? "filter" : "map", i = e ? De : Fe; r.prototype[t] = function (t) { return this[n](i(e ? t : t + "")) } }), r.prototype.dropWhile = function (t, e) { var n, r, i = this.dir < 0; return t = pn(t, e, 3), this.filter(function (e, o, a) { return n = n && (i ? r > o : o > r), r = o, n || (n = !t(e, o, a)) }) }, r.prototype.reject = function (t, e) { return t = pn(t, e, 3), this.filter(function (e, n, r) { re
} var C, I = "3.1.0", A = 1, L = 2, R = 4, B = 8, T = 16, M = 32, O = 64, D = 128, U = 256, P = 30, F = "...", z = 150, W = 16, N = 0, j = 1, H = 2, Z = "Expected a function", G = "__lodash_placeholder__", q = "[object Arguments]", Y = "[object Array]", K = "[object Boolean]", X = "[object Date]", V = "[object Error]", $ = "[object Function]", J = "[object Map]", Q = "[object Number]", tt = "[object Object]", et = "[object RegExp]", nt = "[object Set]", rt = "[object String]", it = "[object WeakMap]", ot = "[object ArrayBuffer]", at = "[object Float32Array]", st = "[object Float64Array]", ht = "[object Int8Array]", ut = "[object Int16Array]", lt = "[object Int32Array]", ct = "[object Uint8Array]", ft = "[object Uint8ClampedArray]", dt = "[object Uint16Array]", pt = "[object Uint32Array]", gt = /\b__p \+= '';/g, vt = /\b(__p \+=) '' \+/g, mt = /(__e\(.*?\)|\b__t\)) \+\n'';/g, yt = /&(?:amp|lt|gt|quot|#39|#96);/g, wt = /[&<>"'`]/g, _t = RegExp(yt.source), bt = RegExp(wt.source), xt = /<%-([\s\S]+?)%>/g, St = /<%([\s\S]+?)%>/g, kt = /<%=([\s\S]+?)%>/g, Et = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g, Ct = /\w*$/, It = /^\s*function[ \n\r\t]+\w/, At = /^0[xX]/, Lt = /^\[object .+?Constructor\]$/, Rt = /[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g, Bt = /($^)/, Tt = /[.*+?^${}()|[\]\/\\]/g, Mt = RegExp(Tt.source), Ot = /\bthis\b/, Dt = /['\n\r\u2028\u2029\\]/g, Ut = function () { var t = "[A-Z\\xc0-\\xd6\\xd8-\\xde]", e = "[a-z\\xdf-\\xf6\\xf8-\\xff]+"; return RegExp(t + "{2,}(?=" + t + e + ")|" + t + "?" + e + "|" + t + "+|[0-9]+", "g") }(), Pt = " \f \ufeff\n\r\u2028\u2029  ", Ft = ["Array", "ArrayBuffer", "Date", "Error", "Float32Array", "Float64Array", "Function", "Int8Array", "Int16Array", "Int32Array", "Math", "Number", "Object", "RegExp", "Set", "String", "_", "clearTimeout", "document", "isFinite", "parseInt", "setTimeout", "TypeError", "Uint8Array", "Uint8ClampedArray", "Uint16Array", "Uint32Array", "WeakMap", "window", "WinRTError"], zt = -1, Wt = {}; Wt[at] = Wt[st] = Wt[ht] = Wt[ut] = Wt[lt] = Wt[ct] = Wt[ft] = Wt[dt] = Wt[pt] = !0, Wt[q] = Wt[Y] = Wt[ot] = Wt[K] = Wt[X] = Wt[V] = Wt[$] = Wt[J] = Wt[Q] = Wt[tt] = Wt[et] = Wt[nt] = Wt[rt] = Wt[it] = !1; var Nt = {}; Nt[q] = Nt[Y] = Nt[ot] = Nt[K] = Nt[X] = Nt[at] = Nt[st] = Nt[ht] = Nt[ut] = Nt[lt] = Nt[Q] = Nt[tt] = Nt[et] = Nt[rt] = Nt[ct] = Nt[ft] = Nt[dt] = Nt[pt] = !0, Nt[V] = Nt[$] = Nt[J] = Nt[nt] = Nt[it] = !1; var jt = { leading: !1, maxWait: 0, trailing: !1 }, Ht = { "À": "A", "Á": "A", "Â": "A", "Ã": "A", "Ä": "A", "Å": "A", "à": "a", "á": "a", "â": "a", "ã": "a", "ä": "a", "å": "a", "Ç": "C", "ç": "c", "Ð": "D", "ð": "d", "È": "E", "É": "E", "Ê": "E", "Ë": "E", "è": "e", "é": "e", "ê": "e", "ë": "e", "Ì": "I", "Í": "I", "Î": "I", "Ï": "I", "ì": "i", "í": "i", "î": "i", "ï": "i", "Ñ": "N", "ñ": "n", "Ò": "O", "Ó": "O", "Ô": "O", "Õ": "O", "Ö": "O", "Ø": "O", "ò": "o", "ó": "o", "ô": "o", "õ": "o", "ö": "o", "ø": "o", "Ù": "U", "Ú": "U", "Û": "U", "Ü": "U", "ù": "u", "ú": "u", "û": "u", "ü": "u", "Ý": "Y", "ý": "y", "ÿ": "y", "Æ": "Ae", "æ": "ae", "Þ": "Th", "þ": "th", "ß": "ss" }, Zt = { "&": "&amp;", "<": "&lt;", ">": "&gt;", '"': "&quot;", "'": "&#39;", "`": "&#96;" }, Gt = { "&amp;": "&", "&lt;": "<", "&gt;": ">", "&quot;": '"', "&#39;": "'", "&#96;": "`" }, qt = { "function": !0, object: !0 }, Yt = { "\\": "\\", "'": "'", "\n": "n", "\r": "r", "\u2028": "u2028", "\u2029": "u2029" }, Kt = qt[typeof window] && window !== (this && this.window) ? window : this, Xt = qt[typeof e] && e && !e.nodeType && e, Vt = qt[typeof t] && t && !t.nodeType && t, $t = Xt && Vt && "object" == typeof i && i; !$t || $t.global !== $t && $t.window !== $t && $t.self !== $t || (Kt = $t); var Jt = (Vt && Vt.exports === Xt && Xt, E()); Kt._ = Jt, r = function () { return Jt }.call(e, n, e, t), !(r !== C && (t.exports = r))
}).call(this)
}).call(e, n(15)(t), function () { return this }())
}, function (t, e, n) { (function (e) { (function () { var r, i, o, a = function (t, e) { return function () { return t.apply(e, arguments) } }; o = n(45), i = function () { function t(t, e, n) { this.document = t, this.id = e, this.data = null != n ? n : {}, this.finalize = a(this.finalize, this), this.gen = 0, this.deflate = null, this.compress = this.document.compress && !this.data.Filter, this.uncompressedLength = 0, this.chunks = [] } return t.prototype.initDeflate = function () { return this.data.Filter = "FlateDecode", this.deflate = o.createDeflate(), this.deflate.on("data", function (t) { return function (e) { return t.chunks.push(e), t.data.Length += e.length } }(this)), this.deflate.on("end", this.finalize) }, t.prototype.write = function (t) { var n; return e.isBuffer(t) || (t = new e(t + "\n", "binary")), this.uncompressedLength += t.length, null == (n = this.data).Length && (n.Length = 0), this.compress ? (this.deflate || this.initDeflate(), this.deflate.write(t)) : (this.chunks.push(t), this.data.Length += t.length) }, t.prototype.end = function (t) { return ("string" == typeof t || e.isBuffer(t)) && this.write(t), this.deflate ? this.deflate.end() : this.finalize() }, t.prototype.finalize = function () { var t, e, n, i; if (this.offset = this.document._offset, this.document._write("" + this.id + " " + this.gen + " obj"), this.document._write(r.convert(this.data)), this.chunks.length) { for (this.document._write("stream"), i = this.chunks, e = 0, n = i.length; n > e; e++)t = i[e], this.document._write(t); this.chunks.length = 0, this.document._write("\nendstream") } return this.document._write("endobj"), this.document._refEnd(this) }, t.prototype.toString = function () { return "" + this.id + " " + this.gen + " R" }, t }(), t.exports = i, r = n(32) }).call(this) }).call(e, n(4).Buffer) }, function (t, e, n) { t.exports = function () { throw new Error("define cannot be used indirect") } }, function (t, e, n) { (function (e) { t.exports = e }).call(e, {}) }, function (t, e, n) { t.exports = function (t) { return t.webpackPolyfill || (t.deprecate = function () { }, t.paths = [], t.children = [], t.webpackPolyfill = 1), t } }, function (t, e, n) { "use strict"; function r(t, e, n) { this.MAX_CHAR_TYPES = 92, this.pdfkitDoc = t, this.path = e, this.pdfFonts = [], this.charCatalogue = [], this.name = n, this.__defineGetter__("ascender", function () { var t = this.getFont(0); return t.ascender }), this.__defineGetter__("decender", function () { var t = this.getFont(0); return t.decender }) } var i = n(11); r.prototype.getFont = function (t) { if (!this.pdfFonts[t]) { var e = this.name + t; this.postscriptName && delete this.pdfkitDoc._fontFamilies[this.postscriptName], this.pdfFonts[t] = this.pdfkitDoc.font(this.path, e)._font, this.postscriptName || (this.postscriptName = this.pdfFonts[t].name) } return this.pdfFonts[t] }, r.prototype.widthOfString = function () { var t = this.getFont(0); return t.widthOfString.apply(t, arguments) }, r.prototype.lineHeight = function () { var t = this.getFont(0); return t.lineHeight.apply(t, arguments) }, r.prototype.ref = function () { var t = this.getFont(0); return t.ref.apply(t, arguments) }; var o = function (t) { return t.charCodeAt(0) }; r.prototype.encode = function (t) { var e = this, n = i.chain(t.split("")).map(o).uniq().value(); if (n.length > e.MAX_CHAR_TYPES) throw new Error("Inline has more than " + e.MAX_CHAR_TYPES + ": " + t + " different character types and therefore cannot be properly embedded into pdf."); var r = function (t) { return i.uniq(t.concat(n)).length <= e.MAX_CHAR_TYPES }, a = i.findIndex(e.charCatalogue, r); 0 > a && (a = e.charCatalogue.length, e.charCatalogue[a] = []); var s = this.getFont(a); s.use(t), i.each(n, function (t) { i.includes(e.charCatalogue[a], t) || e.charCatalogue[a].push(t) }); var h = i.map(s.encode(t), function (t) { return t.charCodeAt(0).toString(16) }).join(""); return { encodedText: h, fontId: s.id } }, t.exports = r }, function (t, e, n) { (function (e) { (function () { var r, i, o, a, s; s = n(10), r = n(34), i = n(35),
"use strict"; function r(t) { this.tableNode = t } var i = n(22); r.prototype.beginTable = function (t) { function e() { var t = 0; return r.table.widths.forEach(function (e) { t += e._calcWidth }), t } function n() { var t = [], e = 0, n = 0; t.push({ left: 0, rowSpan: 0 }); for (var r = 0, i = a.tableNode.table.body[0].length; i > r; r++) { var o = a.layout.paddingLeft(r, a.tableNode) + a.layout.paddingRight(r, a.tableNode), s = a.layout.vLineWidth(r, a.tableNode); n = o + s + a.tableNode.table.widths[r]._calcWidth, t[t.length - 1].width = n, e += n, t.push({ left: e, rowSpan: 0, width: 0 }) } return t } var r, o, a = this; r = this.tableNode, this.offsets = r._offsets, this.layout = r._layout, o = t.context().availableWidth - this.offsets.total, i.buildColumnWidths(r.table.widths, o), this.tableWidth = r._offsets.total + e(), this.rowSpanData = n(), this.cleanUpRepeatables = !1, this.headerRows = r.table.headerRows || 0, this.rowsWithoutPageBreak = this.headerRows + (r.table.keepWithHeaderRows || 0), this.dontBreakRows = r.table.dontBreakRows || !1, this.rowsWithoutPageBreak && t.beginUnbreakableBlock(), this.drawHorizontalLine(0, t) }, r.prototype.onRowBreak = function (t, e) { var n = this; return function () { var t = n.rowPaddingTop + (n.headerRows ? 0 : n.topLineWidth); e.context().moveDown(t) } }, r.prototype.beginRow = function (t, e) { this.topLineWidth = this.layout.hLineWidth(t, this.tableNode), this.rowPaddingTop = this.layout.paddingTop(t, this.tableNode), this.bottomLineWidth = this.layout.hLineWidth(t + 1, this.tableNode), this.rowPaddingBottom = this.layout.paddingBottom(t, this.tableNode), this.rowCallback = this.onRowBreak(t, e), e.tracker.startTracking("pageChanged", this.rowCallback), this.dontBreakRows && e.beginUnbreakableBlock(), this.rowTopY = e.context().y, this.reservedAtBottom = this.bottomLineWidth + this.rowPaddingBottom, e.context().availableHeight -= this.reservedAtBottom, e.context().moveDown(this.rowPaddingTop) }, r.prototype.drawHorizontalLine = function (t, e, n) { var r = this.layout.hLineWidth(t, this.tableNode); if (r) { for (var i = r / 2, o = null, a = 0, s = this.rowSpanData.length; s > a; a++) { var h = this.rowSpanData[a], u = !h.rowSpan; !o && u && (o = { left: h.left, width: 0 }), u && (o.width += h.width || 0); var l = (n || 0) + i; u && a !== s - 1 || o && (e.addVector({ type: "line", x1: o.left, x2: o.left + o.width, y1: l, y2: l, lineWidth: r, lineColor: "function" == typeof this.layout.hLineColor ? this.layout.hLineColor(t, this.tableNode) : this.layout.hLineColor }, !1, n), o = null) } e.context().moveDown(r) } }, r.prototype.drawVerticalLine = function (t, e, n, r, i) { var o = this.layout.vLineWidth(r, this.tableNode); 0 !== o && i.addVector({ type: "line", x1: t + o / 2, x2: t + o / 2, y1: e, y2: n, lineWidth: o, lineColor: "function" == typeof this.layout.vLineColor ? this.layout.vLineColor(r, this.tableNode) : this.layout.vLineColor }, !1, !0) }, r.prototype.endTable = function (t) { this.cleanUpRepeatables && t.popFromRepeatables() }, r.prototype.endRow = function (t, e, n) {
function r() { for (var e = [], n = 0, r = 0, i = a.tableNode.table.body[t].length; i > r; r++) { if (!n) { e.push({ x: a.rowSpanData[r].left, index: r }); var o = a.tableNode.table.body[t][r]; n = o._colSpan || o.colSpan || 0 } n > 0 && n-- } return e.push({ x: a.rowSpanData[a.rowSpanData.length - 1].left, index: a.rowSpanData.length - 1 }), e } var i, o, a = this; e.tracker.stopTracking("pageChanged", this.rowCallback), e.context().moveDown(this.layout.paddingBottom(t, this.tableNode)), e.context().availableHeight += this.reservedAtBottom; var s = e.context().page, h = e.context().y, u = r(), l = [], c = n && n.length > 0; if (l.push({ y0: this.rowTopY, page: c ? n[0].prevPage : s }), c) for (o = 0, i = n.length; i > o; o++) { var f = n[o]; l[l.length - 1].y1 = f.prevY, l.push({ y0: f.y, page: f.prevPage + 1 }) } l[l.length - 1].y1 = h; for (var d = l[0].y1 - l[0].y0 === this.rowPaddingTop, p = d ? 1 : 0, g = l.length; g > p; p++) {
var v = p < l.length - 1, m = p > 0 && !this.headerRows, y = m ? 0 : this.topLineWidth, w = l[p].y0, _ = l[p].y1; for (v && (_ += this.rowPaddingBottom), e.context().page != l[p].page && (e.context().page = l[p].page, this.reservedAtBottom = 0), o = 0, i = u.length; i > o; o++)if (this.drawVerticalLine(u[o].x, w - y, _ + this.bottomLineWidth, u[o].index, e), i - 1 > o) { var b = u[o].index, x = this.tableNode.table.body[t][b].fillColor; if (x) { var S = this.layout.vLineWidth(b, this.tableNode), k = u[o].x + S, E = w - y; e.addVector({ type: "rect", x: k, y: E, w: u[o + 1].x - k, h: _ + this.bottomLineWidth - E, lineWidth: 0, color: x }, !1, !0, 0) } } v && this.layout.hLineWhenBroken !== !1 && this.drawHorizontalLine(t + 1, e, _), m && this.layout.hLineWhenBroken !== !1 && this.drawHorizontalLine(t, e, w);
} e.context().page = s, e.context().y = h; var C = this.tableNode.table.body[t]; for (o = 0, i = C.length; i > o; o++) { if (C[o].rowSpan && (this.rowSpanData[o].rowSpan = C[o].rowSpan, C[o].colSpan && C[o].colSpan > 1)) for (var I = 1; I < C[o].rowSpan; I++)this.tableNode.table.body[t + I][o]._colSpan = C[o].colSpan; this.rowSpanData[o].rowSpan > 0 && this.rowSpanData[o].rowSpan-- } this.drawHorizontalLine(t + 1, e), this.headerRows && t === this.headerRows - 1 && (this.headerRepeatable = e.currentBlockToRepeatable()), this.dontBreakRows && e.tracker.auto("pageChanged", function () { a.drawHorizontalLine(t, e) }, function () { e.commitUnbreakableBlock(), a.drawHorizontalLine(t, e) }), !this.headerRepeatable || t !== this.rowsWithoutPageBreak - 1 && t !== this.tableNode.table.body.length - 1 || (e.commitUnbreakableBlock(), e.pushToRepeatables(this.headerRepeatable), this.cleanUpRepeatables = !0, this.headerRepeatable = null)
}, t.exports = r
}, function (t, e, n) { "use strict"; function r(t) { this.maxWidth = t, this.leadingCut = 0, this.trailingCut = 0, this.inlineWidths = 0, this.inlines = [] } r.prototype.getAscenderHeight = function () { var t = 0; return this.inlines.forEach(function (e) { t = Math.max(t, e.font.ascender / 1e3 * e.fontSize) }), t }, r.prototype.hasEnoughSpaceForInline = function (t) { return 0 === this.inlines.length ? !0 : this.newLineForced ? !1 : this.inlineWidths + t.width - this.leadingCut - (t.trailingCut || 0) <= this.maxWidth }, r.prototype.addInline = function (t) { 0 === this.inlines.length && (this.leadingCut = t.leadingCut || 0), this.trailingCut = t.trailingCut || 0, t.x = this.inlineWidths - this.leadingCut, this.inlines.push(t), this.inlineWidths += t.width, t.lineEnd && (this.newLineForced = !0) }, r.prototype.getWidth = function () { return this.inlineWidths - this.leadingCut - this.trailingCut }, r.prototype.getHeight = function () { var t = 0; return this.inlines.forEach(function (e) { t = Math.max(t, e.height || 0) }), t }, t.exports = r }, function (t, e, n) { "use strict"; function r() { for (var t = {}, e = 0, n = arguments.length; n > e; e++) { var r = arguments[e]; if (r) for (var i in r) r.hasOwnProperty(i) && (t[i] = r[i]) } return t } function i(t, e, n) { switch (t.type) { case "ellipse": case "rect": t.x += e, t.y += n; break; case "line": t.x1 += e, t.x2 += e, t.y1 += n, t.y2 += n; break; case "polyline": for (var r = 0, i = t.points.length; i > r; r++)t.points[r].x += e, t.points[r].y += n } } function o(t, e) { return "font" === t ? "font" : e } function a(t) { var e = {}; return t && "[object Function]" === e.toString.call(t) } t.exports = { pack: r, fontStringify: o, offsetVector: i, isFunction: a } }, function (t, e, n) { "use strict"; function r(t) { this.fontProvider = t } function i(t) { var e = []; t = t.replace(" ", " "); for (var n = t.match(l), r = 0, i = n.length; i - 1 > r; r++) { var o = n[r], a = 0 === o.length; if (a) { var s = 0 === e.length || e[e.length - 1].lineEnd; s ? e.push({ text: "", lineEnd: !0 }) : e[e.length - 1].lineEnd = !0 } else e.push({ text: o }) } return e } function o(t, e) { e = e || {}, t = t || {}; for (var n in t) "text" != n && t.hasOwnProperty(n) && (e[n] = t[n]); return e } function a(t) { var e = []; ("string" == typeof t || t instanceof String) && (t = [t]); for (var n = 0, r = t.length; r > n; n++) { var a, s = t[n], h = null; "string" == typeof s || s instanceof String ? a = i(s) : (a = i(s.text), h = o(s)); for (var u = 0, l = a.length; l > u; u++) { var c = { text: a[u].text }; a[u].lineEnd && (c.lineEnd = !0), o(h, c), e.push(c) } } return e } function s(t) { return t.replace(/[^A-Za-z0-9\[\] ]/g, function (t) { return d[t] || t }) } function h(t, e, n, r) { var i; return void 0 !== t[n] && null !== t[n] ? t[n] : e ? (e.auto(t, function () { i = e.getProperty(n) }), null !== i && void 0 !== i ? i : r) : r } function u(t, e, n) { var r = a(e); return r.forEach(function (e) { var r = h(e, n, "font", "Roboto"), i = h(e, n, "fontSize", 12), o = h(e, n, "bold", !1), a = h(e, n, "italics", !1), u = h(e, n, "color", "black"), l = h(e, n, "decoration", null), d = h(e, n, "decorationColor", null), p = h(e, n, "decorationStyle", null), g = h(e, n, "background", null), v = h(e, n, "lineHeight", 1), m = t.provideFont(r, o, a); e.width = m.widthOfString(s(e.text), i), e.height = m.lineHeight(i) * v; var y = e.text.match(c), w = e.text.match(f); e.leadingCut = y ? m.widthOfString(y[0], i) : 0, e.trailingCut = w ? m.widthOfString(w[0], i) : 0, e.alignment = h(e, n, "alignment", "left"), e.font = m, e.fontSize = i, e.color = u, e.decoration = l, e.decorationColor = d, e.decorationStyle = p, e.background = g }), r } var l = /([^ ,\/!.?:;\-\n]*[ ,\/!.?:;\-]*)|\n/g, c = /^(\s)+/g, f = /(\s)+$/g; r.prototype.buildInlines = function (t, e) { function n(t) { return Math.max(0, t.width - t.leadingCut - t.trailingCut) } var r, i = u(this.fontProvider, t, e), o = 0, a = 0; return i.forEach(function (t) { o = Math.max(o, t.width - t.leadingCut - t.trailingCut), r || (r = { wid
(function () {
var e; e = function () {
function t(t, r) {
var i; this.document = t, null == r && (r = {}), this.size = r.size || "letter", this.layout = r.layout || "portrait", this.margins = "number" == typeof r.margin ? { top: r.margin, left: r.margin, bottom: r.margin, right: r.margin } : r.margins || e, i = Array.isArray(this.size) ? this.size : n[this.size.toUpperCase()], this.width = i["portrait" === this.layout ? 0 : 1], this.height = i["portrait" === this.layout ? 1 : 0], this.content = this.document.ref(), this.resources = this.document.ref({ ProcSet: ["PDF", "Text", "ImageB", "ImageC", "ImageI"] }), Object.defineProperties(this, {
fonts: {
get: function (t) {
return function () {
var e; return null != (e = t.resources.data).Font ? e.Font : e.Font = {}
}
}(this)
}, xobjects: { get: function (t) { return function () { var e; return null != (e = t.resources.data).XObject ? e.XObject : e.XObject = {} } }(this) }, ext_gstates: { get: function (t) { return function () { var e; return null != (e = t.resources.data).ExtGState ? e.ExtGState : e.ExtGState = {} } }(this) }, patterns: { get: function (t) { return function () { var e; return null != (e = t.resources.data).Pattern ? e.Pattern : e.Pattern = {} } }(this) }, annotations: { get: function (t) { return function () { var e; return null != (e = t.dictionary.data).Annots ? e.Annots : e.Annots = [] } }(this) }
}), this.dictionary = this.document.ref({ Type: "Page", Parent: this.document._root.data.Pages, MediaBox: [0, 0, this.width, this.height], Contents: this.content, Resources: this.resources })
} var e, n; return t.prototype.maxY = function () { return this.height - this.margins.bottom }, t.prototype.write = function (t) { return this.content.write(t) }, t.prototype.end = function () { return this.dictionary.end(), this.resources.end(), this.content.end() }, e = { top: 72, left: 72, bottom: 72, right: 72 }, n = { "4A0": [4767.87, 6740.79], "2A0": [3370.39, 4767.87], A0: [2383.94, 3370.39], A1: [1683.78, 2383.94], A2: [1190.55, 1683.78], A3: [841.89, 1190.55], A4: [595.28, 841.89], A5: [419.53, 595.28], A6: [297.64, 419.53], A7: [209.76, 297.64], A8: [147.4, 209.76], A9: [104.88, 147.4], A10: [73.7, 104.88], B0: [2834.65, 4008.19], B1: [2004.09, 2834.65], B2: [1417.32, 2004.09], B3: [1000.63, 1417.32], B4: [708.66, 1000.63], B5: [498.9, 708.66], B6: [354.33, 498.9], B7: [249.45, 354.33], B8: [175.75, 249.45], B9: [124.72, 175.75], B10: [87.87, 124.72], C0: [2599.37, 3676.54], C1: [1836.85, 2599.37], C2: [1298.27, 1836.85], C3: [918.43, 1298.27], C4: [649.13, 918.43], C5: [459.21, 649.13], C6: [323.15, 459.21], C7: [229.61, 323.15], C8: [161.57, 229.61], C9: [113.39, 161.57], C10: [79.37, 113.39], RA0: [2437.8, 3458.27], RA1: [1729.13, 2437.8], RA2: [1218.9, 1729.13], RA3: [864.57, 1218.9], RA4: [609.45, 864.57], SRA0: [2551.18, 3628.35], SRA1: [1814.17, 2551.18], SRA2: [1275.59, 1814.17], SRA3: [907.09, 1275.59], SRA4: [637.8, 907.09], EXECUTIVE: [521.86, 756], FOLIO: [612, 936], LEGAL: [612, 1008], LETTER: [612, 792], TABLOID: [792, 1224] }, t
}(), t.exports = e
}).call(this)
}, function (t, e, n) { (function () { var e, r, i = [].slice; r = n(47), e = 4 * ((Math.sqrt(2) - 1) / 3), t.exports = { initVector: function () { return this._ctm = [1, 0, 0, 1, 0, 0], this._ctmStack = [] }, save: function () { return this._ctmStack.push(this._ctm.slice()), this.addContent("q") }, restore: function () { return this._ctm = this._ctmStack.pop() || [1, 0, 0, 1, 0, 0], this.addContent("Q") }, closePath: function () { return this.addContent("h") }, lineWidth: function (t) { return this.addContent("" + t + " w") }, _CAP_STYLES: { BUTT: 0, ROUND: 1, SQUARE: 2 }, lineCap: function (t) { return "string" == typeof t && (t = this._CAP_STYLES[t.toUpperCase()]), this.addContent("" + t + " J") }, _JOIN_STYLES: { MITER: 0, ROUND: 1, BEVEL: 2 }, lineJoin: function (t) { return "string" == typeof t && (t = this._JOIN_STYLES[t.toUpperCase()]), this.addContent("" + t + " j") }, miterLimit: function (t) { return this.addContent("" + t + " M") }, dash: function (t, e) { var n, r, i; return null == e && (e = {}), null == t ? this : (r = null != (i = e.space) ? i : t, n = e.phase || 0, this.addContent("[" + t + " " + r + "] " + n + " d")) }, undash: function () { return this.addContent("[] 0 d") }, moveTo: function (t, e) { return this.addContent("" + t + " " + e + " m") }, lineTo: function (t, e) { return this.addContent("" + t + " " + e + " l") }, bezierCurveTo: function (t, e, n, r, i, o) { return this.addContent("" + t + " " + e + " " + n + " " + r + " " + i + " " + o + " c") }, quadraticCurveTo: function (t, e, n, r) { return this.addContent("" + t + " " + e + " " + n + " " + r + " v") }, rect: function (t, e, n, r) { return this.addContent("" + t + " " + e + " " + n + " " + r + " re") }, roundedRect: function (t, e, n, r, i) { return null == i && (i = 0), this.moveTo(t + i, e), this.lineTo(t + n - i, e), this.quadraticCurveTo(t + n, e, t + n, e + i), this.lineTo(t + n, e + r - i), this.quadraticCurveTo(t + n, e + r, t + n - i, e + r), this.lineTo(t + i, e + r), this.quadraticCurveTo(t, e + r, t, e + r - i), this.lineTo(t, e + i), this.quadraticCurveTo(t, e, t + i, e) }, ellipse: function (t, n, r, i) { var o, a, s, h, u, l; return null == i && (i = r), t -= r, n -= i, o = r * e, a = i * e, s = t + 2 * r, u = n + 2 * i, h = t + r, l = n + i, this.moveTo(t, l), this.bezierCurveTo(t, l - a, h - o, n, h, n), this.bezierCurveTo(h + o, n, s, l - a, s, l), this.bezierCurveTo(s, l + a, h + o, u, h, u), this.bezierCurveTo(h - o, u, t, l + a, t, l), this.closePath() }, circle: function (t, e, n) { return this.ellipse(t, e, n) }, polygon: function () { var t, e, n, r; for (e = 1 <= arguments.length ? i.call(arguments, 0) : [], this.moveTo.apply(this, e.shift()), n = 0, r = e.length; r > n; n++)t = e[n], this.lineTo.apply(this, t); return this.closePath() }, path: function (t) { return r.apply(this, t), this }, _windingRule: function (t) { return /even-?odd/.test(t) ? "*" : "" }, fill: function (t, e) { return /(even-?odd)|(non-?zero)/.test(t) && (e = t, t = null), t && this.fillColor(t), this.addContent("f" + this._windingRule(e)) }, stroke: function (t) { return t && this.strokeColor(t), this.addContent("S") }, fillAndStroke: function (t, e, n) { var r; return null == e && (e = t), r = /(even-?odd)|(non-?zero)/, r.test(t) && (n = t, t = null), r.test(e) && (n = e, e = t), t && (this.fillColor(t), this.strokeColor(e)), this.addContent("B" + this._windingRule(n)) }, clip: function (t) { return this.addContent("W" + this._windingRule(t) + " n") }, transform: function (t, e, n, r, i, o) { var a, s, h, u, l, c, f, d, p; return a = this._ctm, s = a[0], h = a[1], u = a[2], l = a[3], c = a[4], f = a[5], a[0] = s * t + u * e, a[1] = h * t + l * e, a[2] = s * n + u * r, a[3] = h * n + l * r, a[4] = s * i + u * o + c, a[5] = h * i + l * o + f, p = function () { var a, s, h, u; for (h = [t, e, n, r, i, o], u = [], a = 0, s = h.length; s > a; a++)d = h[a], u.push(+d.toFixed(5)); return u }().join(" "), this.addContent("" + p + " cm") }, translate: function (t, e) { return this.transform(1, 0, 0, 1, t, e) }, rotate: function (t, e) { var n,
(function () {
var e, r, i, o = {}.hasOwnProperty, a = function (t, e) {
function n() { this.constructor = t } for (var r in e) o.call(e, r) && (t[r] = e[r]); return n.prototype = e.prototype, t.prototype = new n, t.__super__ = e.prototype,
t
}; e = n(54).EventEmitter, r = n(66), i = function (t) { function e(t, e) { var n; this.document = t, this.indent = e.indent || 0, this.characterSpacing = e.characterSpacing || 0, this.wordSpacing = 0 === e.wordSpacing, this.columns = e.columns || 1, this.columnGap = null != (n = e.columnGap) ? n : 18, this.lineWidth = (e.width - this.columnGap * (this.columns - 1)) / this.columns, this.spaceLeft = this.lineWidth, this.startX = this.document.x, this.startY = this.document.y, this.column = 1, this.ellipsis = e.ellipsis, this.continuedX = 0, null != e.height ? (this.height = e.height, this.maxY = this.startY + e.height) : this.maxY = this.document.page.maxY(), this.on("firstLine", function (t) { return function (e) { var n; return n = t.continuedX || t.indent, t.document.x += n, t.lineWidth -= n, t.once("line", function () { return t.document.x -= n, t.lineWidth += n, e.continued && !t.continuedX && (t.continuedX = t.indent), e.continued ? void 0 : t.continuedX = 0 }) } }(this)), this.on("lastLine", function (t) { return function (e) { var n; return n = e.align, "justify" === n && (e.align = "left"), t.lastLine = !0, t.once("line", function () { return t.document.y += e.paragraphGap || 0, e.align = n, t.lastLine = !1 }) } }(this)) } return a(e, t), e.prototype.wordWidth = function (t) { return this.document.widthOfString(t, this) + this.characterSpacing + this.wordSpacing }, e.prototype.eachWord = function (t, e) { var n, i, o, a, s, h, u, l, c, f; for (i = new r(t), s = null, f = {}; n = i.nextBreak();) { if (c = t.slice((null != s ? s.position : void 0) || 0, n.position), l = null != f[c] ? f[c] : f[c] = this.wordWidth(c), l > this.lineWidth + this.continuedX) for (h = s, o = {}; c.length;) { for (a = c.length; l > this.spaceLeft;)l = this.wordWidth(c.slice(0, --a)); if (o.required = a < c.length, u = e(c.slice(0, a), l, o, h), h = { required: !1 }, c = c.slice(a), l = this.wordWidth(c), u === !1) break } else u = e(c, l, n, s); if (u === !1) break; s = n } }, e.prototype.wrap = function (t, e) { var n, r, i, o, a, s, h; return null != e.indent && (this.indent = e.indent), null != e.characterSpacing && (this.characterSpacing = e.characterSpacing), null != e.wordSpacing && (this.wordSpacing = e.wordSpacing), null != e.ellipsis && (this.ellipsis = e.ellipsis), o = this.document.y + this.document.currentLineHeight(!0), (this.document.y > this.maxY || o > this.maxY) && this.nextSection(), n = "", a = 0, s = 0, i = 0, h = this.document.y, r = function (t) { return function () { return e.textWidth = a + t.wordSpacing * (s - 1), e.wordCount = s, e.lineWidth = t.lineWidth, h = t.document.y, t.emit("line", n, e, t), i++ } }(this), this.emit("sectionStart", e, this), this.eachWord(t, function (t) { return function (i, o, h, u) { var l, c; if ((null == u || u.required) && (t.emit("firstLine", e, t), t.spaceLeft = t.lineWidth), o <= t.spaceLeft && (n += i, a += o, s++), h.required || o > t.spaceLeft) { if (h.required && t.emit("lastLine", e, t), l = t.document.currentLineHeight(!0), null != t.height && t.ellipsis && t.document.y + 2 * l > t.maxY && t.column >= t.columns) { for (t.ellipsis === !0 && (t.ellipsis = "…"), n = n.replace(/\s+$/, ""), a = t.wordWidth(n + t.ellipsis); a > t.lineWidth;)n = n.slice(0, -1).replace(/\s+$/, ""), a = t.wordWidth(n + t.ellipsis); n += t.ellipsis } return r(), t.document.y + l > t.maxY && (c = t.nextSection(), !c) ? (s = 0, n = "", !1) : h.required ? (o > t.spaceLeft && (n = i, a = o, s = 1, r()), t.spaceLeft = t.lineWidth, n = "", a = 0, s = 0) : (t.spaceLeft = t.lineWidth - o, n = i, a = o, s = 1) } return t.spaceLeft -= o } }(this)), s > 0 && (this.emit("lastLine", e, this), r()), this.emit("sectionEnd", e, this), e.continued === !0 ? (i > 1 && (this.continuedX = 0), this.continuedX += e.textWidth, this.document.y = h) : this.document.x = this.startX }, e.prototype.nextSection = function (t) { var e; if (this.emit("sectionEnd", t, this), ++this.column > this.columns) { if (null != this.height) return !1; this.document.addPage(), this.column = 1, this.startY = this.document.page.margin
}).call(this)
}, function (t, e, n) { (function () { var e, n, r, i = {}.hasOwnProperty, o = function (t, e) { function n() { this.constructor = t } for (var r in e) i.call(e, r) && (t[r] = e[r]); return n.prototype = e.prototype, t.prototype = new n, t.__super__ = e.prototype, t }; e = function () { function t(t) { this.doc = t, this.stops = [], this.embedded = !1, this.transform = [1, 0, 0, 1, 0, 0], this._colorSpace = "DeviceRGB" } return t.prototype.stop = function (t, e, n) { return null == n && (n = 1), n = Math.max(0, Math.min(1, n)), this.stops.push([t, this.doc._normalizeColor(e), n]), this }, t.prototype.embed = function () { var t, e, n, r, i, o, a, s, h, u, l, c, f, d, p, g, v, m, y, w, _, b, x, S, k, E, C, I, A, L, R, B, T, M, O, D; if (!this.embedded && 0 !== this.stops.length) { for (this.embedded = !0, l = this.stops[this.stops.length - 1], l[0] < 1 && this.stops.push([1, l[1], l[2]]), t = [], r = [], A = [], u = R = 0, M = this.stops.length - 1; M >= 0 ? M > R : R > M; u = M >= 0 ? ++R : --R)r.push(0, 1), u + 2 !== this.stops.length && t.push(this.stops[u + 1][0]), i = this.doc.ref({ FunctionType: 2, Domain: [0, 1], C0: this.stops[u + 0][1], C1: this.stops[u + 1][1], N: 1 }), A.push(i), i.end(); if (1 === A.length ? i = A[0] : (i = this.doc.ref({ FunctionType: 3, Domain: [0, 1], Functions: A, Bounds: t, Encode: r }), i.end()), this.id = "Sh" + ++this.doc._gradCount, c = this.doc._ctm.slice(), f = c[0], d = c[1], v = c[2], w = c[3], _ = c[4], b = c[5], O = this.transform, p = O[0], g = O[1], m = O[2], y = O[3], e = O[4], n = O[5], c[0] = f * p + v * g, c[1] = d * p + w * g, c[2] = f * m + v * y, c[3] = d * m + w * y, c[4] = f * e + v * n + _, c[5] = d * e + w * n + b, C = this.shader(i), C.end(), S = this.doc.ref({ Type: "Pattern", PatternType: 2, Shading: C, Matrix: function () { var t, e, n; for (n = [], t = 0, e = c.length; e > t; t++)L = c[t], n.push(+L.toFixed(5)); return n }() }), this.doc.page.patterns[this.id] = S, S.end(), this.stops.some(function (t) { return t[2] < 1 })) { for (a = this.opacityGradient(), a._colorSpace = "DeviceGray", D = this.stops, B = 0, T = D.length; T > B; B++)I = D[B], a.stop(I[0], [I[2]]); a = a.embed(), s = this.doc.ref({ Type: "Group", S: "Transparency", CS: "DeviceGray" }), s.end(), k = this.doc.ref({ ProcSet: ["PDF", "Text", "ImageB", "ImageC", "ImageI"], Shading: { Sh1: a.data.Shading } }), k.end(), o = this.doc.ref({ Type: "XObject", Subtype: "Form", FormType: 1, BBox: [0, 0, this.doc.page.width, this.doc.page.height], Group: s, Resources: k }), o.end("/Sh1 sh"), E = this.doc.ref({ Type: "Mask", S: "Luminosity", G: o }), E.end(), h = this.doc.ref({ Type: "ExtGState", SMask: E }), this.opacity_id = ++this.doc._opacityCount, x = "Gs" + this.opacity_id, this.doc.page.ext_gstates[x] = h, h.end() } return S } }, t.prototype.apply = function (t) { return this.embedded || this.embed(), this.doc.addContent("/" + this.id + " " + t), this.opacity_id ? (this.doc.addContent("/Gs" + this.opacity_id + " gs"), this.doc._sMasked = !0) : void 0 }, t }(), n = function (t) { function e(t, n, r, i, o) { this.doc = t, this.x1 = n, this.y1 = r, this.x2 = i, this.y2 = o, e.__super__.constructor.apply(this, arguments) } return o(e, t), e.prototype.shader = function (t) { return this.doc.ref({ ShadingType: 2, ColorSpace: this._colorSpace, Coords: [this.x1, this.y1, this.x2, this.y2], Function: t, Extend: [!0, !0] }) }, e.prototype.opacityGradient = function () { return new e(this.doc, this.x1, this.y1, this.x2, this.y2) }, e }(e), r = function (t) { function e(t, n, r, i, o, a, s) { this.doc = t, this.x1 = n, this.y1 = r, this.r1 = i, this.x2 = o, this.y2 = a, this.r2 = s, e.__super__.constructor.apply(this, arguments) } return o(e, t), e.prototype.shader = function (t) { return this.doc.ref({ ShadingType: 3, ColorSpace: this._colorSpace, Coords: [this.x1, this.y1, this.r1, this.x2, this.y2, this.r2], Function: t, Extend: [!0, !0] }) }, e.prototype.opacityGradient = function () { return new e(this.doc, this.x1, this.y1, this.r1, this.x2, this.y2, this.r2) }, e }(e), t.exports = { PDFGradient: e, PDFLin
(function (t, r) {
function i(t, n) { var r = { seen: [], stylize: a }; return arguments.length >= 3 && (r.depth = arguments[2]), arguments.length >= 4 && (r.colors = arguments[3]), g(n) ? r.showHidden = n : n && e._extend(r, n), b(r.showHidden) && (r.showHidden = !1), b(r.depth) && (r.depth = 2), b(r.colors) && (r.colors = !1), b(r.customInspect) && (r.customInspect = !0), r.colors && (r.stylize = o), h(r, t, r.depth) } function o(t, e) { var n = i.styles[e]; return n ? "[" + i.colors[n][0] + "m" + t + "[" + i.colors[n][1] + "m" : t } function a(t, e) { return t } function s(t) { var e = {}; return t.forEach(function (t, n) { e[t] = !0 }), e } function h(t, n, r) { if (t.customInspect && n && C(n.inspect) && n.inspect !== e.inspect && (!n.constructor || n.constructor.prototype !== n)) { var i = n.inspect(r, t); return w(i) || (i = h(t, i, r)), i } var o = u(t, n); if (o) return o; var a = Object.keys(n), g = s(a); if (t.showHidden && (a = Object.getOwnPropertyNames(n)), E(n) && (a.indexOf("message") >= 0 || a.indexOf("description") >= 0)) return l(n); if (0 === a.length) { if (C(n)) { var v = n.name ? ": " + n.name : ""; return t.stylize("[Function" + v + "]", "special") } if (x(n)) return t.stylize(RegExp.prototype.toString.call(n), "regexp"); if (k(n)) return t.stylize(Date.prototype.toString.call(n), "date"); if (E(n)) return l(n) } var m = "", y = !1, _ = ["{", "}"]; if (p(n) && (y = !0, _ = ["[", "]"]), C(n)) { var b = n.name ? ": " + n.name : ""; m = " [Function" + b + "]" } if (x(n) && (m = " " + RegExp.prototype.toString.call(n)), k(n) && (m = " " + Date.prototype.toUTCString.call(n)), E(n) && (m = " " + l(n)), 0 === a.length && (!y || 0 == n.length)) return _[0] + m + _[1]; if (0 > r) return x(n) ? t.stylize(RegExp.prototype.toString.call(n), "regexp") : t.stylize("[Object]", "special"); t.seen.push(n); var S; return S = y ? c(t, n, r, g, a) : a.map(function (e) { return f(t, n, r, g, e, y) }), t.seen.pop(), d(S, m, _) } function u(t, e) { if (b(e)) return t.stylize("undefined", "undefined"); if (w(e)) { var n = "'" + JSON.stringify(e).replace(/^"|"$/g, "").replace(/'/g, "\\'").replace(/\\"/g, '"') + "'"; return t.stylize(n, "string") } return y(e) ? t.stylize("" + e, "number") : g(e) ? t.stylize("" + e, "boolean") : v(e) ? t.stylize("null", "null") : void 0 } function l(t) { return "[" + Error.prototype.toString.call(t) + "]" } function c(t, e, n, r, i) { for (var o = [], a = 0, s = e.length; s > a; ++a)o.push(L(e, String(a)) ? f(t, e, n, r, String(a), !0) : ""); return i.forEach(function (i) { i.match(/^\d+$/) || o.push(f(t, e, n, r, i, !0)) }), o } function f(t, e, n, r, i, o) { var a, s, u; if (u = Object.getOwnPropertyDescriptor(e, i) || { value: e[i] }, u.get ? s = u.set ? t.stylize("[Getter/Setter]", "special") : t.stylize("[Getter]", "special") : u.set && (s = t.stylize("[Setter]", "special")), L(r, i) || (a = "[" + i + "]"), s || (t.seen.indexOf(u.value) < 0 ? (s = v(n) ? h(t, u.value, null) : h(t, u.value, n - 1), s.indexOf("\n") > -1 && (s = o ? s.split("\n").map(function (t) { return " " + t }).join("\n").substr(2) : "\n" + s.split("\n").map(function (t) { return " " + t }).join("\n"))) : s = t.stylize("[Circular]", "special")), b(a)) { if (o && i.match(/^\d+$/)) return s; a = JSON.stringify("" + i), a.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/) ? (a = a.substr(1, a.length - 2), a = t.stylize(a, "name")) : (a = a.replace(/'/g, "\\'").replace(/\\"/g, '"').replace(/(^"|"$)/g, "'"), a = t.stylize(a, "string")) } return a + ": " + s } function d(t, e, n) { var r = 0, i = t.reduce(function (t, e) { return r++ , e.indexOf("\n") >= 0 && r++ , t + e.replace(/\u001b\[\d\d?m/g, "").length + 1 }, 0); return i > 60 ? n[0] + ("" === e ? "" : e + "\n ") + " " + t.join(",\n ") + " " + n[1] : n[0] + e + " " + t.join(", ") + " " + n[1] } function p(t) { return Array.isArray(t) } function g(t) { return "boolean" == typeof t } function v(t) { return null === t } function m(t) { return null == t } function y(t) { return "number" == typeof t } function w(t) { return "string" == typeof t } function _(t) { return "symbol" == typeof
function o() { if (!a) { if (r.throwDeprecation) throw new Error(i); r.traceDeprecation, a = !0 } return n.apply(this, arguments) } if (b(t.process)) return function () {
return e.deprecate(n, i).apply(this, arguments);
}; if (r.noDeprecation === !0) return n; var a = !1; return o
}; var B, T = {}; e.debuglog = function (t) { if (b(B) && (B = r.env.NODE_DEBUG || ""), t = t.toUpperCase(), !T[t]) if (new RegExp("\\b" + t + "\\b", "i").test(B)) { { r.pid } T[t] = function () { e.format.apply(e, arguments) } } else T[t] = function () { }; return T[t] }, e.inspect = i, i.colors = { bold: [1, 22], italic: [3, 23], underline: [4, 24], inverse: [7, 27], white: [37, 39], grey: [90, 39], black: [30, 39], blue: [34, 39], cyan: [36, 39], green: [32, 39], magenta: [35, 39], red: [31, 39], yellow: [33, 39] }, i.styles = { special: "cyan", number: "yellow", "boolean": "yellow", undefined: "grey", "null": "bold", string: "green", date: "magenta", regexp: "red" }, e.isArray = p, e.isBoolean = g, e.isNull = v, e.isNullOrUndefined = m, e.isNumber = y, e.isString = w, e.isSymbol = _, e.isUndefined = b, e.isRegExp = x, e.isObject = S, e.isDate = k, e.isError = E, e.isFunction = C, e.isPrimitive = I, e.isBuffer = n(72); e.log = function () { }, e.inherits = n(94), e._extend = function (t, e) { if (!e || !S(e)) return t; for (var n = Object.keys(e), r = n.length; r--;)t[n[r]] = e[n[r]]; return t }
}).call(e, function () { return this }(), n(61))
}, function (t, e, n) { function r() { if (!s) { s = !0; for (var t, e = a.length; e;) { t = a, a = []; for (var n = -1; ++n < e;)t[n](); e = a.length } s = !1 } } function i() { } var o = t.exports = {}, a = [], s = !1; o.nextTick = function (t) { a.push(t), s || setTimeout(r, 0) }, o.title = "browser", o.browser = !0, o.env = {}, o.argv = [], o.version = "", o.versions = {}, o.on = i, o.addListener = i, o.once = i, o.off = i, o.removeListener = i, o.removeAllListeners = i, o.emit = i, o.binding = function (t) { throw new Error("process.binding is not supported") }, o.cwd = function () { return "/" }, o.chdir = function (t) { throw new Error("process.chdir is not supported") }, o.umask = function () { return 0 } }, function (t, e, n) { t.exports = "function" == typeof Object.create ? function (t, e) { t.super_ = e, t.prototype = Object.create(e.prototype, { constructor: { value: t, enumerable: !1, writable: !0, configurable: !0 } }) } : function (t, e) { t.super_ = e; var n = function () { }; n.prototype = e.prototype, t.prototype = new n, t.prototype.constructor = t } }, function (t, e, n) { (function () { var e, r; r = n(10), e = function () { function t(t) { var e, r; this.contents = t, this.attributes = {}, this.glyphWidths = {}, this.boundingBoxes = {}, this.parse(), this.charWidths = function () { var t, e; for (e = [], r = t = 0; 255 >= t; r = ++t)e.push(this.glyphWidths[n[r]]); return e }.call(this), this.bbox = function () { var t, n, r, i; for (r = this.attributes.FontBBox.split(/\s+/), i = [], t = 0, n = r.length; n > t; t++)e = r[t], i.push(+e); return i }.call(this), this.ascender = +(this.attributes.Ascender || 0), this.decender = +(this.attributes.Descender || 0), this.lineGap = this.bbox[3] - this.bbox[1] - (this.ascender - this.decender) } var e, n; return t.open = function (e) { return new t(r.readFileSync(e, "utf8")) }, t.prototype.parse = function () { var t, e, n, r, i, o, a, s, h, u; for (o = "", u = this.contents.split("\n"), s = 0, h = u.length; h > s; s++)if (n = u[s], r = n.match(/^Start(\w+)/)) o = r[1]; else if (r = n.match(/^End(\w+)/)) o = ""; else switch (o) { case "FontMetrics": r = n.match(/(^\w+)\s+(.*)/), e = r[1], a = r[2], (t = this.attributes[e]) ? (Array.isArray(t) || (t = this.attributes[e] = [t]), t.push(a)) : this.attributes[e] = a; break; case "CharMetrics": if (!/^CH?\s/.test(n)) continue; i = n.match(/\bN\s+(\.?\w+)\s*;/)[1], this.glyphWidths[i] = +n.match(/\bWX\s+(\d+)\s*;/)[1] } }, e = { 402: 131, 8211: 150, 8212: 151, 8216: 145, 8217: 146, 8218: 130, 8220: 147, 8221: 148, 8222: 132, 8224: 134, 8225: 135, 8226: 149, 8230: 133, 8364: 128, 8240: 137, 8249: 139, 8250: 155, 710: 136, 8482: 153, 338: 140, 339: 156, 732: 152, 352: 138, 353: 154, 376: 159, 381: 142, 382: 158 }, t.prototype.encodeText = function (t) { var n, r, i, o, a; for (i = "", r = o = 0, a = t.length; a >= 0 ? a > o : o > a; r = a >= 0 ? ++o : --o)n = t.charCodeAt(r), n = e[n] || n, i += String.fromCharCode(n); return i }, t.prototype.characterToGlyph = function (t) { return n[e[t] || t] }, t.prototype.widthOfGlyph = function (t) { return this.glyphWidths[t] }, n = ".notdef .notdef .notdef .notdef\n.notdef .notdef .notdef .notdef\n.notdef .notdef .notdef .notdef\n.notdef .notdef .notdef .notdef\n.notdef .notdef .notdef .notdef\n.notdef .notdef .notdef .notdef\n.notdef .notdef .notdef .notdef\n.notdef .notdef .notdef .notdef\n\nspace exclam quotedbl numbersign\ndollar percent ampersand quotesingle\nparenleft parenright asterisk plus\ncomma hyphen period slash\nzero one two three\nfour five six seven\neight nine colon semicolon\nless equal greater question\n\nat A B C\nD E F G\nH
"use strict"; function r(t, e) { return t.msg = T[e], e } function i(t) { return (t << 1) - (t > 4 ? 9 : 0) } function o(t) { for (var e = t.length; --e >= 0;)t[e] = 0 } function a(t) { var e = t.state, n = e.pending; n > t.avail_out && (n = t.avail_out), 0 !== n && (A.arraySet(t.output, e.pending_buf, e.pending_out, n, t.next_out), t.next_out += n, e.pending_out += n, t.total_out += n, t.avail_out -= n, e.pending -= n, 0 === e.pending && (e.pending_out = 0)) } function s(t, e) { L._tr_flush_block(t, t.block_start >= 0 ? t.block_start : -1, t.strstart - t.block_start, e), t.block_start = t.strstart, a(t.strm) } function h(t, e) { t.pending_buf[t.pending++] = e } function u(t, e) { t.pending_buf[t.pending++] = e >>> 8 & 255, t.pending_buf[t.pending++] = 255 & e } function l(t, e, n, r) { var i = t.avail_in; return i > r && (i = r), 0 === i ? 0 : (t.avail_in -= i, A.arraySet(e, t.input, t.next_in, i, n), 1 === t.state.wrap ? t.adler = R(t.adler, e, i, n) : 2 === t.state.wrap && (t.adler = B(t.adler, e, i, n)), t.next_in += i, t.total_in += i, i) } function c(t, e) { var n, r, i = t.max_chain_length, o = t.strstart, a = t.prev_length, s = t.nice_match, h = t.strstart > t.w_size - ut ? t.strstart - (t.w_size - ut) : 0, u = t.window, l = t.w_mask, c = t.prev, f = t.strstart + ht, d = u[o + a - 1], p = u[o + a]; t.prev_length >= t.good_match && (i >>= 2), s > t.lookahead && (s = t.lookahead); do if (n = e, u[n + a] === p && u[n + a - 1] === d && u[n] === u[o] && u[++n] === u[o + 1]) { o += 2, n++; do; while (u[++o] === u[++n] && u[++o] === u[++n] && u[++o] === u[++n] && u[++o] === u[++n] && u[++o] === u[++n] && u[++o] === u[++n] && u[++o] === u[++n] && u[++o] === u[++n] && f > o); if (r = ht - (f - o), o = f - ht, r > a) { if (t.match_start = e, a = r, r >= s) break; d = u[o + a - 1], p = u[o + a] } } while ((e = c[e & l]) > h && 0 !== --i); return a <= t.lookahead ? a : t.lookahead } function f(t) { var e, n, r, i, o, a = t.w_size; do { if (i = t.window_size - t.lookahead - t.strstart, t.strstart >= a + (a - ut)) { A.arraySet(t.window, t.window, a, a, 0), t.match_start -= a, t.strstart -= a, t.block_start -= a, n = t.hash_size, e = n; do r = t.head[--e], t.head[e] = r >= a ? r - a : 0; while (--n); n = a, e = n; do r = t.prev[--e], t.prev[e] = r >= a ? r - a : 0; while (--n); i += a } if (0 === t.strm.avail_in) break; if (n = l(t.strm, t.window, t.strstart + t.lookahead, i), t.lookahead += n, t.lookahead + t.insert >= st) for (o = t.strstart - t.insert, t.ins_h = t.window[o], t.ins_h = (t.ins_h << t.hash_shift ^ t.window[o + 1]) & t.hash_mask; t.insert && (t.ins_h = (t.ins_h << t.hash_shift ^ t.window[o + st - 1]) & t.hash_mask, t.prev[o & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = o, o++ , t.insert-- , !(t.lookahead + t.insert < st));); } while (t.lookahead < ut && 0 !== t.strm.avail_in) } function d(t, e) {
var n = 65535; for (n > t.pending_buf_size - 5 && (n = t.pending_buf_size - 5); ;) {
if (t.lookahead <= 1) { if (f(t), 0 === t.lookahead && e === M) return yt; if (0 === t.lookahead) break } t.strstart += t.lookahead, t.lookahead = 0; var r = t.block_start + n; if ((0 === t.strstart || t.strstart >= r) && (t.lookahead = t.strstart - r,
t.strstart = r, s(t, !1), 0 === t.strm.avail_out)) return yt; if (t.strstart - t.block_start >= t.w_size - ut && (s(t, !1), 0 === t.strm.avail_out)) return yt
} return t.insert = 0, e === U ? (s(t, !0), 0 === t.strm.avail_out ? _t : bt) : t.strstart > t.block_start && (s(t, !1), 0 === t.strm.avail_out) ? yt : yt
} function p(t, e) { for (var n, r; ;) { if (t.lookahead < ut) { if (f(t), t.lookahead < ut && e === M) return yt; if (0 === t.lookahead) break } if (n = 0, t.lookahead >= st && (t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + st - 1]) & t.hash_mask, n = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), 0 !== n && t.strstart - n <= t.w_size - ut && (t.match_length = c(t, n)), t.match_length >= st) if (r = L._tr_tally(t, t.strstart - t.match_start, t.match_length - st), t.lookahead -= t.match_length, t.match_length <= t.max_lazy_match && t.lookahead >= st) { t.match_length--; do t.strstart++ , t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + st - 1]) & t.hash_mask, n = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart; while (0 !== --t.match_length); t.strstart++ } else t.strstart += t.match_length, t.match_length = 0, t.ins_h = t.window[t.strstart], t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + 1]) & t.hash_mask; else r = L._tr_tally(t, 0, t.window[t.strstart]), t.lookahead-- , t.strstart++; if (r && (s(t, !1), 0 === t.strm.avail_out)) return yt } return t.insert = t.strstart < st - 1 ? t.strstart : st - 1, e === U ? (s(t, !0), 0 === t.strm.avail_out ? _t : bt) : t.last_lit && (s(t, !1), 0 === t.strm.avail_out) ? yt : wt } function g(t, e) { for (var n, r, i; ;) { if (t.lookahead < ut) { if (f(t), t.lookahead < ut && e === M) return yt; if (0 === t.lookahead) break } if (n = 0, t.lookahead >= st && (t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + st - 1]) & t.hash_mask, n = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), t.prev_length = t.match_length, t.prev_match = t.match_start, t.match_length = st - 1, 0 !== n && t.prev_length < t.max_lazy_match && t.strstart - n <= t.w_size - ut && (t.match_length = c(t, n), t.match_length <= 5 && (t.strategy === Z || t.match_length === st && t.strstart - t.match_start > 4096) && (t.match_length = st - 1)), t.prev_length >= st && t.match_length <= t.prev_length) { i = t.strstart + t.lookahead - st, r = L._tr_tally(t, t.strstart - 1 - t.prev_match, t.prev_length - st), t.lookahead -= t.prev_length - 1, t.prev_length -= 2; do ++t.strstart <= i && (t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + st - 1]) & t.hash_mask, n = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart); while (0 !== --t.prev_length); if (t.match_available = 0, t.match_length = st - 1, t.strstart++ , r && (s(t, !1), 0 === t.strm.avail_out)) return yt } else if (t.match_available) { if (r = L._tr_tally(t, 0, t.window[t.strstart - 1]), r && s(t, !1), t.strstart++ , t.lookahead-- , 0 === t.strm.avail_out) return yt } else t.match_available = 1, t.strstart++ , t.lookahead-- } return t.match_available && (r = L._tr_tally(t, 0, t.window[t.strstart - 1]), t.match_available = 0), t.insert = t.strstart < st - 1 ? t.strstart : st - 1, e === U ? (s(t, !0), 0 === t.strm.avail_out ? _t : bt) : t.last_lit && (s(t, !1), 0 === t.strm.avail_out) ? yt : wt } function v(t, e) { for (var n, r, i, o, a = t.window; ;) { if (t.lookahead <= ht) { if (f(t), t.lookahead <= ht && e === M) return yt; if (0 === t.lookahead) break } if (t.match_length = 0, t.lookahead >= st && t.strstart > 0 && (i = t.strstart - 1, r = a[i], r === a[++i] && r === a[++i] && r === a[++i])) { o = t.strstart + ht; do; while (r === a[++i] && r === a[++i] && r === a[++i] && r === a[++i] && r === a[++i] && r === a[++i] && r === a[++i] && r === a[++i] && o > i); t.match_length = ht - (o - i), t.match_length > t.lookahead && (t.match_length = t.lookahead) } if (t.match_length >= st ? (n = L._tr_tally(t, 1, t.match_length - st), t.lookahead -= t.match_length, t.strstart += t.match_length, t.match_length = 0) : (n = L._tr_tally(t, 0, t.window[t.strstart]), t.lookahead-- , t.strstart++), n && (s(t, !1), 0 === t.strm.avail_out)) return yt } return t.insert = 0, e === U ? (s(t, !0), 0 === t.strm.avail_out ? _t : bt) : t.last_lit && (s(t, !1), 0 === t.strm.avail_out) ? yt : wt } function m(t, e) { for
}, function (t, e, n) { "use strict"; function r(t) { return (t >>> 24 & 255) + (t >>> 8 & 65280) + ((65280 & t) << 8) + ((255 & t) << 24) } function i() { this.mode = 0, this.last = !1, this.wrap = 0, this.havedict = !1, this.flags = 0, this.dmax = 0, this.check = 0, this.total = 0, this.head = null, this.wbits = 0, this.wsize = 0, this.whave = 0, this.wnext = 0, this.window = null, this.hold = 0, this.bits = 0, this.length = 0, this.offset = 0, this.extra = 0, this.lencode = null, this.distcode = null, this.lenbits = 0, this.distbits = 0, this.ncode = 0, this.nlen = 0, this.ndist = 0, this.have = 0, this.next = null, this.lens = new m.Buf16(320), this.work = new m.Buf16(288), this.lendyn = null, this.distdyn = null, this.sane = 0, this.back = 0, this.was = 0 } function o(t) { var e; return t && t.state ? (e = t.state, t.total_in = t.total_out = e.total = 0, t.msg = "", e.wrap && (t.adler = 1 & e.wrap), e.mode = U, e.last = 0, e.havedict = 0, e.dmax = 32768, e.head = null, e.hold = 0, e.bits = 0, e.lencode = e.lendyn = new m.Buf32(pt), e.distcode = e.distdyn = new m.Buf32(gt), e.sane = 1, e.back = -1, A) : B } function a(t) { var e; return t && t.state ? (e = t.state, e.wsize = 0, e.whave = 0, e.wnext = 0, o(t)) : B } function s(t, e) { var n, r; return t && t.state ? (r = t.state, 0 > e ? (n = 0, e = -e) : (n = (e >> 4) + 1, 48 > e && (e &= 15)), e && (8 > e || e > 15) ? B : (null !== r.window && r.wbits !== e && (r.window = null), r.wrap = n, r.wbits = e, a(t))) : B } function h(t, e) { var n, r; return t ? (r = new i, t.state = r, r.window = null, n = s(t, e), n !== A && (t.state = null), n) : B } function u(t) { return h(t, mt) } function l(t) { if (yt) { var e; for (g = new m.Buf32(512), v = new m.Buf32(32), e = 0; 144 > e;)t.lens[e++] = 8; for (; 256 > e;)t.lens[e++] = 9; for (; 280 > e;)t.lens[e++] = 7; for (; 288 > e;)t.lens[e++] = 8; for (b(S, t.lens, 0, 288, g, 0, t.work, { bits: 9 }), e = 0; 32 > e;)t.lens[e++] = 5; b(k, t.lens, 0, 32, v, 0, t.work, { bits: 5 }), yt = !1 } t.lencode = g, t.lenbits = 9, t.distcode = v, t.distbits = 5 } function c(t, e, n, r) { var i, o = t.state; return null === o.window && (o.wsize = 1 << o.wbits, o.wnext = 0, o.whave = 0, o.window = new m.Buf8(o.wsize)), r >= o.wsize ? (m.arraySet(o.window, e, n - o.wsize, o.wsize, 0), o.wnext = 0, o.whave = o.wsize) : (i = o.wsize - o.wnext, i > r && (i = r), m.arraySet(o.window, e, n - r, i, o.wnext), r -= i, r ? (m.arraySet(o.window, e, n - r, r, 0), o.wnext = r, o.whave = o.wsize) : (o.wnext += i, o.wnext === o.wsize && (o.wnext = 0), o.whave < o.wsize && (o.whave += i))), 0 } function f(t, e) { var n, i, o, a, s, h, u, f, d, p, g, v, pt, gt, vt, mt, yt, wt, _t, bt, xt, St, kt, Et, Ct = 0, It = new m.Buf8(4), At = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]; if (!t || !t.state || !t.output || !t.input && 0 !== t.avail_in) return B; n = t.state, n.mode === Y && (n.mode = K), s = t.next_out, o = t.output, u = t.avail_out, a = t.next_in, i = t.input, h = t.avail_in, f = n.hold, d = n.bits, p = h, g = u, St = A; t: for (; ;)switch (n.mode) { case U: if (0 === n.wrap) { n.mode = K; break } for (; 16 > d;) { if (0 === h) break t; h-- , f += i[a++] << d, d += 8 } if (2 & n.wrap && 35615 === f) { n.check = 0, It[0] = 255 & f, It[1] = f >>> 8 & 255, n.check = w(n.check, It, 2, 0), f = 0, d = 0, n.mode = P; break } if (n.flags = 0, n.head && (n.head.done = !1), !(1 & n.wrap) || (((255 & f) << 8) + (f >> 8)) % 31) { t.msg = "incorrect header check", n.mode = ct; break } if ((15 & f) !== D) { t.msg = "unknown compression method", n.mode = ct; break } if (f >>>= 4, d -= 4, xt = (15 & f) + 8, 0 === n.wbits) n.wbits = xt; else if (xt > n.wbits) { t.msg = "invalid window size", n.mode = ct; break } n.dmax = 1 << xt, t.adler = n.check = 1, n.mode = 512 & f ? G : Y, f = 0, d = 0; break; case P: for (; 16 > d;) { if (0 === h) break t; h-- , f += i[a++] << d, d += 8 } if (n.flags = f, (255 & n.flags) !== D) { t.msg = "unknown compression method", n.mode = ct; break } if (57344 & n.flags) { t.msg = "unknown header flags set", n.mode =
(function () {
var e, CmapTable, r, i, o = {}.hasOwnProperty, a = function (t, e) { function n() { this.constructor = t } for (var r in e) o.call(e, r) && (t[r] = e[r]); return n.prototype = e.prototype, t.prototype = new n, t.__super__ = e.prototype, t }; i = n(99), r = n(34), CmapTable = function (t) { function CmapTable() { return CmapTable.__super__.constructor.apply(this, arguments) } return a(CmapTable, t), CmapTable.prototype.tag = "cmap", CmapTable.prototype.parse = function (t) { var n, r, i, o; for (t.pos = this.offset, this.version = t.readUInt16(), i = t.readUInt16(), this.tables = [], this.unicode = null, r = o = 0; i >= 0 ? i > o : o > i; r = i >= 0 ? ++o : --o)n = new e(t, this.offset), this.tables.push(n), n.isUnicode && null == this.unicode && (this.unicode = n); return !0 }, CmapTable.encode = function (t, n) { var i, o; return null == n && (n = "macroman"), i = e.encode(t, n), o = new r, o.writeUInt16(0), o.writeUInt16(1), i.table = o.data.concat(i.subtable), i }, CmapTable }(i), e = function () {
function t(t, e) { var n, r, i, o, a, s, h, u, l, c, f, d, p, g, v, m, y, w, _; switch (this.platformID = t.readUInt16(), this.encodingID = t.readShort(), this.offset = e + t.readInt(), c = t.pos, t.pos = this.offset, this.format = t.readUInt16(), this.length = t.readUInt16(), this.language = t.readUInt16(), this.isUnicode = 3 === this.platformID && 1 === this.encodingID && 4 === this.format || 0 === this.platformID && 4 === this.format, this.codeMap = {}, this.format) { case 0: for (s = m = 0; 256 > m; s = ++m)this.codeMap[s] = t.readByte(); break; case 4: for (d = t.readUInt16(), f = d / 2, t.pos += 6, i = function () { var e, n; for (n = [], s = e = 0; f >= 0 ? f > e : e > f; s = f >= 0 ? ++e : --e)n.push(t.readUInt16()); return n }(), t.pos += 2, g = function () { var e, n; for (n = [], s = e = 0; f >= 0 ? f > e : e > f; s = f >= 0 ? ++e : --e)n.push(t.readUInt16()); return n }(), h = function () { var e, n; for (n = [], s = e = 0; f >= 0 ? f > e : e > f; s = f >= 0 ? ++e : --e)n.push(t.readUInt16()); return n }(), u = function () { var e, n; for (n = [], s = e = 0; f >= 0 ? f > e : e > f; s = f >= 0 ? ++e : --e)n.push(t.readUInt16()); return n }(), r = (this.length - t.pos + this.offset) / 2, a = function () { var e, n; for (n = [], s = e = 0; r >= 0 ? r > e : e > r; s = r >= 0 ? ++e : --e)n.push(t.readUInt16()); return n }(), s = y = 0, _ = i.length; _ > y; s = ++y)for (v = i[s], p = g[s], n = w = p; v >= p ? v >= w : w >= v; n = v >= p ? ++w : --w)0 === u[s] ? o = n + h[s] : (l = u[s] / 2 + (n - p) - (f - s), o = a[l] || 0, 0 !== o && (o += h[s])), this.codeMap[n] = 65535 & o }t.pos = c } return t.encode = function (t, e) {
var n, i, o, a, s, h, u, l, c, f, d, p, g, v, m, y, w, _, b, x, S, k, E, C, I, A, L, R, B, T, M, O, D, U, P, F, z, W, N, j, H, Z, G, q, Y, K, X; switch (B = new r, a = Object.keys(t).sort(function (t, e) { return t - e }), e) {
case "macroman": for (g = 0, v = function () { var t, e; for (e = [], p = t = 0; 256 > t; p = ++t)e.push(0); return e }(), y = { 0: 0 }, o = {}, T = 0, U = a.length; U > T; T++)i = a[T], null == y[q = t[i]] && (y[q] = ++g), o[i] = { old: t[i], "new": y[t[i]] }, v[i] = y[t[i]]; return B.writeUInt16(1), B.writeUInt16(0), B.writeUInt32(12), B.writeUInt16(0),
B.writeUInt16(262), B.writeUInt16(0), B.write(v), k = { charMap: o, subtable: B.data, maxGlyphID: g + 1 }; case "unicode": for (L = [], c = [], w = 0, y = {}, n = {}, m = u = null, M = 0, P = a.length; P > M; M++)i = a[M], b = t[i], null == y[b] && (y[b] = ++w), n[i] = { old: b, "new": y[b] }, s = y[b] - i, (null == m || s !== u) && (m && c.push(m), L.push(i), u = s), m = i; for (m && c.push(m), c.push(65535), L.push(65535), C = L.length, I = 2 * C, E = 2 * Math.pow(Math.log(C) / Math.LN2, 2), f = Math.log(E / 2) / Math.LN2, S = 2 * C - E, h = [], x = [], d = [], p = O = 0, F = L.length; F > O; p = ++O) { if (A = L[p], l = c[p], 65535 === A) { h.push(0), x.push(0); break } if (R = n[A]["new"], A - R >= 32768) for (h.push(0), x.push(2 * (d.length + C - p)), i = D = A; l >= A ? l >= D : D >= l; i = l >= A ? ++D : --D)d.push(n[i]["new"]); else h.push(R - A), x.push(0) } for (B.writeUInt16(3), B.writeUInt16(1), B.writeUInt32(12), B.writeUInt16(4), B.writeUInt16(16 + 8 * C + 2 * d.length), B.writeUInt16(0), B.writeUInt16(I), B.writeUInt16(E), B.writeUInt16(f), B.writeUInt16(S), Z = 0, z = c.length; z > Z; Z++)i = c[Z], B.writeUInt16(i); for (B.writeUInt16(0), G = 0, W = L.length; W > G; G++)i = L[G], B.writeUInt16(i); for (Y = 0, N = h.length; N > Y; Y++)s = h[Y], B.writeUInt16(s); for (K = 0, j = x.length; j > K; K++)_ = x[K], B.writeUInt16(_); for (X = 0, H = d.length; H > X; X++)g = d[X], B.writeUInt16(g); return k = { charMap: n, subtable: B.data, maxGlyphID: w + 1 }
}
}, t
}(), t.exports = CmapTable
}).call(this)
}, function (t, e, n) { (function () { var e, HmtxTable, r, i = {}.hasOwnProperty, o = function (t, e) { function n() { this.constructor = t } for (var r in e) i.call(e, r) && (t[r] = e[r]); return n.prototype = e.prototype, t.prototype = new n, t.__super__ = e.prototype, t }; r = n(99), e = n(34), HmtxTable = function (t) { function HmtxTable() { return HmtxTable.__super__.constructor.apply(this, arguments) } return o(HmtxTable, t), HmtxTable.prototype.tag = "hmtx", HmtxTable.prototype.parse = function (t) { var e, n, r, i, o, a, s, h; for (t.pos = this.offset, this.metrics = [], e = o = 0, s = this.file.hhea.numberOfMetrics; s >= 0 ? s > o : o > s; e = s >= 0 ? ++o : --o)this.metrics.push({ advance: t.readUInt16(), lsb: t.readInt16() }); for (r = this.file.maxp.numGlyphs - this.file.hhea.numberOfMetrics, this.leftSideBearings = function () { var n, i; for (i = [], e = n = 0; r >= 0 ? r > n : n > r; e = r >= 0 ? ++n : --n)i.push(t.readInt16()); return i }(), this.widths = function () { var t, e, n, r; for (n = this.metrics, r = [], t = 0, e = n.length; e > t; t++)i = n[t], r.push(i.advance); return r }.call(this), n = this.widths[this.widths.length - 1], h = [], e = a = 0; r >= 0 ? r > a : a > r; e = r >= 0 ? ++a : --a)h.push(this.widths.push(n)); return h }, HmtxTable.prototype.forGlyph = function (t) { var e; return t in this.metrics ? this.metrics[t] : e = { advance: this.metrics[this.metrics.length - 1].advance, lsb: this.leftSideBearings[t - this.metrics.length] } }, HmtxTable.prototype.encode = function (t) { var n, r, i, o, a; for (i = new e, o = 0, a = t.length; a > o; o++)n = t[o], r = this.forGlyph(n), i.writeUInt16(r.advance), i.writeUInt16(r.lsb); return i.data }, HmtxTable }(r), t.exports = HmtxTable }).call(this) }, function (t, e, n) { (function () { var e, HheaTable, r, i = {}.hasOwnProperty, o = function (t, e) { function n() { this.constructor = t } for (var r in e) i.call(e, r) && (t[r] = e[r]); return n.prototype = e.prototype, t.prototype = new n, t.__super__ = e.prototype, t }; r = n(99), e = n(34), HheaTable = function (t) { function HheaTable() { return HheaTable.__super__.constructor.apply(this, arguments) } return o(HheaTable, t), HheaTable.prototype.tag = "hhea", HheaTable.prototype.parse = function (t) { return t.pos = this.offset, this.version = t.readInt(), this.ascender = t.readShort(), this.decender = t.readShort(), this.lineGap = t.readShort(), this.advanceWidthMax = t.readShort(), this.minLeftSideBearing = t.readShort(), this.minRightSideBearing = t.readShort(), this.xMaxExtent = t.readShort(), this.caretSlopeRise = t.readShort(), this.caretSlopeRun = t.readShort(), this.caretOffset = t.readShort(), t.pos += 8, this.metricDataFormat = t.readShort(), this.numberOfMetrics = t.readUInt16() }, HheaTable.prototype.encode = function (t) { var n, r, i, o; for (r = new e, r.writeInt(this.version), r.writeShort(this.ascender), r.writeShort(this.decender), r.writeShort(this.lineGap), r.writeShort(this.advanceWidthMax), r.writeShort(this.minLeftSideBearing), r.writeShort(this.minRightSideBearing), r.writeShort(this.xMaxExtent), r.writeShort(this.caretSlopeRise), r.writeShort(this.caretSlopeRun), r.writeShort(this.caretOffset), n = i = 0, o = 8; o >= 0 ? o > i : i > o; n = o >= 0 ? ++i : --i)r.writeByte(0); return r.writeShort(this.metricDataFormat), r.writeUInt16(t.length), r.data }, HheaTable }(r), t.exports = HheaTable }).call(this) }, function (t, e, n) { (function () { var e, MaxpTable, r, i = {}.hasOwnProperty, o = function (t, e) { function n() { this.constructor = t } for (var r in e) i.call(e, r) && (t[r] = e[r]); return n.prototype = e.prototype, t.prototype = new n, t.__super__ = e.prototype, t }; r = n(99), e = n(34), MaxpTable = function (t) { function MaxpTable() { return MaxpTable.__super__.constructor.apply(this, arguments) } return o(MaxpTable, t), MaxpTable.prototype.tag = "maxp", MaxpTable.prototype.parse = function (t) { return t.pos = this.offset, this.version = t.readInt(), this.numGlyphs = t.readUInt16(), this.maxPoints = t.readUInt16(), this.maxContours = t.readUInt16(), th
"use strict"; var r = n(98), i = 15, o = 852, a = 592, s = 0, h = 1, u = 2, l = [3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0], c = [16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78], f = [1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0], d = [16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64];
t.exports = function (t, e, n, p, g, v, m, y) { var w, _, b, x, S, k, E, C, I, A = y.bits, L = 0, R = 0, B = 0, T = 0, M = 0, O = 0, D = 0, U = 0, P = 0, F = 0, z = null, W = 0, N = new r.Buf16(i + 1), j = new r.Buf16(i + 1), H = null, Z = 0; for (L = 0; i >= L; L++)N[L] = 0; for (R = 0; p > R; R++)N[e[n + R]]++; for (M = A, T = i; T >= 1 && 0 === N[T]; T--); if (M > T && (M = T), 0 === T) return g[v++] = 20971520, g[v++] = 20971520, y.bits = 1, 0; for (B = 1; T > B && 0 === N[B]; B++); for (B > M && (M = B), U = 1, L = 1; i >= L; L++)if (U <<= 1, U -= N[L], 0 > U) return -1; if (U > 0 && (t === s || 1 !== T)) return -1; for (j[1] = 0, L = 1; i > L; L++)j[L + 1] = j[L] + N[L]; for (R = 0; p > R; R++)0 !== e[n + R] && (m[j[e[n + R]]++] = R); if (t === s ? (z = H = m, k = 19) : t === h ? (z = l, W -= 257, H = c, Z -= 257, k = 256) : (z = f, H = d, k = -1), F = 0, R = 0, L = B, S = v, O = M, D = 0, b = -1, P = 1 << M, x = P - 1, t === h && P > o || t === u && P > a) return 1; for (var G = 0; ;) { G++ , E = L - D, m[R] < k ? (C = 0, I = m[R]) : m[R] > k ? (C = H[Z + m[R]], I = z[W + m[R]]) : (C = 96, I = 0), w = 1 << L - D, _ = 1 << O, B = _; do _ -= w, g[S + (F >> D) + _] = E << 24 | C << 16 | I | 0; while (0 !== _); for (w = 1 << L - 1; F & w;)w >>= 1; if (0 !== w ? (F &= w - 1, F += w) : F = 0, R++ , 0 === --N[L]) { if (L === T) break; L = e[n + m[R]] } if (L > M && (F & x) !== b) { for (0 === D && (D = M), S += B, O = L - D, U = 1 << O; T > O + D && (U -= N[O + D], !(0 >= U));)O++ , U <<= 1; if (P += 1 << O, t === h && P > o || t === u && P > a) return 1; b = F & x, g[b] = M << 24 | O << 16 | S - v | 0 } } return 0 !== F && (g[S + F] = L - D << 24 | 64 << 16 | 0), y.bits = M, 0 }
}, function (t, e, n) { t.exports = "function" == typeof Object.create ? function (t, e) { t.super_ = e, t.prototype = Object.create(e.prototype, { constructor: { value: t, enumerable: !1, writable: !0, configurable: !0 } }) } : function (t, e) { t.super_ = e; var n = function () { }; n.prototype = e.prototype, t.prototype = new n, t.prototype.constructor = t } }, function (t, e, n) { (function (t) { function n(t) { return Array.isArray(t) } function r(t) { return "boolean" == typeof t } function i(t) { return null === t } function o(t) { return null == t } function a(t) { return "number" == typeof t } function s(t) { return "string" == typeof t } function h(t) { return "symbol" == typeof t } function u(t) { return void 0 === t } function l(t) { return c(t) && "[object RegExp]" === m(t) } function c(t) { return "object" == typeof t && null !== t } function f(t) { return c(t) && "[object Date]" === m(t) } function d(t) { return c(t) && ("[object Error]" === m(t) || t instanceof Error) } function p(t) { return "function" == typeof t } function g(t) { return null === t || "boolean" == typeof t || "number" == typeof t || "string" == typeof t || "symbol" == typeof t || "undefined" == typeof t } function v(e) { return t.isBuffer(e) } function m(t) { return Object.prototype.toString.call(t) } e.isArray = n, e.isBoolean = r, e.isNull = i, e.isNullOrUndefined = o, e.isNumber = a, e.isString = s, e.isSymbol = h, e.isUndefined = u, e.isRegExp = l, e.isObject = c, e.isDate = f, e.isError = d, e.isFunction = p, e.isPrimitive = g, e.isBuffer = v }).call(e, n(4).Buffer) }, function (t, e, n) {
t.exports = {
data: [1961, 1969, 1977, 1985, 2025, 2033, 2041, 2049, 2057, 2065, 2073, 2081, 2089, 2097, 2105, 2113, 2121, 2129, 2137, 2145, 2153, 2161, 2169, 2177, 2185, 2193, 2201, 2209, 2217, 2225, 2233, 2241, 2249, 2257, 2265, 2273, 2281, 2289, 2297, 2305, 2313, 2321, 2329, 2337, 2345, 2353, 2361, 2369, 2377, 2385, 2393, 2401, 2409, 2417, 2425, 2433, 2441, 2449, 2457, 2465, 2473, 2481, 2489, 2497, 2505, 2513, 2521, 2529, 2529, 2537, 2009, 2545, 2553, 2561, 2569, 2577, 2585, 2593, 2601, 2609, 2617, 2625, 2633, 2641, 2649, 2657, 2665, 2673, 2681, 2689, 2697, 2705, 2713, 2721, 2729, 2737, 2745, 2753, 2761, 2769, 2777, 2785, 2793, 2801, 2809, 2817, 2825, 2833, 2841, 2849, 2857, 2865, 2873, 2881, 2889, 2009, 2897, 2905, 2913, 2009, 2921, 2929, 2937, 2945, 2953, 2961, 2969, 2009, 2977, 2977, 2985, 2993, 3001, 3009, 3009, 3009, 3017, 3017, 3017, 3025, 3025, 3033, 3041, 3041, 3049, 3049, 3049, 3049, 3049, 3049, 3049, 3049, 3049, 3049, 3057, 3065, 3073, 3073, 3073, 3081, 3089, 3097, 3097, 3097, 3097, 3097, 3097, 3097, 3097, 3097, 3097, 3097, 3097, 3097, 3097, 3097, 3097, 3097, 3097, 3097, 3105, 3113, 3113, 3121, 3129, 3137, 3145, 3153, 3161, 3161, 3169, 3177, 3185, 3193, 3193, 3193, 3193, 3201, 3209, 3209, 3217, 3225, 3233, 3241, 3241, 3241, 3249, 3257, 3265, 3273, 3273, 3281, 3289, 3297, 2009, 2009, 3305, 3313, 3321, 3329, 3337, 3345, 3353, 3361, 3369, 3377, 3385, 3393, 2009, 2009, 3401, 3409, 3417, 3417, 3417, 3417, 3417, 3417, 3425, 3425, 3433, 3433, 3433, 3433, 3433, 3433, 3433, 3433, 3433, 3433, 3433, 3433, 3433, 3433, 3433, 3441, 3449, 3457, 3465, 3473, 3481, 3489, 3497, 3505, 3513, 3521, 3529, 3537, 3545, 3553, 3561, 3569, 3577, 3585, 3593, 3601, 3609, 3617, 3625, 3625, 3633, 3641, 3649, 3649, 3649, 3649, 3649, 3657, 3665, 3665, 3673, 3681, 3681, 3681, 3681, 3689, 3697, 3697, 3705, 3713, 3721, 3729, 3737, 3745, 3753, 3761, 3769, 3777, 3785, 3793, 3801, 3809, 3817, 3825, 3833, 3841, 3849, 3857, 3865, 3873, 3881, 3881, 3881, 3881, 3881, 3881, 3881, 3881, 3881, 3881, 3881, 3881, 3889, 3897, 3905, 3913, 3921, 3921, 3921, 3921, 3921, 3921, 3921, 3921, 3921, 3921, 3929, 2009, 2009, 2009, 2009, 2009, 3937, 3937, 3937, 3937, 3937, 3937, 3937, 3945, 3953, 3953, 3953, 3961, 3969, 3969, 3977, 3985, 3993, 4001, 2009, 2009, 4009, 4009, 4009, 4009, 4009, 4009, 4009, 4009, 4009, 4009, 4009, 4009, 4017, 4025, 4033, 4041, 4049, 4057, 4065, 4073, 4081, 4081, 4081, 4081, 4081, 4081, 4081, 4089, 4097, 4097, 4105, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4113, 4121, 4121, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129, 4129
highStart: 919552, errorValue: 0
}
}, function (t, e, n) { t.exports = Array.isArray || function (t) { return "[object Array]" == Object.prototype.toString.call(t) } }]);
//# sourceMappingURL=pdfmake.min.js.map
window.pdfMake = window.pdfMake || {}; window.pdfMake.vfs = { "LICENSE.txt": "DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBcGFjaGUgTGljZW5zZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgVmVyc2lvbiAyLjAsIEphbnVhcnkgMjAwNA0KICAgICAgICAgICAgICAgICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzLw0KDQogICBURVJNUyBBTkQgQ09ORElUSU9OUyBGT1IgVVNFLCBSRVBST0RVQ1RJT04sIEFORCBESVNUUklCVVRJT04NCg0KICAgMS4gRGVmaW5pdGlvbnMuDQoNCiAgICAgICJMaWNlbnNlIiBzaGFsbCBtZWFuIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBmb3IgdXNlLCByZXByb2R1Y3Rpb24sDQogICAgICBhbmQgZGlzdHJpYnV0aW9uIGFzIGRlZmluZWQgYnkgU2VjdGlvbnMgMSB0aHJvdWdoIDkgb2YgdGhpcyBkb2N1bWVudC4NCg0KICAgICAgIkxpY2Vuc29yIiBzaGFsbCBtZWFuIHRoZSBjb3B5cmlnaHQgb3duZXIgb3IgZW50aXR5IGF1dGhvcml6ZWQgYnkNCiAgICAgIHRoZSBjb3B5cmlnaHQgb3duZXIgdGhhdCBpcyBncmFudGluZyB0aGUgTGljZW5zZS4NCg0KICAgICAgIkxlZ2FsIEVudGl0eSIgc2hhbGwgbWVhbiB0aGUgdW5pb24gb2YgdGhlIGFjdGluZyBlbnRpdHkgYW5kIGFsbA0KICAgICAgb3RoZXIgZW50aXRpZXMgdGhhdCBjb250cm9sLCBhcmUgY29udHJvbGxlZCBieSwgb3IgYXJlIHVuZGVyIGNvbW1vbg0KICAgICAgY29udHJvbCB3aXRoIHRoYXQgZW50aXR5LiBGb3IgdGhlIHB1cnBvc2VzIG9mIHRoaXMgZGVmaW5pdGlvbiwNCiAgICAgICJjb250cm9sIiBtZWFucyAoaSkgdGhlIHBvd2VyLCBkaXJlY3Qgb3IgaW5kaXJlY3QsIHRvIGNhdXNlIHRoZQ0KICAgICAgZGlyZWN0aW9uIG9yIG1hbmFnZW1lbnQgb2Ygc3VjaCBlbnRpdHksIHdoZXRoZXIgYnkgY29udHJhY3Qgb3INCiAgICAgIG90aGVyd2lzZSwgb3IgKGlpKSBvd25lcnNoaXAgb2YgZmlmdHkgcGVyY2VudCAoNTAlKSBvciBtb3JlIG9mIHRoZQ0KICAgICAgb3V0c3RhbmRpbmcgc2hhcmVzLCBvciAoaWlpKSBiZW5lZmljaWFsIG93bmVyc2hpcCBvZiBzdWNoIGVudGl0eS4NCg0KICAgICAgIllvdSIgKG9yICJZb3VyIikgc2hhbGwgbWVhbiBhbiBpbmRpdmlkdWFsIG9yIExlZ2FsIEVudGl0eQ0KICAgICAgZXhlcmNpc2luZyBwZXJtaXNzaW9ucyBncmFudGVkIGJ5IHRoaXMgTGljZW5zZS4NCg0KICAgICAgIlNvdXJjZSIgZm9ybSBzaGFsbCBtZWFuIHRoZSBwcmVmZXJyZWQgZm9ybSBmb3IgbWFraW5nIG1vZGlmaWNhdGlvbnMsDQogICAgICBpbmNsdWRpbmcgYnV0IG5vdCBsaW1pdGVkIHRvIHNvZnR3YXJlIHNvdXJjZSBjb2RlLCBkb2N1bWVudGF0aW9uDQogICAgICBzb3VyY2UsIGFuZCBjb25maWd1cmF0aW9uIGZpbGVzLg0KDQogICAgICAiT2JqZWN0IiBmb3JtIHNoYWxsIG1lYW4gYW55IGZvcm0gcmVzdWx0aW5nIGZyb20gbWVjaGFuaWNhbA0KICAgICAgdHJhbnNmb3JtYXRpb24gb3IgdHJhbnNsYXRpb24gb2YgYSBTb3VyY2UgZm9ybSwgaW5jbHVkaW5nIGJ1dA0KICAgICAgbm90IGxpbWl0ZWQgdG8gY29tcGlsZWQgb2JqZWN0IGNvZGUsIGdlbmVyYXRlZCBkb2N1bWVudGF0aW9uLA0KICAgICAgYW5kIGNvbnZlcnNpb25zIHRvIG90aGVyIG1lZGlhIHR5cGVzLg0KDQogICAgICAiV29yayIgc2hhbGwgbWVhbiB0aGUgd29yayBvZiBhdXRob3JzaGlwLCB3aGV0aGVyIGluIFNvdXJjZSBvcg0KICAgICAgT2JqZWN0IGZvcm0sIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSBMaWNlbnNlLCBhcyBpbmRpY2F0ZWQgYnkgYQ0KICAgICAgY29weXJpZ2h0IG5vdGljZSB0aGF0IGlzIGluY2x1ZGVkIGluIG9yIGF0dGFjaGVkIHRvIHRoZSB3b3JrDQogICAgICAoYW4gZXhhbXBsZSBpcyBwcm92aWRlZCBpbiB0aGUgQXBwZW5kaXggYmVsb3cpLg0KDQogICAgICAiRGVyaXZhdGl2ZSBXb3JrcyIgc2hhbGwgbWVhbiBhbnkgd29yaywgd2hldGhlciBpbiBTb3VyY2Ugb3IgT2JqZWN0DQogICAgICBmb3JtLCB0aGF0IGlzIGJhc2VkIG9uIChvciBkZXJpdmVkIGZyb20pIHRoZSBXb3JrIGFuZCBmb3Igd2hpY2ggdGhlDQogICAgICBlZGl0b3JpYWwgcmV2aXNpb25zLCBhbm5vdGF0aW9ucywgZWxhYm9yYXRpb25zLCBvciBvdGhlciBtb2RpZmljYXRpb25zDQogICAgICByZXByZXNlbnQsIGFzIGEgd2hvbGUsIGFuIG9yaWdpbmFsIHdvcmsgb2YgYXV0aG9yc2hpcC4gRm9yIHRoZSBwdXJwb3Nlcw0KICAgICAgb2YgdGhpcyBMaWNlbnNlLCBEZXJpdmF0aXZlIFdvcmtzIHNoYWxsIG5vdCBpbmNsdWRlIHdvcmtzIHRoYXQgcmVtYWluDQogICAgICBzZXBhcmFibGUgZnJvbSwgb3IgbWVyZWx5IGxpbmsgKG9yIGJpbmQgYnkgbmFtZSkgdG8gdGhlIGludGVyZmFjZXMgb2YsDQogICAgICB0aGUgV29yayBhbmQgRGVyaXZhdGl2ZSBXb3JrcyB0aGVyZW9mLg0KDQogICAgICAiQ29udHJpYnV0aW9uIiBzaGFsbCBtZWFuIGFueSB3b3JrIG9mIGF1dGhvcnNoaXAsIGluY2x1ZGluZw0KICAgICAgdGhlIG9yaWdpbmFsIHZlcnNpb24gb2YgdGhlIFdvcmsgYW5kIGFueSBtb2RpZmljYXRpb25zIG9yIGFkZGl0aW9ucw0KICAgICAgdG8gdGhhdCBXb3JrIG9yIERlcml2YXRpdmUgV29ya3MgdGhlcmVvZiwgdGhhdCBpcyBpbnRlbnRpb25hbGx5DQogICAgICBzdWJtaXR0ZWQgdG8gTGljZW5zb3IgZm9yIGluY2x1c2lvbiBpbiB0aGUgV29yayBieSB0aGUgY29weXJpZ2h0IG93bmVyDQogICAgICBvciBieSBhbiBpbmRpdmlkdWFsIG9yIExlZ2FsIEVudGl0eSBhdXRob3JpemVkIHRvIHN1Ym1pdCBvbiBiZWhhbGYgb2YNCiAgICAgIHRoZSBjb3B5cmlnaHQgb3duZXIuIEZvciB0aGUgcHVycG9zZXMgb2YgdGhpcyBkZWZpbml0aW9uLCAic3VibWl0dGVkIg0KICAgICAgbWVhbnMgYW55IGZvcm0gb2YgZWxlY3Ryb25pYywgdmVyYmFsLCBvciB3cml0dGVuIGNvbW11bmljYXRpb24gc2VudA0KICAgICAgdG8gdGhlIExpY2Vuc29yIG9yIGl0cyByZXByZXNlbnRhdGl2ZXMsIGluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8NCiAgICAgIGNvbW11bmljYXRpb24gb24gZWxlY
/*!
DataTables 1.10.10
©2008-2015 SpryMedia Ltd - datatables.net/license
*/
(function (h) { "function" === typeof define && define.amd ? define(["jquery"], function (E) { return h(E, window, document) }) : "object" === typeof exports ? module.exports = function (E, H) { E || (E = window); H || (H = "undefined" !== typeof window ? require("jquery") : require("jquery")(E)); return h(H, E, E.document) } : h(jQuery, window, document) })(function (h, E, H, k) {
function Y(a) {
var b, c, d = {}; h.each(a, function (e) {
if ((b = e.match(/^([^A-Z]+?)([A-Z])/)) && -1 !== "a aa ai ao as b fn i m o s ".indexOf(b[1] + " ")) c = e.replace(b[0], b[2].toLowerCase()),
d[c] = e, "o" === b[1] && Y(a[e])
}); a._hungarianMap = d
} function J(a, b, c) { a._hungarianMap || Y(a); var d; h.each(b, function (e) { d = a._hungarianMap[e]; if (d !== k && (c || b[d] === k)) "o" === d.charAt(0) ? (b[d] || (b[d] = {}), h.extend(!0, b[d], b[e]), J(a[d], b[d], c)) : b[d] = b[e] }) } function Fa(a) {
var b = m.defaults.oLanguage, c = a.sZeroRecords; !a.sEmptyTable && (c && "No data available in table" === b.sEmptyTable) && F(a, a, "sZeroRecords", "sEmptyTable"); !a.sLoadingRecords && (c && "Loading..." === b.sLoadingRecords) && F(a, a, "sZeroRecords", "sLoadingRecords");
a.sInfoThousands && (a.sThousands = a.sInfoThousands); (a = a.sDecimal) && db(a)
} function eb(a) {
A(a, "ordering", "bSort"); A(a, "orderMulti", "bSortMulti"); A(a, "orderClasses", "bSortClasses"); A(a, "orderCellsTop", "bSortCellsTop"); A(a, "order", "aaSorting"); A(a, "orderFixed", "aaSortingFixed"); A(a, "paging", "bPaginate"); A(a, "pagingType", "sPaginationType"); A(a, "pageLength", "iDisplayLength"); A(a, "searching", "bFilter"); "boolean" === typeof a.sScrollX && (a.sScrollX = a.sScrollX ? "100%" : ""); "boolean" === typeof a.scrollX && (a.scrollX =
a.scrollX ? "100%" : ""); if (a = a.aoSearchCols) for (var b = 0, c = a.length; b < c; b++)a[b] && J(m.models.oSearch, a[b])
} function fb(a) { A(a, "orderable", "bSortable"); A(a, "orderData", "aDataSort"); A(a, "orderSequence", "asSorting"); A(a, "orderDataType", "sortDataType"); var b = a.aDataSort; b && !h.isArray(b) && (a.aDataSort = [b]) } function gb(a) {
if (!m.__browser) {
var b = {}; m.__browser = b; var c = h("<div/>").css({ position: "fixed", top: 0, left: 0, height: 1, width: 1, overflow: "hidden" }).append(h("<div/>").css({
position: "absolute", top: 1, left: 1,
width: 100, overflow: "scroll"
}).append(h("<div/>").css({ width: "100%", height: 10 }))).appendTo("body"), d = c.children(), e = d.children(); b.barWidth = d[0].offsetWidth - d[0].clientWidth; b.bScrollOversize = 100 === e[0].offsetWidth && 100 !== d[0].clientWidth; b.bScrollbarLeft = 1 !== Math.round(e.offset().left); b.bBounding = c[0].getBoundingClientRect().width ? !0 : !1; c.remove()
} h.extend(a.oBrowser, m.__browser); a.oScroll.iBarWidth = m.__browser.barWidth
} function hb(a, b, c, d, e, f) {
var g, j = !1; c !== k && (g = c, j = !0); for (; d !== e;)a.hasOwnProperty(d) &&
(g = j ? b(g, a[d], d, a) : a[d], j = !0, d += f); return g
} function Ga(a, b) { var c = m.defaults.column, d = a.aoColumns.length, c = h.extend({}, m.models.oColumn, c, { nTh: b ? b : H.createElement("th"), sTitle: c.sTitle ? c.sTitle : b ? b.innerHTML : "", aDataSort: c.aDataSort ? c.aDataSort : [d], mData: c.mData ? c.mData : d, idx: d }); a.aoColumns.push(c); c = a.aoPreSearchCols; c[d] = h.extend({}, m.models.oSearch, c[d]); la(a, d, h(b).data()) } function la(a, b, c) {
var b = a.aoColumns[b], d = a.oClasses, e = h(b.nTh); if (!b.sWidthOrig) {
b.sWidthOrig = e.attr("width") || null; var f =
(e.attr("style") || "").match(/width:\s*(\d+[pxem%]+)/); f && (b.sWidthOrig = f[1])
} c !== k && null !== c && (fb(c), J(m.defaults.column, c), c.mDataProp !== k && !c.mData && (c.mData = c.mDataProp), c.sType && (b._sManualType = c.sType), c.className && !c.sClass && (c.sClass = c.className), h.extend(b, c), F(b, c, "sWidth", "sWidthOrig"), c.iDataSort !== k && (b.aDataSort = [c.iDataSort]), F(b, c, "aDataSort")); var g = b.mData, j = Q(g), i = b.mRender ? Q(b.mRender) : null, c = function (a) { return "string" === typeof a && -1 !== a.indexOf("@") }; b._bAttrSrc = h.isPlainObject(g) &&
(c(g.sort) || c(g.type) || c(g.filter)); b.fnGetData = function (a, b, c) { var d = j(a, b, k, c); return i && b ? i(d, b, a, c) : d }; b.fnSetData = function (a, b, c) { return R(g)(a, b, c) }; "number" !== typeof g && (a._rowReadObject = !0); a.oFeatures.bSort || (b.bSortable = !1, e.addClass(d.sSortableNone)); a = -1 !== h.inArray("asc", b.asSorting); c = -1 !== h.inArray("desc", b.asSorting); !b.bSortable || !a && !c ? (b.sSortingClass = d.sSortableNone, b.sSortingClassJUI = "") : a && !c ? (b.sSortingClass = d.sSortableAsc, b.sSortingClassJUI = d.sSortJUIAscAllowed) : !a && c ? (b.sSortingClass =
d.sSortableDesc, b.sSortingClassJUI = d.sSortJUIDescAllowed) : (b.sSortingClass = d.sSortable, b.sSortingClassJUI = d.sSortJUI)
} function U(a) { if (!1 !== a.oFeatures.bAutoWidth) { var b = a.aoColumns; Ha(a); for (var c = 0, d = b.length; c < d; c++)b[c].nTh.style.width = b[c].sWidth } b = a.oScroll; ("" !== b.sY || "" !== b.sX) && Z(a); v(a, null, "column-sizing", [a]) } function $(a, b) { var c = aa(a, "bVisible"); return "number" === typeof c[b] ? c[b] : null } function ba(a, b) { var c = aa(a, "bVisible"), c = h.inArray(b, c); return -1 !== c ? c : null } function ca(a) {
return aa(a,
"bVisible").length
} function aa(a, b) { var c = []; h.map(a.aoColumns, function (a, e) { a[b] && c.push(e) }); return c } function Ia(a) { var b = a.aoColumns, c = a.aoData, d = m.ext.type.detect, e, f, g, j, i, h, l, q, u; e = 0; for (f = b.length; e < f; e++)if (l = b[e], u = [], !l.sType && l._sManualType) l.sType = l._sManualType; else if (!l.sType) { g = 0; for (j = d.length; g < j; g++) { i = 0; for (h = c.length; i < h; i++) { u[i] === k && (u[i] = B(a, i, e, "type")); q = d[g](u[i], a); if (!q && g !== d.length - 1) break; if ("html" === q) break } if (q) { l.sType = q; break } } l.sType || (l.sType = "string") } } function ib(a,
b, c, d) { var e, f, g, j, i, o, l = a.aoColumns; if (b) for (e = b.length - 1; 0 <= e; e--) { o = b[e]; var q = o.targets !== k ? o.targets : o.aTargets; h.isArray(q) || (q = [q]); f = 0; for (g = q.length; f < g; f++)if ("number" === typeof q[f] && 0 <= q[f]) { for (; l.length <= q[f];)Ga(a); d(q[f], o) } else if ("number" === typeof q[f] && 0 > q[f]) d(l.length + q[f], o); else if ("string" === typeof q[f]) { j = 0; for (i = l.length; j < i; j++)("_all" == q[f] || h(l[j].nTh).hasClass(q[f])) && d(j, o) } } if (c) { e = 0; for (a = c.length; e < a; e++)d(e, c[e]) } } function N(a, b, c, d) {
var e = a.aoData.length, f = h.extend(!0,
{}, m.models.oRow, { src: c ? "dom" : "data", idx: e }); f._aData = b; a.aoData.push(f); for (var g = a.aoColumns, j = 0, i = g.length; j < i; j++)g[j].sType = null; a.aiDisplayMaster.push(e); b = a.rowIdFn(b); b !== k && (a.aIds[b] = f); (c || !a.oFeatures.bDeferRender) && Ja(a, e, c, d); return e
} function ma(a, b) { var c; b instanceof h || (b = h(b)); return b.map(function (b, e) { c = Ka(a, e); return N(a, c.data, e, c.cells) }) } function B(a, b, c, d) {
var e = a.iDraw, f = a.aoColumns[c], g = a.aoData[b]._aData, j = f.sDefaultContent, i = f.fnGetData(g, d, { settings: a, row: b, col: c });
if (i === k) return a.iDrawError != e && null === j && (K(a, 0, "Requested unknown parameter " + ("function" == typeof f.mData ? "{function}" : "'" + f.mData + "'") + " for row " + b + ", column " + c, 4), a.iDrawError = e), j; if ((i === g || null === i) && null !== j) i = j; else if ("function" === typeof i) return i.call(g); return null === i && "display" == d ? "" : i
} function jb(a, b, c, d) { a.aoColumns[c].fnSetData(a.aoData[b]._aData, d, { settings: a, row: b, col: c }) } function La(a) { return h.map(a.match(/(\\.|[^\.])+/g) || [""], function (a) { return a.replace(/\\./g, ".") }) } function Q(a) {
if (h.isPlainObject(a)) {
var b =
{}; h.each(a, function (a, c) { c && (b[a] = Q(c)) }); return function (a, c, f, g) { var j = b[c] || b._; return j !== k ? j(a, c, f, g) : a }
} if (null === a) return function (a) { return a }; if ("function" === typeof a) return function (b, c, f, g) { return a(b, c, f, g) }; if ("string" === typeof a && (-1 !== a.indexOf(".") || -1 !== a.indexOf("[") || -1 !== a.indexOf("("))) {
var c = function (a, b, f) {
var g, j; if ("" !== f) {
j = La(f); for (var i = 0, o = j.length; i < o; i++) {
f = j[i].match(da); g = j[i].match(V); if (f) {
j[i] = j[i].replace(da, ""); "" !== j[i] && (a = a[j[i]]); g = []; j.splice(0, i + 1); j =
j.join("."); if (h.isArray(a)) { i = 0; for (o = a.length; i < o; i++)g.push(c(a[i], b, j)) } a = f[0].substring(1, f[0].length - 1); a = "" === a ? g : g.join(a); break
} else if (g) { j[i] = j[i].replace(V, ""); a = a[j[i]](); continue } if (null === a || a[j[i]] === k) return k; a = a[j[i]]
}
} return a
}; return function (b, e) { return c(b, e, a) }
} return function (b) { return b[a] }
} function R(a) {
if (h.isPlainObject(a)) return R(a._); if (null === a) return function () { }; if ("function" === typeof a) return function (b, d, e) { a(b, "set", d, e) }; if ("string" === typeof a && (-1 !== a.indexOf(".") ||
-1 !== a.indexOf("[") || -1 !== a.indexOf("("))) {
var b = function (a, d, e) {
var e = La(e), f; f = e[e.length - 1]; for (var g, j, i = 0, o = e.length - 1; i < o; i++) { g = e[i].match(da); j = e[i].match(V); if (g) { e[i] = e[i].replace(da, ""); a[e[i]] = []; f = e.slice(); f.splice(0, i + 1); g = f.join("."); if (h.isArray(d)) { j = 0; for (o = d.length; j < o; j++)f = {}, b(f, d[j], g), a[e[i]].push(f) } else a[e[i]] = d; return } j && (e[i] = e[i].replace(V, ""), a = a[e[i]](d)); if (null === a[e[i]] || a[e[i]] === k) a[e[i]] = {}; a = a[e[i]] } if (f.match(V)) a[f.replace(V, "")](d); else a[f.replace(da, "")] =
d
}; return function (c, d) { return b(c, d, a) }
} return function (b, d) { b[a] = d }
} function Ma(a) { return D(a.aoData, "_aData") } function na(a) { a.aoData.length = 0; a.aiDisplayMaster.length = 0; a.aiDisplay.length = 0; a.aIds = {} } function oa(a, b, c) { for (var d = -1, e = 0, f = a.length; e < f; e++)a[e] == b ? d = e : a[e] > b && a[e]--; -1 != d && c === k && a.splice(d, 1) } function ea(a, b, c, d) {
var e = a.aoData[b], f, g = function (c, d) { for (; c.childNodes.length;)c.removeChild(c.firstChild); c.innerHTML = B(a, b, d, "display") }; if ("dom" === c || (!c || "auto" === c) && "dom" === e.src) e._aData =
Ka(a, e, d, d === k ? k : e._aData).data; else { var j = e.anCells; if (j) if (d !== k) g(j[d], d); else { c = 0; for (f = j.length; c < f; c++)g(j[c], c) } } e._aSortData = null; e._aFilterData = null; g = a.aoColumns; if (d !== k) g[d].sType = null; else { c = 0; for (f = g.length; c < f; c++)g[c].sType = null; Na(a, e) }
} function Ka(a, b, c, d) {
var e = [], f = b.firstChild, g, j, i = 0, o, l = a.aoColumns, q = a._rowReadObject, d = d !== k ? d : q ? {} : [], u = function (a, b) { if ("string" === typeof a) { var c = a.indexOf("@"); -1 !== c && (c = a.substring(c + 1), R(a)(d, b.getAttribute(c))) } }, S = function (a) {
if (c === k ||
c === i) j = l[i], o = h.trim(a.innerHTML), j && j._bAttrSrc ? (R(j.mData._)(d, o), u(j.mData.sort, a), u(j.mData.type, a), u(j.mData.filter, a)) : q ? (j._setter || (j._setter = R(j.mData)), j._setter(d, o)) : d[i] = o; i++
}; if (f) for (; f;) { g = f.nodeName.toUpperCase(); if ("TD" == g || "TH" == g) S(f), e.push(f); f = f.nextSibling } else { e = b.anCells; f = 0; for (g = e.length; f < g; f++)S(e[f]) } if (b = b.firstChild ? b : b.nTr) (b = b.getAttribute("id")) && R(a.rowId)(d, b); return { data: d, cells: e }
} function Ja(a, b, c, d) {
var e = a.aoData[b], f = e._aData, g = [], j, i, h, l, q; if (null ===
e.nTr) { j = c || H.createElement("tr"); e.nTr = j; e.anCells = g; j._DT_RowIndex = b; Na(a, e); l = 0; for (q = a.aoColumns.length; l < q; l++) { h = a.aoColumns[l]; i = c ? d[l] : H.createElement(h.sCellType); i._DT_CellIndex = { row: b, column: l }; g.push(i); if (!c || h.mRender || h.mData !== l) i.innerHTML = B(a, b, l, "display"); h.sClass && (i.className += " " + h.sClass); h.bVisible && !c ? j.appendChild(i) : !h.bVisible && c && i.parentNode.removeChild(i); h.fnCreatedCell && h.fnCreatedCell.call(a.oInstance, i, B(a, b, l), f, b, l) } v(a, "aoRowCreatedCallback", null, [j, f, b]) } e.nTr.setAttribute("role",
"row")
} function Na(a, b) { var c = b.nTr, d = b._aData; if (c) { var e = a.rowIdFn(d); e && (c.id = e); d.DT_RowClass && (e = d.DT_RowClass.split(" "), b.__rowc = b.__rowc ? pa(b.__rowc.concat(e)) : e, h(c).removeClass(b.__rowc.join(" ")).addClass(d.DT_RowClass)); d.DT_RowAttr && h(c).attr(d.DT_RowAttr); d.DT_RowData && h(c).data(d.DT_RowData) } } function kb(a) {
var b, c, d, e, f, g = a.nTHead, j = a.nTFoot, i = 0 === h("th, td", g).length, o = a.oClasses, l = a.aoColumns; i && (e = h("<tr/>").appendTo(g)); b = 0; for (c = l.length; b < c; b++)f = l[b], d = h(f.nTh).addClass(f.sClass),
i && d.appendTo(e), a.oFeatures.bSort && (d.addClass(f.sSortingClass), !1 !== f.bSortable && (d.attr("tabindex", a.iTabIndex).attr("aria-controls", a.sTableId), Oa(a, f.nTh, b))), f.sTitle != d[0].innerHTML && d.html(f.sTitle), Pa(a, "header")(a, d, f, o); i && fa(a.aoHeader, g); h(g).find(">tr").attr("role", "row"); h(g).find(">tr>th, >tr>td").addClass(o.sHeaderTH); h(j).find(">tr>th, >tr>td").addClass(o.sFooterTH); if (null !== j) { a = a.aoFooter[0]; b = 0; for (c = a.length; b < c; b++)f = l[b], f.nTf = a[b].cell, f.sClass && h(f.nTf).addClass(f.sClass) }
}
function ga(a, b, c) {
var d, e, f, g = [], j = [], i = a.aoColumns.length, o; if (b) {
c === k && (c = !1); d = 0; for (e = b.length; d < e; d++) { g[d] = b[d].slice(); g[d].nTr = b[d].nTr; for (f = i - 1; 0 <= f; f--)!a.aoColumns[f].bVisible && !c && g[d].splice(f, 1); j.push([]) } d = 0; for (e = g.length; d < e; d++) {
if (a = g[d].nTr) for (; f = a.firstChild;)a.removeChild(f); f = 0; for (b = g[d].length; f < b; f++)if (o = i = 1, j[d][f] === k) {
a.appendChild(g[d][f].cell); for (j[d][f] = 1; g[d + i] !== k && g[d][f].cell == g[d + i][f].cell;)j[d + i][f] = 1, i++; for (; g[d][f + o] !== k && g[d][f].cell == g[d][f + o].cell;) {
for (c =
0; c < i; c++)j[d + c][f + o] = 1; o++
} h(g[d][f].cell).attr("rowspan", i).attr("colspan", o)
}
}
}
} function O(a) {
var b = v(a, "aoPreDrawCallback", "preDraw", [a]); if (-1 !== h.inArray(!1, b)) C(a, !1); else {
var b = [], c = 0, d = a.asStripeClasses, e = d.length, f = a.oLanguage, g = a.iInitDisplayStart, j = "ssp" == y(a), i = a.aiDisplay; a.bDrawing = !0; g !== k && -1 !== g && (a._iDisplayStart = j ? g : g >= a.fnRecordsDisplay() ? 0 : g, a.iInitDisplayStart = -1); var g = a._iDisplayStart, o = a.fnDisplayEnd(); if (a.bDeferLoading) a.bDeferLoading = !1, a.iDraw++ , C(a, !1); else if (j) {
if (!a.bDestroying &&
!lb(a)) return
} else a.iDraw++; if (0 !== i.length) { f = j ? a.aoData.length : o; for (j = j ? 0 : g; j < f; j++) { var l = i[j], q = a.aoData[l]; null === q.nTr && Ja(a, l); l = q.nTr; if (0 !== e) { var u = d[c % e]; q._sRowStripe != u && (h(l).removeClass(q._sRowStripe).addClass(u), q._sRowStripe = u) } v(a, "aoRowCallback", null, [l, q._aData, c, j]); b.push(l); c++ } } else c = f.sZeroRecords, 1 == a.iDraw && "ajax" == y(a) ? c = f.sLoadingRecords : f.sEmptyTable && 0 === a.fnRecordsTotal() && (c = f.sEmptyTable), b[0] = h("<tr/>", { "class": e ? d[0] : "" }).append(h("<td />", {
valign: "top", colSpan: ca(a),
"class": a.oClasses.sRowEmpty
}).html(c))[0]; v(a, "aoHeaderCallback", "header", [h(a.nTHead).children("tr")[0], Ma(a), g, o, i]); v(a, "aoFooterCallback", "footer", [h(a.nTFoot).children("tr")[0], Ma(a), g, o, i]); d = h(a.nTBody); d.children().detach(); d.append(h(b)); v(a, "aoDrawCallback", "draw", [a]); a.bSorted = !1; a.bFiltered = !1; a.bDrawing = !1
}
} function T(a, b) {
var c = a.oFeatures, d = c.bFilter; c.bSort && mb(a); d ? ha(a, a.oPreviousSearch) : a.aiDisplay = a.aiDisplayMaster.slice(); !0 !== b && (a._iDisplayStart = 0); a._drawHold = b; O(a); a._drawHold =
!1
} function nb(a) {
var b = a.oClasses, c = h(a.nTable), c = h("<div/>").insertBefore(c), d = a.oFeatures, e = h("<div/>", { id: a.sTableId + "_wrapper", "class": b.sWrapper + (a.nTFoot ? "" : " " + b.sNoFooter) }); a.nHolding = c[0]; a.nTableWrapper = e[0]; a.nTableReinsertBefore = a.nTable.nextSibling; for (var f = a.sDom.split(""), g, j, i, o, l, q, u = 0; u < f.length; u++) {
g = null; j = f[u]; if ("<" == j) {
i = h("<div/>")[0]; o = f[u + 1]; if ("'" == o || '"' == o) {
l = ""; for (q = 2; f[u + q] != o;)l += f[u + q], q++; "H" == l ? l = b.sJUIHeader : "F" == l && (l = b.sJUIFooter); -1 != l.indexOf(".") ? (o = l.split("."),
i.id = o[0].substr(1, o[0].length - 1), i.className = o[1]) : "#" == l.charAt(0) ? i.id = l.substr(1, l.length - 1) : i.className = l; u += q
} e.append(i); e = h(i)
} else if (">" == j) e = e.parent(); else if ("l" == j && d.bPaginate && d.bLengthChange) g = ob(a); else if ("f" == j && d.bFilter) g = pb(a); else if ("r" == j && d.bProcessing) g = qb(a); else if ("t" == j) g = rb(a); else if ("i" == j && d.bInfo) g = sb(a); else if ("p" == j && d.bPaginate) g = tb(a); else if (0 !== m.ext.feature.length) { i = m.ext.feature; q = 0; for (o = i.length; q < o; q++)if (j == i[q].cFeature) { g = i[q].fnInit(a); break } } g &&
(i = a.aanFeatures, i[j] || (i[j] = []), i[j].push(g), e.append(g))
} c.replaceWith(e); a.nHolding = null
} function fa(a, b) {
var c = h(b).children("tr"), d, e, f, g, j, i, o, l, q, u; a.splice(0, a.length); f = 0; for (i = c.length; f < i; f++)a.push([]); f = 0; for (i = c.length; f < i; f++) {
d = c[f]; for (e = d.firstChild; e;) {
if ("TD" == e.nodeName.toUpperCase() || "TH" == e.nodeName.toUpperCase()) {
l = 1 * e.getAttribute("colspan"); q = 1 * e.getAttribute("rowspan"); l = !l || 0 === l || 1 === l ? 1 : l; q = !q || 0 === q || 1 === q ? 1 : q; g = 0; for (j = a[f]; j[g];)g++; o = g; u = 1 === l ? !0 : !1; for (j = 0; j < l; j++)for (g =
0; g < q; g++)a[f + g][o + j] = { cell: e, unique: u }, a[f + g].nTr = d
} e = e.nextSibling
}
}
} function qa(a, b, c) { var d = []; c || (c = a.aoHeader, b && (c = [], fa(c, b))); for (var b = 0, e = c.length; b < e; b++)for (var f = 0, g = c[b].length; f < g; f++)if (c[b][f].unique && (!d[f] || !a.bSortCellsTop)) d[f] = c[b][f].cell; return d } function ra(a, b, c) {
v(a, "aoServerParams", "serverParams", [b]); if (b && h.isArray(b)) { var d = {}, e = /(.*?)\[\]$/; h.each(b, function (a, b) { var c = b.name.match(e); c ? (c = c[0], d[c] || (d[c] = []), d[c].push(b.value)) : d[b.name] = b.value }); b = d } var f, g = a.ajax,
j = a.oInstance, i = function (b) { v(a, null, "xhr", [a, b, a.jqXHR]); c(b) }; if (h.isPlainObject(g) && g.data) { f = g.data; var o = h.isFunction(f) ? f(b, a) : f, b = h.isFunction(f) && o ? o : h.extend(!0, b, o); delete g.data } o = { data: b, success: function (b) { var c = b.error || b.sError; c && K(a, 0, c); a.json = b; i(b) }, dataType: "json", cache: !1, type: a.sServerMethod, error: function (b, c) { var d = v(a, null, "xhr", [a, null, a.jqXHR]); -1 === h.inArray(!0, d) && ("parsererror" == c ? K(a, 0, "Invalid JSON response", 1) : 4 === b.readyState && K(a, 0, "Ajax error", 7)); C(a, !1) } }; a.oAjaxData =
b; v(a, null, "preXhr", [a, b]); a.fnServerData ? a.fnServerData.call(j, a.sAjaxSource, h.map(b, function (a, b) { return { name: b, value: a } }), i, a) : a.sAjaxSource || "string" === typeof g ? a.jqXHR = h.ajax(h.extend(o, { url: g || a.sAjaxSource })) : h.isFunction(g) ? a.jqXHR = g.call(j, b, i, a) : (a.jqXHR = h.ajax(h.extend(o, g)), g.data = f)
} function lb(a) { return a.bAjaxDataGet ? (a.iDraw++ , C(a, !0), ra(a, ub(a), function (b) { vb(a, b) }), !1) : !0 } function ub(a) {
var b = a.aoColumns, c = b.length, d = a.oFeatures, e = a.oPreviousSearch, f = a.aoPreSearchCols, g, j = [], i, o,
l, q = W(a); g = a._iDisplayStart; i = !1 !== d.bPaginate ? a._iDisplayLength : -1; var k = function (a, b) { j.push({ name: a, value: b }) }; k("sEcho", a.iDraw); k("iColumns", c); k("sColumns", D(b, "sName").join(",")); k("iDisplayStart", g); k("iDisplayLength", i); var S = { draw: a.iDraw, columns: [], order: [], start: g, length: i, search: { value: e.sSearch, regex: e.bRegex } }; for (g = 0; g < c; g++)o = b[g], l = f[g], i = "function" == typeof o.mData ? "function" : o.mData, S.columns.push({
data: i, name: o.sName, searchable: o.bSearchable, orderable: o.bSortable, search: {
value: l.sSearch,
regex: l.bRegex
}
}), k("mDataProp_" + g, i), d.bFilter && (k("sSearch_" + g, l.sSearch), k("bRegex_" + g, l.bRegex), k("bSearchable_" + g, o.bSearchable)), d.bSort && k("bSortable_" + g, o.bSortable); d.bFilter && (k("sSearch", e.sSearch), k("bRegex", e.bRegex)); d.bSort && (h.each(q, function (a, b) { S.order.push({ column: b.col, dir: b.dir }); k("iSortCol_" + a, b.col); k("sSortDir_" + a, b.dir) }), k("iSortingCols", q.length)); b = m.ext.legacy.ajax; return null === b ? a.sAjaxSource ? j : S : b ? j : S
} function vb(a, b) {
var c = sa(a, b), d = b.sEcho !== k ? b.sEcho : b.draw, e =
b.iTotalRecords !== k ? b.iTotalRecords : b.recordsTotal, f = b.iTotalDisplayRecords !== k ? b.iTotalDisplayRecords : b.recordsFiltered; if (d) { if (1 * d < a.iDraw) return; a.iDraw = 1 * d } na(a); a._iRecordsTotal = parseInt(e, 10); a._iRecordsDisplay = parseInt(f, 10); d = 0; for (e = c.length; d < e; d++)N(a, c[d]); a.aiDisplay = a.aiDisplayMaster.slice(); a.bAjaxDataGet = !1; O(a); a._bInitComplete || ta(a, b); a.bAjaxDataGet = !0; C(a, !1)
} function sa(a, b) {
var c = h.isPlainObject(a.ajax) && a.ajax.dataSrc !== k ? a.ajax.dataSrc : a.sAjaxDataProp; return "data" === c ? b.aaData ||
b[c] : "" !== c ? Q(c)(b) : b
} function pb(a) {
var b = a.oClasses, c = a.sTableId, d = a.oLanguage, e = a.oPreviousSearch, f = a.aanFeatures, g = '<input type="search" class="' + b.sFilterInput + '"/>', j = d.sSearch, j = j.match(/_INPUT_/) ? j.replace("_INPUT_", g) : j + g, b = h("<div/>", { id: !f.f ? c + "_filter" : null, "class": b.sFilter }).append(h("<label/>").append(j)), f = function () { var b = !this.value ? "" : this.value; b != e.sSearch && (ha(a, { sSearch: b, bRegex: e.bRegex, bSmart: e.bSmart, bCaseInsensitive: e.bCaseInsensitive }), a._iDisplayStart = 0, O(a)) }, g = null !==
a.searchDelay ? a.searchDelay : "ssp" === y(a) ? 400 : 0, i = h("input", b).val(e.sSearch).attr("placeholder", d.sSearchPlaceholder).bind("keyup.DT search.DT input.DT paste.DT cut.DT", g ? ua(f, g) : f).bind("keypress.DT", function (a) { if (13 == a.keyCode) return !1 }).attr("aria-controls", c); h(a.nTable).on("search.dt.DT", function (b, c) { if (a === c) try { i[0] !== H.activeElement && i.val(e.sSearch) } catch (d) { } }); return b[0]
} function ha(a, b, c) {
var d = a.oPreviousSearch, e = a.aoPreSearchCols, f = function (a) {
d.sSearch = a.sSearch; d.bRegex = a.bRegex;
d.bSmart = a.bSmart; d.bCaseInsensitive = a.bCaseInsensitive
}; Ia(a); if ("ssp" != y(a)) { wb(a, b.sSearch, c, b.bEscapeRegex !== k ? !b.bEscapeRegex : b.bRegex, b.bSmart, b.bCaseInsensitive); f(b); for (b = 0; b < e.length; b++)xb(a, e[b].sSearch, b, e[b].bEscapeRegex !== k ? !e[b].bEscapeRegex : e[b].bRegex, e[b].bSmart, e[b].bCaseInsensitive); yb(a) } else f(b); a.bFiltered = !0; v(a, null, "search", [a])
} function yb(a) {
for (var b = m.ext.search, c = a.aiDisplay, d, e, f = 0, g = b.length; f < g; f++) {
for (var j = [], i = 0, o = c.length; i < o; i++)e = c[i], d = a.aoData[e], b[f](a,
d._aFilterData, e, d._aData, i) && j.push(e); c.length = 0; h.merge(c, j)
}
} function xb(a, b, c, d, e, f) { if ("" !== b) for (var g = a.aiDisplay, d = Qa(b, d, e, f), e = g.length - 1; 0 <= e; e--)b = a.aoData[g[e]]._aFilterData[c], d.test(b) || g.splice(e, 1) } function wb(a, b, c, d, e, f) {
var d = Qa(b, d, e, f), e = a.oPreviousSearch.sSearch, f = a.aiDisplayMaster, g; 0 !== m.ext.search.length && (c = !0); g = zb(a); if (0 >= b.length) a.aiDisplay = f.slice(); else {
if (g || c || e.length > b.length || 0 !== b.indexOf(e) || a.bSorted) a.aiDisplay = f.slice(); b = a.aiDisplay; for (c = b.length - 1; 0 <=
c; c--)d.test(a.aoData[b[c]]._sFilterRow) || b.splice(c, 1)
}
} function Qa(a, b, c, d) { a = b ? a : va(a); c && (a = "^(?=.*?" + h.map(a.match(/"[^"]+"|[^ ]+/g) || [""], function (a) { if ('"' === a.charAt(0)) var b = a.match(/^"(.*)"$/), a = b ? b[1] : a; return a.replace('"', "") }).join(")(?=.*?") + ").*$"); return RegExp(a, d ? "i" : "") } function va(a) { return a.replace(Yb, "\\$1") } function zb(a) {
var b = a.aoColumns, c, d, e, f, g, j, i, h, l = m.ext.type.search; c = !1; d = 0; for (f = a.aoData.length; d < f; d++)if (h = a.aoData[d], !h._aFilterData) {
j = []; e = 0; for (g = b.length; e <
g; e++)c = b[e], c.bSearchable ? (i = B(a, d, e, "filter"), l[c.sType] && (i = l[c.sType](i)), null === i && (i = ""), "string" !== typeof i && i.toString && (i = i.toString())) : i = "", i.indexOf && -1 !== i.indexOf("&") && (wa.innerHTML = i, i = Zb ? wa.textContent : wa.innerText), i.replace && (i = i.replace(/[\r\n]/g, "")), j.push(i); h._aFilterData = j; h._sFilterRow = j.join(" "); c = !0
} return c
} function Ab(a) { return { search: a.sSearch, smart: a.bSmart, regex: a.bRegex, caseInsensitive: a.bCaseInsensitive } } function Bb(a) {
return {
sSearch: a.search, bSmart: a.smart, bRegex: a.regex,
bCaseInsensitive: a.caseInsensitive
}
} function sb(a) { var b = a.sTableId, c = a.aanFeatures.i, d = h("<div/>", { "class": a.oClasses.sInfo, id: !c ? b + "_info" : null }); c || (a.aoDrawCallback.push({ fn: Cb, sName: "information" }), d.attr("role", "status").attr("aria-live", "polite"), h(a.nTable).attr("aria-describedby", b + "_info")); return d[0] } function Cb(a) {
var b = a.aanFeatures.i; if (0 !== b.length) {
var c = a.oLanguage, d = a._iDisplayStart + 1, e = a.fnDisplayEnd(), f = a.fnRecordsTotal(), g = a.fnRecordsDisplay(), j = g ? c.sInfo : c.sInfoEmpty; g !== f &&
(j += " " + c.sInfoFiltered); j += c.sInfoPostFix; j = Db(a, j); c = c.fnInfoCallback; null !== c && (j = c.call(a.oInstance, a, d, e, f, g, j)); h(b).html(j)
}
} function Db(a, b) {
var c = a.fnFormatNumber, d = a._iDisplayStart + 1, e = a._iDisplayLength, f = a.fnRecordsDisplay(), g = -1 === e; return b.replace(/_START_/g, c.call(a, d)).replace(/_END_/g, c.call(a, a.fnDisplayEnd())).replace(/_MAX_/g, c.call(a, a.fnRecordsTotal())).replace(/_TOTAL_/g, c.call(a, f)).replace(/_PAGE_/g, c.call(a, g ? 1 : Math.ceil(d / e))).replace(/_PAGES_/g, c.call(a, g ? 1 : Math.ceil(f /
e)))
} function ia(a) { var b, c, d = a.iInitDisplayStart, e = a.aoColumns, f; c = a.oFeatures; var g = a.bDeferLoading; if (a.bInitialised) { nb(a); kb(a); ga(a, a.aoHeader); ga(a, a.aoFooter); C(a, !0); c.bAutoWidth && Ha(a); b = 0; for (c = e.length; b < c; b++)f = e[b], f.sWidth && (f.nTh.style.width = w(f.sWidth)); v(a, null, "preInit", [a]); T(a); e = y(a); if ("ssp" != e || g) "ajax" == e ? ra(a, [], function (c) { var f = sa(a, c); for (b = 0; b < f.length; b++)N(a, f[b]); a.iInitDisplayStart = d; T(a); C(a, !1); ta(a, c) }, a) : (C(a, !1), ta(a)) } else setTimeout(function () { ia(a) }, 200) }
function ta(a, b) { a._bInitComplete = !0; (b || a.oInit.aaData) && U(a); v(a, null, "plugin-init", [a, b]); v(a, "aoInitComplete", "init", [a, b]) } function Ra(a, b) { var c = parseInt(b, 10); a._iDisplayLength = c; Sa(a); v(a, null, "length", [a, c]) } function ob(a) {
for (var b = a.oClasses, c = a.sTableId, d = a.aLengthMenu, e = h.isArray(d[0]), f = e ? d[0] : d, d = e ? d[1] : d, e = h("<select/>", { name: c + "_length", "aria-controls": c, "class": b.sLengthSelect }), g = 0, j = f.length; g < j; g++)e[0][g] = new Option(d[g], f[g]); var i = h("<div><label/></div>").addClass(b.sLength);
a.aanFeatures.l || (i[0].id = c + "_length"); i.children().append(a.oLanguage.sLengthMenu.replace("_MENU_", e[0].outerHTML)); h("select", i).val(a._iDisplayLength).bind("change.DT", function () { Ra(a, h(this).val()); O(a) }); h(a.nTable).bind("length.dt.DT", function (b, c, d) { a === c && h("select", i).val(d) }); return i[0]
} function tb(a) {
var b = a.sPaginationType, c = m.ext.pager[b], d = "function" === typeof c, e = function (a) { O(a) }, b = h("<div/>").addClass(a.oClasses.sPaging + b)[0], f = a.aanFeatures; d || c.fnInit(a, b, e); f.p || (b.id = a.sTableId +
"_paginate", a.aoDrawCallback.push({ fn: function (a) { if (d) { var b = a._iDisplayStart, i = a._iDisplayLength, h = a.fnRecordsDisplay(), l = -1 === i, b = l ? 0 : Math.ceil(b / i), i = l ? 1 : Math.ceil(h / i), h = c(b, i), k, l = 0; for (k = f.p.length; l < k; l++)Pa(a, "pageButton")(a, f.p[l], l, h, b, i) } else c.fnUpdate(a, e) }, sName: "pagination" })); return b
} function Ta(a, b, c) {
var d = a._iDisplayStart, e = a._iDisplayLength, f = a.fnRecordsDisplay(); 0 === f || -1 === e ? d = 0 : "number" === typeof b ? (d = b * e, d > f && (d = 0)) : "first" == b ? d = 0 : "previous" == b ? (d = 0 <= e ? d - e : 0, 0 > d && (d = 0)) : "next" ==
b ? d + e < f && (d += e) : "last" == b ? d = Math.floor((f - 1) / e) * e : K(a, 0, "Unknown paging action: " + b, 5); b = a._iDisplayStart !== d; a._iDisplayStart = d; b && (v(a, null, "page", [a]), c && O(a)); return b
} function qb(a) { return h("<div/>", { id: !a.aanFeatures.r ? a.sTableId + "_processing" : null, "class": a.oClasses.sProcessing }).html(a.oLanguage.sProcessing).insertBefore(a.nTable)[0] } function C(a, b) { a.oFeatures.bProcessing && h(a.aanFeatures.r).css("display", b ? "block" : "none"); v(a, null, "processing", [a, b]) } function rb(a) {
var b = h(a.nTable); b.attr("role",
"grid"); var c = a.oScroll; if ("" === c.sX && "" === c.sY) return a.nTable; var d = c.sX, e = c.sY, f = a.oClasses, g = b.children("caption"), j = g.length ? g[0]._captionSide : null, i = h(b[0].cloneNode(!1)), o = h(b[0].cloneNode(!1)), l = b.children("tfoot"); l.length || (l = null); i = h("<div/>", { "class": f.sScrollWrapper }).append(h("<div/>", { "class": f.sScrollHead }).css({ overflow: "hidden", position: "relative", border: 0, width: d ? !d ? null : w(d) : "100%" }).append(h("<div/>", { "class": f.sScrollHeadInner }).css({
"box-sizing": "content-box", width: c.sXInner ||
"100%"
}).append(i.removeAttr("id").css("margin-left", 0).append("top" === j ? g : null).append(b.children("thead"))))).append(h("<div/>", { "class": f.sScrollBody }).css({ position: "relative", overflow: "auto", width: !d ? null : w(d) }).append(b)); l && i.append(h("<div/>", { "class": f.sScrollFoot }).css({ overflow: "hidden", border: 0, width: d ? !d ? null : w(d) : "100%" }).append(h("<div/>", { "class": f.sScrollFootInner }).append(o.removeAttr("id").css("margin-left", 0).append("bottom" === j ? g : null).append(b.children("tfoot"))))); var b = i.children(),
k = b[0], f = b[1], u = l ? b[2] : null; if (d) h(f).on("scroll.DT", function () { var a = this.scrollLeft; k.scrollLeft = a; l && (u.scrollLeft = a) }); h(f).css(e && c.bCollapse ? "max-height" : "height", e); a.nScrollHead = k; a.nScrollBody = f; a.nScrollFoot = u; a.aoDrawCallback.push({ fn: Z, sName: "scrolling" }); return i[0]
} function Z(a) {
var b = a.oScroll, c = b.sX, d = b.sXInner, e = b.sY, b = b.iBarWidth, f = h(a.nScrollHead), g = f[0].style, j = f.children("div"), i = j[0].style, o = j.children("table"), j = a.nScrollBody, l = h(j), q = j.style, u = h(a.nScrollFoot).children("div"),
m = u.children("table"), n = h(a.nTHead), p = h(a.nTable), t = p[0], v = t.style, r = a.nTFoot ? h(a.nTFoot) : null, Eb = a.oBrowser, Ua = Eb.bScrollOversize, s, L, P, x, y = [], z = [], A = [], B, C = function (a) { a = a.style; a.paddingTop = "0"; a.paddingBottom = "0"; a.borderTopWidth = "0"; a.borderBottomWidth = "0"; a.height = 0 }; L = j.scrollHeight > j.clientHeight; if (a.scrollBarVis !== L && a.scrollBarVis !== k) a.scrollBarVis = L, U(a); else {
a.scrollBarVis = L; p.children("thead, tfoot").remove(); x = n.clone().prependTo(p); n = n.find("tr"); L = x.find("tr"); x.find("th, td").removeAttr("tabindex");
r && (P = r.clone().prependTo(p), s = r.find("tr"), P = P.find("tr")); c || (q.width = "100%", f[0].style.width = "100%"); h.each(qa(a, x), function (b, c) { B = $(a, b); c.style.width = a.aoColumns[B].sWidth }); r && I(function (a) { a.style.width = "" }, P); f = p.outerWidth(); if ("" === c) { v.width = "100%"; if (Ua && (p.find("tbody").height() > j.offsetHeight || "scroll" == l.css("overflow-y"))) v.width = w(p.outerWidth() - b); f = p.outerWidth() } else "" !== d && (v.width = w(d), f = p.outerWidth()); I(C, L); I(function (a) { A.push(a.innerHTML); y.push(w(h(a).css("width"))) },
L); I(function (a, b) { a.style.width = y[b] }, n); h(L).height(0); r && (I(C, P), I(function (a) { z.push(w(h(a).css("width"))) }, P), I(function (a, b) { a.style.width = z[b] }, s), h(P).height(0)); I(function (a, b) { a.innerHTML = '<div class="dataTables_sizing" style="height:0;overflow:hidden;">' + A[b] + "</div>"; a.style.width = y[b] }, L); r && I(function (a, b) { a.innerHTML = ""; a.style.width = z[b] }, P); if (p.outerWidth() < f) {
s = j.scrollHeight > j.offsetHeight || "scroll" == l.css("overflow-y") ? f + b : f; if (Ua && (j.scrollHeight > j.offsetHeight || "scroll" == l.css("overflow-y"))) v.width =
w(s - b); ("" === c || "" !== d) && K(a, 1, "Possible column misalignment", 6)
} else s = "100%"; q.width = w(s); g.width = w(s); r && (a.nScrollFoot.style.width = w(s)); !e && Ua && (q.height = w(t.offsetHeight + b)); c = p.outerWidth(); o[0].style.width = w(c); i.width = w(c); d = p.height() > j.clientHeight || "scroll" == l.css("overflow-y"); e = "padding" + (Eb.bScrollbarLeft ? "Left" : "Right"); i[e] = d ? b + "px" : "0px"; r && (m[0].style.width = w(c), u[0].style.width = w(c), u[0].style[e] = d ? b + "px" : "0px"); l.scroll(); if ((a.bSorted || a.bFiltered) && !a._drawHold) j.scrollTop =
0
}
} function I(a, b, c) { for (var d = 0, e = 0, f = b.length, g, j; e < f;) { g = b[e].firstChild; for (j = c ? c[e].firstChild : null; g;)1 === g.nodeType && (c ? a(g, j, d) : a(g, d), d++), g = g.nextSibling, j = c ? j.nextSibling : null; e++ } } function Ha(a) {
var b = a.nTable, c = a.aoColumns, d = a.oScroll, e = d.sY, f = d.sX, g = d.sXInner, j = c.length, i = aa(a, "bVisible"), o = h("th", a.nTHead), l = b.getAttribute("width"), k = b.parentNode, u = !1, m, n, p = a.oBrowser, d = p.bScrollOversize; (m = b.style.width) && -1 !== m.indexOf("%") && (l = m); for (m = 0; m < i.length; m++)n = c[i[m]], null !== n.sWidth &&
(n.sWidth = Fb(n.sWidthOrig, k), u = !0); if (d || !u && !f && !e && j == ca(a) && j == o.length) for (m = 0; m < j; m++)i = $(a, m), null !== i && (c[i].sWidth = w(o.eq(m).width())); else {
j = h(b).clone().css("visibility", "hidden").removeAttr("id"); j.find("tbody tr").remove(); var t = h("<tr/>").appendTo(j.find("tbody")); j.find("thead, tfoot").remove(); j.append(h(a.nTHead).clone()).append(h(a.nTFoot).clone()); j.find("tfoot th, tfoot td").css("width", ""); o = qa(a, j.find("thead")[0]); for (m = 0; m < i.length; m++)n = c[i[m]], o[m].style.width = null !== n.sWidthOrig &&
"" !== n.sWidthOrig ? w(n.sWidthOrig) : "", n.sWidthOrig && f && h(o[m]).append(h("<div/>").css({ width: n.sWidthOrig, margin: 0, padding: 0, border: 0, height: 1 })); if (a.aoData.length) for (m = 0; m < i.length; m++)u = i[m], n = c[u], h(Gb(a, u)).clone(!1).append(n.sContentPadding).appendTo(t); n = h("<div/>").css(f || e ? { position: "absolute", top: 0, left: 0, height: 1, right: 0, overflow: "hidden" } : {}).append(j).appendTo(k); f && g ? j.width(g) : f ? (j.css("width", "auto"), j.removeAttr("width"), j.width() < k.clientWidth && l && j.width(k.clientWidth)) : e ? j.width(k.clientWidth) :
l && j.width(l); for (m = e = 0; m < i.length; m++)k = h(o[m]), g = k.outerWidth() - k.width(), k = p.bBounding ? Math.ceil(o[m].getBoundingClientRect().width) : k.outerWidth(), e += k, c[i[m]].sWidth = w(k - g); b.style.width = w(e); n.remove()
} l && (b.style.width = w(l)); if ((l || f) && !a._reszEvt) b = function () { h(E).bind("resize.DT-" + a.sInstance, ua(function () { U(a) })) }, d ? setTimeout(b, 1E3) : b(), a._reszEvt = !0
} function ua(a, b) {
var c = b !== k ? b : 200, d, e; return function () {
var b = this, g = +new Date, j = arguments; d && g < d + c ? (clearTimeout(e), e = setTimeout(function () {
d =
k; a.apply(b, j)
}, c)) : (d = g, a.apply(b, j))
}
} function Fb(a, b) { if (!a) return 0; var c = h("<div/>").css("width", w(a)).appendTo(b || H.body), d = c[0].offsetWidth; c.remove(); return d } function Gb(a, b) { var c = Hb(a, b); if (0 > c) return null; var d = a.aoData[c]; return !d.nTr ? h("<td/>").html(B(a, c, b, "display"))[0] : d.anCells[b] } function Hb(a, b) { for (var c, d = -1, e = -1, f = 0, g = a.aoData.length; f < g; f++)c = B(a, f, b, "display") + "", c = c.replace($b, ""), c = c.replace(/&nbsp;/g, " "), c.length > d && (d = c.length, e = f); return e } function w(a) {
return null ===
a ? "0px" : "number" == typeof a ? 0 > a ? "0px" : a + "px" : a.match(/\d$/) ? a + "px" : a
} function W(a) {
var b, c, d = [], e = a.aoColumns, f, g, j, i; b = a.aaSortingFixed; c = h.isPlainObject(b); var o = []; f = function (a) { a.length && !h.isArray(a[0]) ? o.push(a) : h.merge(o, a) }; h.isArray(b) && f(b); c && b.pre && f(b.pre); f(a.aaSorting); c && b.post && f(b.post); for (a = 0; a < o.length; a++) {
i = o[a][0]; f = e[i].aDataSort; b = 0; for (c = f.length; b < c; b++)g = f[b], j = e[g].sType || "string", o[a]._idx === k && (o[a]._idx = h.inArray(o[a][1], e[g].asSorting)), d.push({
src: i, col: g, dir: o[a][1],
index: o[a]._idx, type: j, formatter: m.ext.type.order[j + "-pre"]
})
} return d
} function mb(a) {
var b, c, d = [], e = m.ext.type.order, f = a.aoData, g = 0, j, i = a.aiDisplayMaster, h; Ia(a); h = W(a); b = 0; for (c = h.length; b < c; b++)j = h[b], j.formatter && g++ , Ib(a, j.col); if ("ssp" != y(a) && 0 !== h.length) {
b = 0; for (c = i.length; b < c; b++)d[i[b]] = b; g === h.length ? i.sort(function (a, b) {
var c, e, g, j, i = h.length, k = f[a]._aSortData, m = f[b]._aSortData; for (g = 0; g < i; g++)if (j = h[g], c = k[j.col], e = m[j.col], c = c < e ? -1 : c > e ? 1 : 0, 0 !== c) return "asc" === j.dir ? c : -c; c = d[a]; e = d[b];
return c < e ? -1 : c > e ? 1 : 0
}) : i.sort(function (a, b) { var c, g, j, i, k = h.length, m = f[a]._aSortData, p = f[b]._aSortData; for (j = 0; j < k; j++)if (i = h[j], c = m[i.col], g = p[i.col], i = e[i.type + "-" + i.dir] || e["string-" + i.dir], c = i(c, g), 0 !== c) return c; c = d[a]; g = d[b]; return c < g ? -1 : c > g ? 1 : 0 })
} a.bSorted = !0
} function Jb(a) {
for (var b, c, d = a.aoColumns, e = W(a), a = a.oLanguage.oAria, f = 0, g = d.length; f < g; f++) {
c = d[f]; var j = c.asSorting; b = c.sTitle.replace(/<.*?>/g, ""); var i = c.nTh; i.removeAttribute("aria-sort"); c.bSortable && (0 < e.length && e[0].col == f ? (i.setAttribute("aria-sort",
"asc" == e[0].dir ? "ascending" : "descending"), c = j[e[0].index + 1] || j[0]) : c = j[0], b += "asc" === c ? a.sSortAscending : a.sSortDescending); i.setAttribute("aria-label", b)
}
} function Va(a, b, c, d) {
var e = a.aaSorting, f = a.aoColumns[b].asSorting, g = function (a, b) { var c = a._idx; c === k && (c = h.inArray(a[1], f)); return c + 1 < f.length ? c + 1 : b ? null : 0 }; "number" === typeof e[0] && (e = a.aaSorting = [e]); c && a.oFeatures.bSortMulti ? (c = h.inArray(b, D(e, "0")), -1 !== c ? (b = g(e[c], !0), null === b && 1 === e.length && (b = 0), null === b ? e.splice(c, 1) : (e[c][1] = f[b], e[c]._idx =
b)) : (e.push([b, f[0], 0]), e[e.length - 1]._idx = 0)) : e.length && e[0][0] == b ? (b = g(e[0]), e.length = 1, e[0][1] = f[b], e[0]._idx = b) : (e.length = 0, e.push([b, f[0]]), e[0]._idx = 0); T(a); "function" == typeof d && d(a)
} function Oa(a, b, c, d) { var e = a.aoColumns[c]; Wa(b, {}, function (b) { !1 !== e.bSortable && (a.oFeatures.bProcessing ? (C(a, !0), setTimeout(function () { Va(a, c, b.shiftKey, d); "ssp" !== y(a) && C(a, !1) }, 0)) : Va(a, c, b.shiftKey, d)) }) } function xa(a) {
var b = a.aLastSort, c = a.oClasses.sSortColumn, d = W(a), e = a.oFeatures, f, g; if (e.bSort && e.bSortClasses) {
e =
0; for (f = b.length; e < f; e++)g = b[e].src, h(D(a.aoData, "anCells", g)).removeClass(c + (2 > e ? e + 1 : 3)); e = 0; for (f = d.length; e < f; e++)g = d[e].src, h(D(a.aoData, "anCells", g)).addClass(c + (2 > e ? e + 1 : 3))
} a.aLastSort = d
} function Ib(a, b) { var c = a.aoColumns[b], d = m.ext.order[c.sSortDataType], e; d && (e = d.call(a.oInstance, a, b, ba(a, b))); for (var f, g = m.ext.type.order[c.sType + "-pre"], j = 0, i = a.aoData.length; j < i; j++)if (c = a.aoData[j], c._aSortData || (c._aSortData = []), !c._aSortData[b] || d) f = d ? e[j] : B(a, j, b, "sort"), c._aSortData[b] = g ? g(f) : f } function ya(a) {
if (a.oFeatures.bStateSave &&
!a.bDestroying) { var b = { time: +new Date, start: a._iDisplayStart, length: a._iDisplayLength, order: h.extend(!0, [], a.aaSorting), search: Ab(a.oPreviousSearch), columns: h.map(a.aoColumns, function (b, d) { return { visible: b.bVisible, search: Ab(a.aoPreSearchCols[d]) } }) }; v(a, "aoStateSaveParams", "stateSaveParams", [a, b]); a.oSavedState = b; a.fnStateSaveCallback.call(a.oInstance, a, b) }
} function Kb(a) {
var b, c, d = a.aoColumns; if (a.oFeatures.bStateSave) {
var e = a.fnStateLoadCallback.call(a.oInstance, a); if (e && e.time && (b = v(a, "aoStateLoadParams",
"stateLoadParams", [a, e]), -1 === h.inArray(!1, b) && (b = a.iStateDuration, !(0 < b && e.time < +new Date - 1E3 * b) && d.length === e.columns.length))) {
a.oLoadedState = h.extend(!0, {}, e); e.start !== k && (a._iDisplayStart = e.start, a.iInitDisplayStart = e.start); e.length !== k && (a._iDisplayLength = e.length); e.order !== k && (a.aaSorting = [], h.each(e.order, function (b, c) { a.aaSorting.push(c[0] >= d.length ? [0, c[1]] : c) })); e.search !== k && h.extend(a.oPreviousSearch, Bb(e.search)); b = 0; for (c = e.columns.length; b < c; b++) {
var f = e.columns[b]; f.visible !==
k && (d[b].bVisible = f.visible); f.search !== k && h.extend(a.aoPreSearchCols[b], Bb(f.search))
} v(a, "aoStateLoaded", "stateLoaded", [a, e])
}
}
} function za(a) { var b = m.settings, a = h.inArray(a, D(b, "nTable")); return -1 !== a ? b[a] : null } function K(a, b, c, d) {
c = "DataTables warning: " + (a ? "table id=" + a.sTableId + " - " : "") + c; d && (c += ". For more information about this error, please see http://datatables.net/tn/" + d); if (b) E.console && console.log && console.log(c); else if (b = m.ext, b = b.sErrMode || b.errMode, a && v(a, null, "error", [a, d, c]), "alert" ==
b) alert(c); else { if ("throw" == b) throw Error(c); "function" == typeof b && b(a, d, c) }
} function F(a, b, c, d) { h.isArray(c) ? h.each(c, function (c, d) { h.isArray(d) ? F(a, b, d[0], d[1]) : F(a, b, d) }) : (d === k && (d = c), b[c] !== k && (a[d] = b[c])) } function Lb(a, b, c) { var d, e; for (e in b) b.hasOwnProperty(e) && (d = b[e], h.isPlainObject(d) ? (h.isPlainObject(a[e]) || (a[e] = {}), h.extend(!0, a[e], d)) : a[e] = c && "data" !== e && "aaData" !== e && h.isArray(d) ? d.slice() : d); return a } function Wa(a, b, c) {
h(a).bind("click.DT", b, function (b) { a.blur(); c(b) }).bind("keypress.DT",
b, function (a) { 13 === a.which && (a.preventDefault(), c(a)) }).bind("selectstart.DT", function () { return !1 })
} function z(a, b, c, d) { c && a[b].push({ fn: c, sName: d }) } function v(a, b, c, d) { var e = []; b && (e = h.map(a[b].slice().reverse(), function (b) { return b.fn.apply(a.oInstance, d) })); null !== c && (b = h.Event(c + ".dt"), h(a.nTable).trigger(b, d), e.push(b.result)); return e } function Sa(a) { var b = a._iDisplayStart, c = a.fnDisplayEnd(), d = a._iDisplayLength; b >= c && (b = c - d); b -= b % d; if (-1 === d || 0 > b) b = 0; a._iDisplayStart = b } function Pa(a, b) {
var c =
a.renderer, d = m.ext.renderer[b]; return h.isPlainObject(c) && c[b] ? d[c[b]] || d._ : "string" === typeof c ? d[c] || d._ : d._
} function y(a) { return a.oFeatures.bServerSide ? "ssp" : a.ajax || a.sAjaxSource ? "ajax" : "dom" } function Aa(a, b) { var c = [], c = Mb.numbers_length, d = Math.floor(c / 2); b <= c ? c = X(0, b) : a <= d ? (c = X(0, c - 2), c.push("ellipsis"), c.push(b - 1)) : (a >= b - 1 - d ? c = X(b - (c - 2), b) : (c = X(a - d + 2, a + d - 1), c.push("ellipsis"), c.push(b - 1)), c.splice(0, 0, "ellipsis"), c.splice(0, 0, 0)); c.DT_el = "span"; return c } function db(a) {
h.each({
num: function (b) {
return Ba(b,
a)
}, "num-fmt": function (b) { return Ba(b, a, Xa) }, "html-num": function (b) { return Ba(b, a, Ca) }, "html-num-fmt": function (b) { return Ba(b, a, Ca, Xa) }
}, function (b, c) { s.type.order[b + a + "-pre"] = c; b.match(/^html\-/) && (s.type.search[b + a] = s.type.search.html) })
} function Nb(a) { return function () { var b = [za(this[m.ext.iApiIndex])].concat(Array.prototype.slice.call(arguments)); return m.ext.internal[a].apply(this, b) } } var m, s, t, p, r, Ya = {}, Ob = /[\r\n]/g, Ca = /<.*?>/g, ac = /^[\w\+\-]/, bc = /[\w\+\-]$/, Yb = RegExp("(\\/|\\.|\\*|\\+|\\?|\\||\\(|\\)|\\[|\\]|\\{|\\}|\\\\|\\$|\\^|\\-)",
"g"), Xa = /[',$£€¥%\u2009\u202F\u20BD\u20a9\u20BArfk]/gi, M = function (a) { return !a || !0 === a || "-" === a ? !0 : !1 }, Pb = function (a) { var b = parseInt(a, 10); return !isNaN(b) && isFinite(a) ? b : null }, Qb = function (a, b) { Ya[b] || (Ya[b] = RegExp(va(b), "g")); return "string" === typeof a && "." !== b ? a.replace(/\./g, "").replace(Ya[b], ".") : a }, Za = function (a, b, c) { var d = "string" === typeof a; if (M(a)) return !0; b && d && (a = Qb(a, b)); c && d && (a = a.replace(Xa, "")); return !isNaN(parseFloat(a)) && isFinite(a) }, Rb = function (a, b, c) {
return M(a) ? !0 : !(M(a) || "string" ===
typeof a) ? null : Za(a.replace(Ca, ""), b, c) ? !0 : null
}, D = function (a, b, c) { var d = [], e = 0, f = a.length; if (c !== k) for (; e < f; e++)a[e] && a[e][b] && d.push(a[e][b][c]); else for (; e < f; e++)a[e] && d.push(a[e][b]); return d }, ja = function (a, b, c, d) { var e = [], f = 0, g = b.length; if (d !== k) for (; f < g; f++)a[b[f]][c] && e.push(a[b[f]][c][d]); else for (; f < g; f++)e.push(a[b[f]][c]); return e }, X = function (a, b) { var c = [], d; b === k ? (b = 0, d = a) : (d = b, b = a); for (var e = b; e < d; e++)c.push(e); return c }, Sb = function (a) {
for (var b = [], c = 0, d = a.length; c < d; c++)a[c] && b.push(a[c]);
return b
}, pa = function (a) { var b = [], c, d, e = a.length, f, g = 0; d = 0; a: for (; d < e; d++) { c = a[d]; for (f = 0; f < g; f++)if (b[f] === c) continue a; b.push(c); g++ } return b }, A = function (a, b, c) { a[b] !== k && (a[c] = a[b]) }, da = /\[.*?\]$/, V = /\(\)$/, wa = h("<div>")[0], Zb = wa.textContent !== k, $b = /<.*?>/g; m = function (a) {
this.$ = function (a, b) { return this.api(!0).$(a, b) }; this._ = function (a, b) { return this.api(!0).rows(a, b).data() }; this.api = function (a) { return a ? new t(za(this[s.iApiIndex])) : new t(this) }; this.fnAddData = function (a, b) {
var c = this.api(!0),
d = h.isArray(a) && (h.isArray(a[0]) || h.isPlainObject(a[0])) ? c.rows.add(a) : c.row.add(a); (b === k || b) && c.draw(); return d.flatten().toArray()
}; this.fnAdjustColumnSizing = function (a) { var b = this.api(!0).columns.adjust(), c = b.settings()[0], d = c.oScroll; a === k || a ? b.draw(!1) : ("" !== d.sX || "" !== d.sY) && Z(c) }; this.fnClearTable = function (a) { var b = this.api(!0).clear(); (a === k || a) && b.draw() }; this.fnClose = function (a) { this.api(!0).row(a).child.hide() }; this.fnDeleteRow = function (a, b, c) {
var d = this.api(!0), a = d.rows(a), e = a.settings()[0],
h = e.aoData[a[0][0]]; a.remove(); b && b.call(this, e, h); (c === k || c) && d.draw(); return h
}; this.fnDestroy = function (a) { this.api(!0).destroy(a) }; this.fnDraw = function (a) { this.api(!0).draw(a) }; this.fnFilter = function (a, b, c, d, e, h) { e = this.api(!0); null === b || b === k ? e.search(a, c, d, h) : e.column(b).search(a, c, d, h); e.draw() }; this.fnGetData = function (a, b) { var c = this.api(!0); if (a !== k) { var d = a.nodeName ? a.nodeName.toLowerCase() : ""; return b !== k || "td" == d || "th" == d ? c.cell(a, b).data() : c.row(a).data() || null } return c.data().toArray() };
this.fnGetNodes = function (a) { var b = this.api(!0); return a !== k ? b.row(a).node() : b.rows().nodes().flatten().toArray() }; this.fnGetPosition = function (a) { var b = this.api(!0), c = a.nodeName.toUpperCase(); return "TR" == c ? b.row(a).index() : "TD" == c || "TH" == c ? (a = b.cell(a).index(), [a.row, a.columnVisible, a.column]) : null }; this.fnIsOpen = function (a) { return this.api(!0).row(a).child.isShown() }; this.fnOpen = function (a, b, c) { return this.api(!0).row(a).child(b, c).show().child()[0] }; this.fnPageChange = function (a, b) {
var c = this.api(!0).page(a);
(b === k || b) && c.draw(!1)
}; this.fnSetColumnVis = function (a, b, c) { a = this.api(!0).column(a).visible(b); (c === k || c) && a.columns.adjust().draw() }; this.fnSettings = function () { return za(this[s.iApiIndex]) }; this.fnSort = function (a) { this.api(!0).order(a).draw() }; this.fnSortListener = function (a, b, c) { this.api(!0).order.listener(a, b, c) }; this.fnUpdate = function (a, b, c, d, e) { var h = this.api(!0); c === k || null === c ? h.row(b).data(a) : h.cell(b, c).data(a); (e === k || e) && h.columns.adjust(); (d === k || d) && h.draw(); return 0 }; this.fnVersionCheck =
s.fnVersionCheck; var b = this, c = a === k, d = this.length; c && (a = {}); this.oApi = this.internal = s.internal; for (var e in m.ext.internal) e && (this[e] = Nb(e)); this.each(function () {
var e = {}, e = 1 < d ? Lb(e, a, !0) : a, g = 0, j, i = this.getAttribute("id"), o = !1, l = m.defaults, q = h(this); if ("table" != this.nodeName.toLowerCase()) K(null, 0, "Non-table node initialisation (" + this.nodeName + ")", 2); else {
eb(l); fb(l.column); J(l, l, !0); J(l.column, l.column, !0); J(l, h.extend(e, q.data())); var u = m.settings, g = 0; for (j = u.length; g < j; g++) {
var p = u[g]; if (p.nTable ==
this || p.nTHead.parentNode == this || p.nTFoot && p.nTFoot.parentNode == this) { g = e.bRetrieve !== k ? e.bRetrieve : l.bRetrieve; if (c || g) return p.oInstance; if (e.bDestroy !== k ? e.bDestroy : l.bDestroy) { p.oInstance.fnDestroy(); break } else { K(p, 0, "Cannot reinitialise DataTable", 3); return } } if (p.sTableId == this.id) { u.splice(g, 1); break }
} if (null === i || "" === i) this.id = i = "DataTables_Table_" + m.ext._unique++; var n = h.extend(!0, {}, m.models.oSettings, { sDestroyWidth: q[0].style.width, sInstance: i, sTableId: i }); n.nTable = this; n.oApi = b.internal;
n.oInit = e; u.push(n); n.oInstance = 1 === b.length ? b : q.dataTable(); eb(e); e.oLanguage && Fa(e.oLanguage); e.aLengthMenu && !e.iDisplayLength && (e.iDisplayLength = h.isArray(e.aLengthMenu[0]) ? e.aLengthMenu[0][0] : e.aLengthMenu[0]); e = Lb(h.extend(!0, {}, l), e); F(n.oFeatures, e, "bPaginate bLengthChange bFilter bSort bSortMulti bInfo bProcessing bAutoWidth bSortClasses bServerSide bDeferRender".split(" ")); F(n, e, ["asStripeClasses", "ajax", "fnServerData", "fnFormatNumber", "sServerMethod", "aaSorting", "aaSortingFixed", "aLengthMenu",
"sPaginationType", "sAjaxSource", "sAjaxDataProp", "iStateDuration", "sDom", "bSortCellsTop", "iTabIndex", "fnStateLoadCallback", "fnStateSaveCallback", "renderer", "searchDelay", "rowId", ["iCookieDuration", "iStateDuration"], ["oSearch", "oPreviousSearch"], ["aoSearchCols", "aoPreSearchCols"], ["iDisplayLength", "_iDisplayLength"], ["bJQueryUI", "bJUI"]]); F(n.oScroll, e, [["sScrollX", "sX"], ["sScrollXInner", "sXInner"], ["sScrollY", "sY"], ["bScrollCollapse", "bCollapse"]]); F(n.oLanguage, e, "fnInfoCallback"); z(n, "aoDrawCallback",
e.fnDrawCallback, "user"); z(n, "aoServerParams", e.fnServerParams, "user"); z(n, "aoStateSaveParams", e.fnStateSaveParams, "user"); z(n, "aoStateLoadParams", e.fnStateLoadParams, "user"); z(n, "aoStateLoaded", e.fnStateLoaded, "user"); z(n, "aoRowCallback", e.fnRowCallback, "user"); z(n, "aoRowCreatedCallback", e.fnCreatedRow, "user"); z(n, "aoHeaderCallback", e.fnHeaderCallback, "user"); z(n, "aoFooterCallback", e.fnFooterCallback, "user"); z(n, "aoInitComplete", e.fnInitComplete, "user"); z(n, "aoPreDrawCallback", e.fnPreDrawCallback,
"user"); n.rowIdFn = Q(e.rowId); gb(n); i = n.oClasses; e.bJQueryUI ? (h.extend(i, m.ext.oJUIClasses, e.oClasses), e.sDom === l.sDom && "lfrtip" === l.sDom && (n.sDom = '<"H"lfr>t<"F"ip>'), n.renderer) ? h.isPlainObject(n.renderer) && !n.renderer.header && (n.renderer.header = "jqueryui") : n.renderer = "jqueryui" : h.extend(i, m.ext.classes, e.oClasses); q.addClass(i.sTable); n.iInitDisplayStart === k && (n.iInitDisplayStart = e.iDisplayStart, n._iDisplayStart = e.iDisplayStart); null !== e.iDeferLoading && (n.bDeferLoading = !0, g = h.isArray(e.iDeferLoading),
n._iRecordsDisplay = g ? e.iDeferLoading[0] : e.iDeferLoading, n._iRecordsTotal = g ? e.iDeferLoading[1] : e.iDeferLoading); var t = n.oLanguage; h.extend(!0, t, e.oLanguage); "" !== t.sUrl && (h.ajax({ dataType: "json", url: t.sUrl, success: function (a) { Fa(a); J(l.oLanguage, a); h.extend(true, t, a); ia(n) }, error: function () { ia(n) } }), o = !0); null === e.asStripeClasses && (n.asStripeClasses = [i.sStripeOdd, i.sStripeEven]); var g = n.asStripeClasses, r = q.children("tbody").find("tr").eq(0); -1 !== h.inArray(!0, h.map(g, function (a) { return r.hasClass(a) })) &&
(h("tbody tr", this).removeClass(g.join(" ")), n.asDestroyStripes = g.slice()); u = []; g = this.getElementsByTagName("thead"); 0 !== g.length && (fa(n.aoHeader, g[0]), u = qa(n)); if (null === e.aoColumns) { p = []; g = 0; for (j = u.length; g < j; g++)p.push(null) } else p = e.aoColumns; g = 0; for (j = p.length; g < j; g++)Ga(n, u ? u[g] : null); ib(n, e.aoColumnDefs, p, function (a, b) { la(n, a, b) }); if (r.length) {
var s = function (a, b) { return a.getAttribute("data-" + b) !== null ? b : null }; h(r[0]).children("th, td").each(function (a, b) {
var c = n.aoColumns[a]; if (c.mData ===
a) { var d = s(b, "sort") || s(b, "order"), e = s(b, "filter") || s(b, "search"); if (d !== null || e !== null) { c.mData = { _: a + ".display", sort: d !== null ? a + ".@data-" + d : k, type: d !== null ? a + ".@data-" + d : k, filter: e !== null ? a + ".@data-" + e : k }; la(n, a) } }
})
} var w = n.oFeatures; e.bStateSave && (w.bStateSave = !0, Kb(n, e), z(n, "aoDrawCallback", ya, "state_save")); if (e.aaSorting === k) { u = n.aaSorting; g = 0; for (j = u.length; g < j; g++)u[g][1] = n.aoColumns[g].asSorting[0] } xa(n); w.bSort && z(n, "aoDrawCallback", function () {
if (n.bSorted) {
var a = W(n), b = {}; h.each(a, function (a,
c) { b[c.src] = c.dir }); v(n, null, "order", [n, a, b]); Jb(n)
}
}); z(n, "aoDrawCallback", function () { (n.bSorted || y(n) === "ssp" || w.bDeferRender) && xa(n) }, "sc"); g = q.children("caption").each(function () { this._captionSide = q.css("caption-side") }); j = q.children("thead"); 0 === j.length && (j = h("<thead/>").appendTo(this)); n.nTHead = j[0]; j = q.children("tbody"); 0 === j.length && (j = h("<tbody/>").appendTo(this)); n.nTBody = j[0]; j = q.children("tfoot"); if (0 === j.length && 0 < g.length && ("" !== n.oScroll.sX || "" !== n.oScroll.sY)) j = h("<tfoot/>").appendTo(this);
0 === j.length || 0 === j.children().length ? q.addClass(i.sNoFooter) : 0 < j.length && (n.nTFoot = j[0], fa(n.aoFooter, n.nTFoot)); if (e.aaData) for (g = 0; g < e.aaData.length; g++)N(n, e.aaData[g]); else (n.bDeferLoading || "dom" == y(n)) && ma(n, h(n.nTBody).children("tr")); n.aiDisplay = n.aiDisplayMaster.slice(); n.bInitialised = !0; !1 === o && ia(n)
}
}); b = null; return this
}; var Tb = [], x = Array.prototype, cc = function (a) {
var b, c, d = m.settings, e = h.map(d, function (a) { return a.nTable }); if (a) {
if (a.nTable && a.oApi) return [a]; if (a.nodeName && "table" === a.nodeName.toLowerCase()) return b =
h.inArray(a, e), -1 !== b ? [d[b]] : null; if (a && "function" === typeof a.settings) return a.settings().toArray(); "string" === typeof a ? c = h(a) : a instanceof h && (c = a)
} else return []; if (c) return c.map(function () { b = h.inArray(this, e); return -1 !== b ? d[b] : null }).toArray()
}; t = function (a, b) {
if (!(this instanceof t)) return new t(a, b); var c = [], d = function (a) { (a = cc(a)) && (c = c.concat(a)) }; if (h.isArray(a)) for (var e = 0, f = a.length; e < f; e++)d(a[e]); else d(a); this.context = pa(c); b && h.merge(this, b); this.selector = { rows: null, cols: null, opts: null };
t.extend(this, this, Tb)
}; m.Api = t; h.extend(t.prototype, {
any: function () { return 0 !== this.count() }, concat: x.concat, context: [], count: function () { return this.flatten().length }, each: function (a) { for (var b = 0, c = this.length; b < c; b++)a.call(this, this[b], b, this); return this }, eq: function (a) { var b = this.context; return b.length > a ? new t(b[a], this[a]) : null }, filter: function (a) {
var b = []; if (x.filter) b = x.filter.call(this, a, this); else for (var c = 0, d = this.length; c < d; c++)a.call(this, this[c], c, this) && b.push(this[c]); return new t(this.context,
b)
}, flatten: function () { var a = []; return new t(this.context, a.concat.apply(a, this.toArray())) }, join: x.join, indexOf: x.indexOf || function (a, b) { for (var c = b || 0, d = this.length; c < d; c++)if (this[c] === a) return c; return -1 }, iterator: function (a, b, c, d) {
var e = [], f, g, h, i, o, l = this.context, m, p, r = this.selector; "string" === typeof a && (d = c, c = b, b = a, a = !1); g = 0; for (h = l.length; g < h; g++) {
var n = new t(l[g]); if ("table" === b) f = c.call(n, l[g], g), f !== k && e.push(f); else if ("columns" === b || "rows" === b) f = c.call(n, l[g], this[g], g), f !== k && e.push(f);
else if ("column" === b || "column-rows" === b || "row" === b || "cell" === b) { p = this[g]; "column-rows" === b && (m = Da(l[g], r.opts)); i = 0; for (o = p.length; i < o; i++)f = p[i], f = "cell" === b ? c.call(n, l[g], f.row, f.column, g, i) : c.call(n, l[g], f, g, i, m), f !== k && e.push(f) }
} return e.length || d ? (a = new t(l, a ? e.concat.apply([], e) : e), b = a.selector, b.rows = r.rows, b.cols = r.cols, b.opts = r.opts, a) : this
}, lastIndexOf: x.lastIndexOf || function (a, b) { return this.indexOf.apply(this.toArray.reverse(), arguments) }, length: 0, map: function (a) {
var b = []; if (x.map) b =
x.map.call(this, a, this); else for (var c = 0, d = this.length; c < d; c++)b.push(a.call(this, this[c], c)); return new t(this.context, b)
}, pluck: function (a) { return this.map(function (b) { return b[a] }) }, pop: x.pop, push: x.push, reduce: x.reduce || function (a, b) { return hb(this, a, b, 0, this.length, 1) }, reduceRight: x.reduceRight || function (a, b) { return hb(this, a, b, this.length - 1, -1, -1) }, reverse: x.reverse, selector: null, shift: x.shift, sort: x.sort, splice: x.splice, toArray: function () { return x.slice.call(this) }, to$: function () { return h(this) },
toJQuery: function () { return h(this) }, unique: function () { return new t(this.context, pa(this)) }, unshift: x.unshift
}); t.extend = function (a, b, c) { if (c.length && b && (b instanceof t || b.__dt_wrapper)) { var d, e, f, g = function (a, b, c) { return function () { var d = b.apply(a, arguments); t.extend(d, d, c.methodExt); return d } }; d = 0; for (e = c.length; d < e; d++)f = c[d], b[f.name] = "function" === typeof f.val ? g(a, f.val, f) : h.isPlainObject(f.val) ? {} : f.val, b[f.name].__dt_wrapper = !0, t.extend(a, b[f.name], f.propExt) } }; t.register = p = function (a, b) {
if (h.isArray(a)) for (var c =
0, d = a.length; c < d; c++)t.register(a[c], b); else for (var e = a.split("."), f = Tb, g, j, c = 0, d = e.length; c < d; c++) { g = (j = -1 !== e[c].indexOf("()")) ? e[c].replace("()", "") : e[c]; var i; a: { i = 0; for (var k = f.length; i < k; i++)if (f[i].name === g) { i = f[i]; break a } i = null } i || (i = { name: g, val: {}, methodExt: [], propExt: [] }, f.push(i)); c === d - 1 ? i.val = b : f = j ? i.methodExt : i.propExt }
}; t.registerPlural = r = function (a, b, c) {
t.register(a, c); t.register(b, function () {
var a = c.apply(this, arguments); return a === this ? this : a instanceof t ? a.length ? h.isArray(a[0]) ?
new t(a.context, a[0]) : a[0] : k : a
})
}; p("tables()", function (a) { var b; if (a) { b = t; var c = this.context; if ("number" === typeof a) a = [c[a]]; else var d = h.map(c, function (a) { return a.nTable }), a = h(d).filter(a).map(function () { var a = h.inArray(this, d); return c[a] }).toArray(); b = new b(a) } else b = this; return b }); p("table()", function (a) { var a = this.tables(a), b = a.context; return b.length ? new t(b[0]) : a }); r("tables().nodes()", "table().node()", function () { return this.iterator("table", function (a) { return a.nTable }, 1) }); r("tables().body()",
"table().body()", function () { return this.iterator("table", function (a) { return a.nTBody }, 1) }); r("tables().header()", "table().header()", function () { return this.iterator("table", function (a) { return a.nTHead }, 1) }); r("tables().footer()", "table().footer()", function () { return this.iterator("table", function (a) { return a.nTFoot }, 1) }); r("tables().containers()", "table().container()", function () { return this.iterator("table", function (a) { return a.nTableWrapper }, 1) }); p("draw()", function (a) {
return this.iterator("table",
function (b) { "page" === a ? O(b) : ("string" === typeof a && (a = "full-hold" === a ? !1 : !0), T(b, !1 === a)) })
}); p("page()", function (a) { return a === k ? this.page.info().page : this.iterator("table", function (b) { Ta(b, a) }) }); p("page.info()", function () {
if (0 === this.context.length) return k; var a = this.context[0], b = a._iDisplayStart, c = a.oFeatures.bPaginate ? a._iDisplayLength : -1, d = a.fnRecordsDisplay(), e = -1 === c; return {
page: e ? 0 : Math.floor(b / c), pages: e ? 1 : Math.ceil(d / c), start: b, end: a.fnDisplayEnd(), length: c, recordsTotal: a.fnRecordsTotal(),
recordsDisplay: d, serverSide: "ssp" === y(a)
}
}); p("page.len()", function (a) { return a === k ? 0 !== this.context.length ? this.context[0]._iDisplayLength : k : this.iterator("table", function (b) { Ra(b, a) }) }); var Ub = function (a, b, c) { if (c) { var d = new t(a); d.one("draw", function () { c(d.ajax.json()) }) } if ("ssp" == y(a)) T(a, b); else { C(a, !0); var e = a.jqXHR; e && 4 !== e.readyState && e.abort(); ra(a, [], function (c) { na(a); for (var c = sa(a, c), d = 0, e = c.length; d < e; d++)N(a, c[d]); T(a, b); C(a, !1) }) } }; p("ajax.json()", function () {
var a = this.context; if (0 <
a.length) return a[0].json
}); p("ajax.params()", function () { var a = this.context; if (0 < a.length) return a[0].oAjaxData }); p("ajax.reload()", function (a, b) { return this.iterator("table", function (c) { Ub(c, !1 === b, a) }) }); p("ajax.url()", function (a) { var b = this.context; if (a === k) { if (0 === b.length) return k; b = b[0]; return b.ajax ? h.isPlainObject(b.ajax) ? b.ajax.url : b.ajax : b.sAjaxSource } return this.iterator("table", function (b) { h.isPlainObject(b.ajax) ? b.ajax.url = a : b.ajax = a }) }); p("ajax.url().load()", function (a, b) {
return this.iterator("table",
function (c) { Ub(c, !1 === b, a) })
}); var $a = function (a, b, c, d, e) { var f = [], g, j, i, o, l, m; i = typeof b; if (!b || "string" === i || "function" === i || b.length === k) b = [b]; i = 0; for (o = b.length; i < o; i++) { j = b[i] && b[i].split ? b[i].split(",") : [b[i]]; l = 0; for (m = j.length; l < m; l++)(g = c("string" === typeof j[l] ? h.trim(j[l]) : j[l])) && g.length && (f = f.concat(g)) } a = s.selector[a]; if (a.length) { i = 0; for (o = a.length; i < o; i++)f = a[i](d, e, f) } return pa(f) }, ab = function (a) {
a || (a = {}); a.filter && a.search === k && (a.search = a.filter); return h.extend({
search: "none",
order: "current", page: "all"
}, a)
}, bb = function (a) { for (var b = 0, c = a.length; b < c; b++)if (0 < a[b].length) return a[0] = a[b], a[0].length = 1, a.length = 1, a.context = [a.context[b]], a; a.length = 0; return a }, Da = function (a, b) {
var c, d, e, f = [], g = a.aiDisplay; c = a.aiDisplayMaster; var j = b.search; d = b.order; e = b.page; if ("ssp" == y(a)) return "removed" === j ? [] : X(0, c.length); if ("current" == e) { c = a._iDisplayStart; for (d = a.fnDisplayEnd(); c < d; c++)f.push(g[c]) } else if ("current" == d || "applied" == d) f = "none" == j ? c.slice() : "applied" == j ? g.slice() : h.map(c,
function (a) { return -1 === h.inArray(a, g) ? a : null }); else if ("index" == d || "original" == d) { c = 0; for (d = a.aoData.length; c < d; c++)"none" == j ? f.push(c) : (e = h.inArray(c, g), (-1 === e && "removed" == j || 0 <= e && "applied" == j) && f.push(c)) } return f
}; p("rows()", function (a, b) {
a === k ? a = "" : h.isPlainObject(a) && (b = a, a = ""); var b = ab(b), c = this.iterator("table", function (c) {
var e = b; return $a("row", a, function (a) {
var b = Pb(a); if (b !== null && !e) return [b]; var j = Da(c, e); if (b !== null && h.inArray(b, j) !== -1) return [b]; if (!a) return j; if (typeof a === "function") return h.map(j,
function (b) { var e = c.aoData[b]; return a(b, e._aData, e.nTr) ? b : null }); b = Sb(ja(c.aoData, j, "nTr")); if (a.nodeName && h.inArray(a, b) !== -1) return [a._DT_RowIndex]; if (typeof a === "string" && a.charAt(0) === "#") { j = c.aIds[a.replace(/^#/, "")]; if (j !== k) return [j.idx] } return h(b).filter(a).map(function () { return this._DT_RowIndex }).toArray()
}, c, e)
}, 1); c.selector.rows = a; c.selector.opts = b; return c
}); p("rows().nodes()", function () { return this.iterator("row", function (a, b) { return a.aoData[b].nTr || k }, 1) }); p("rows().data()", function () {
return this.iterator(!0,
"rows", function (a, b) { return ja(a.aoData, b, "_aData") }, 1)
}); r("rows().cache()", "row().cache()", function (a) { return this.iterator("row", function (b, c) { var d = b.aoData[c]; return "search" === a ? d._aFilterData : d._aSortData }, 1) }); r("rows().invalidate()", "row().invalidate()", function (a) { return this.iterator("row", function (b, c) { ea(b, c, a) }) }); r("rows().indexes()", "row().index()", function () { return this.iterator("row", function (a, b) { return b }, 1) }); r("rows().ids()", "row().id()", function (a) {
for (var b = [], c = this.context,
d = 0, e = c.length; d < e; d++)for (var f = 0, g = this[d].length; f < g; f++) { var h = c[d].rowIdFn(c[d].aoData[this[d][f]]._aData); b.push((!0 === a ? "#" : "") + h) } return new t(c, b)
}); r("rows().remove()", "row().remove()", function () {
var a = this; this.iterator("row", function (b, c, d) {
var e = b.aoData, f = e[c], g, h, i, o, l; e.splice(c, 1); g = 0; for (h = e.length; g < h; g++)if (i = e[g], l = i.anCells, null !== i.nTr && (i.nTr._DT_RowIndex = g), null !== l) { i = 0; for (o = l.length; i < o; i++)l[i]._DT_CellIndex.row = g } oa(b.aiDisplayMaster, c); oa(b.aiDisplay, c); oa(a[d], c, !1);
Sa(b); c = b.rowIdFn(f._aData); c !== k && delete b.aIds[c]
}); this.iterator("table", function (a) { for (var c = 0, d = a.aoData.length; c < d; c++)a.aoData[c].idx = c }); return this
}); p("rows.add()", function (a) { var b = this.iterator("table", function (b) { var c, f, g, h = []; f = 0; for (g = a.length; f < g; f++)c = a[f], c.nodeName && "TR" === c.nodeName.toUpperCase() ? h.push(ma(b, c)[0]) : h.push(N(b, c)); return h }, 1), c = this.rows(-1); c.pop(); h.merge(c, b); return c }); p("row()", function (a, b) { return bb(this.rows(a, b)) }); p("row().data()", function (a) {
var b =
this.context; if (a === k) return b.length && this.length ? b[0].aoData[this[0]]._aData : k; b[0].aoData[this[0]]._aData = a; ea(b[0], this[0], "data"); return this
}); p("row().node()", function () { var a = this.context; return a.length && this.length ? a[0].aoData[this[0]].nTr || null : null }); p("row.add()", function (a) { a instanceof h && a.length && (a = a[0]); var b = this.iterator("table", function (b) { return a.nodeName && "TR" === a.nodeName.toUpperCase() ? ma(b, a)[0] : N(b, a) }); return this.row(b[0]) }); var cb = function (a, b) {
var c = a.context; if (c.length &&
(c = c[0].aoData[b !== k ? b : a[0]]) && c._details) c._details.remove(), c._detailsShow = k, c._details = k
}, Vb = function (a, b) {
var c = a.context; if (c.length && a.length) {
var d = c[0].aoData[a[0]]; if (d._details) {
(d._detailsShow = b) ? d._details.insertAfter(d.nTr) : d._details.detach(); var e = c[0], f = new t(e), g = e.aoData; f.off("draw.dt.DT_details column-visibility.dt.DT_details destroy.dt.DT_details"); 0 < D(g, "_details").length && (f.on("draw.dt.DT_details", function (a, b) {
e === b && f.rows({ page: "current" }).eq(0).each(function (a) {
a = g[a];
a._detailsShow && a._details.insertAfter(a.nTr)
})
}), f.on("column-visibility.dt.DT_details", function (a, b) { if (e === b) for (var c, d = ca(b), f = 0, h = g.length; f < h; f++)c = g[f], c._details && c._details.children("td[colspan]").attr("colspan", d) }), f.on("destroy.dt.DT_details", function (a, b) { if (e === b) for (var c = 0, d = g.length; c < d; c++)g[c]._details && cb(f, c) }))
}
}
}; p("row().child()", function (a, b) {
var c = this.context; if (a === k) return c.length && this.length ? c[0].aoData[this[0]]._details : k; if (!0 === a) this.child.show(); else if (!1 ===
a) cb(this); else if (c.length && this.length) { var d = c[0], c = c[0].aoData[this[0]], e = [], f = function (a, b) { if (h.isArray(a) || a instanceof h) for (var c = 0, k = a.length; c < k; c++)f(a[c], b); else a.nodeName && "tr" === a.nodeName.toLowerCase() ? e.push(a) : (c = h("<tr><td/></tr>").addClass(b), h("td", c).addClass(b).html(a)[0].colSpan = ca(d), e.push(c[0])) }; f(a, b); c._details && c._details.remove(); c._details = h(e); c._detailsShow && c._details.insertAfter(c.nTr) } return this
}); p(["row().child.show()", "row().child().show()"], function () {
Vb(this,
!0); return this
}); p(["row().child.hide()", "row().child().hide()"], function () { Vb(this, !1); return this }); p(["row().child.remove()", "row().child().remove()"], function () { cb(this); return this }); p("row().child.isShown()", function () { var a = this.context; return a.length && this.length ? a[0].aoData[this[0]]._detailsShow || !1 : !1 }); var dc = /^(.+):(name|visIdx|visible)$/, Wb = function (a, b, c, d, e) { for (var c = [], d = 0, f = e.length; d < f; d++)c.push(B(a, e[d], b)); return c }; p("columns()", function (a, b) {
a === k ? a = "" : h.isPlainObject(a) &&
(b = a, a = ""); var b = ab(b), c = this.iterator("table", function (c) {
var e = a, f = b, g = c.aoColumns, j = D(g, "sName"), i = D(g, "nTh"); return $a("column", e, function (a) {
var b = Pb(a); if (a === "") return X(g.length); if (b !== null) return [b >= 0 ? b : g.length + b]; if (typeof a === "function") { var e = Da(c, f); return h.map(g, function (b, f) { return a(f, Wb(c, f, 0, 0, e), i[f]) ? f : null }) } var k = typeof a === "string" ? a.match(dc) : ""; if (k) switch (k[2]) {
case "visIdx": case "visible": b = parseInt(k[1], 10); if (b < 0) {
var m = h.map(g, function (a, b) { return a.bVisible ? b : null });
return [m[m.length + b]]
} return [$(c, b)]; case "name": return h.map(j, function (a, b) { return a === k[1] ? b : null })
} else return h(i).filter(a).map(function () { return h.inArray(this, i) }).toArray()
}, c, f)
}, 1); c.selector.cols = a; c.selector.opts = b; return c
}); r("columns().header()", "column().header()", function () { return this.iterator("column", function (a, b) { return a.aoColumns[b].nTh }, 1) }); r("columns().footer()", "column().footer()", function () { return this.iterator("column", function (a, b) { return a.aoColumns[b].nTf }, 1) }); r("columns().data()",
"column().data()", function () { return this.iterator("column-rows", Wb, 1) }); r("columns().dataSrc()", "column().dataSrc()", function () { return this.iterator("column", function (a, b) { return a.aoColumns[b].mData }, 1) }); r("columns().cache()", "column().cache()", function (a) { return this.iterator("column-rows", function (b, c, d, e, f) { return ja(b.aoData, f, "search" === a ? "_aFilterData" : "_aSortData", c) }, 1) }); r("columns().nodes()", "column().nodes()", function () {
return this.iterator("column-rows", function (a, b, c, d, e) {
return ja(a.aoData,
e, "anCells", b)
}, 1)
}); r("columns().visible()", "column().visible()", function (a, b) {
return this.iterator("column", function (c, d) {
if (a === k) return c.aoColumns[d].bVisible; var e = c.aoColumns, f = e[d], g = c.aoData, j, i, m; if (a !== k && f.bVisible !== a) {
if (a) { var l = h.inArray(!0, D(e, "bVisible"), d + 1); j = 0; for (i = g.length; j < i; j++)m = g[j].nTr, e = g[j].anCells, m && m.insertBefore(e[d], e[l] || null) } else h(D(c.aoData, "anCells", d)).detach(); f.bVisible = a; ga(c, c.aoHeader); ga(c, c.aoFooter); if (b === k || b) U(c), (c.oScroll.sX || c.oScroll.sY) &&
Z(c); v(c, null, "column-visibility", [c, d, a, b]); ya(c)
}
})
}); r("columns().indexes()", "column().index()", function (a) { return this.iterator("column", function (b, c) { return "visible" === a ? ba(b, c) : c }, 1) }); p("columns.adjust()", function () { return this.iterator("table", function (a) { U(a) }, 1) }); p("column.index()", function (a, b) { if (0 !== this.context.length) { var c = this.context[0]; if ("fromVisible" === a || "toData" === a) return $(c, b); if ("fromData" === a || "toVisible" === a) return ba(c, b) } }); p("column()", function (a, b) {
return bb(this.columns(a,
b))
}); p("cells()", function (a, b, c) {
h.isPlainObject(a) && (a.row === k ? (c = a, a = null) : (c = b, b = null)); h.isPlainObject(b) && (c = b, b = null); if (null === b || b === k) return this.iterator("table", function (b) {
var d = a, e = ab(c), f = b.aoData, g = Da(b, e), j = Sb(ja(f, g, "anCells")), i = h([].concat.apply([], j)), l, m = b.aoColumns.length, o, p, t, r, s, v; return $a("cell", d, function (a) {
var c = typeof a === "function"; if (a === null || a === k || c) {
o = []; p = 0; for (t = g.length; p < t; p++) {
l = g[p]; for (r = 0; r < m; r++) {
s = { row: l, column: r }; if (c) {
v = f[l]; a(s, B(b, l, r), v.anCells ?
v.anCells[r] : null) && o.push(s)
} else o.push(s)
}
} return o
} return h.isPlainObject(a) ? [a] : i.filter(a).map(function (a, b) { return { row: b._DT_CellIndex.row, column: b._DT_CellIndex.column } }).toArray()
}, b, e)
}); var d = this.columns(b, c), e = this.rows(a, c), f, g, j, i, m, l = this.iterator("table", function (a, b) { f = []; g = 0; for (j = e[b].length; g < j; g++) { i = 0; for (m = d[b].length; i < m; i++)f.push({ row: e[b][g], column: d[b][i] }) } return f }, 1); h.extend(l.selector, { cols: b, rows: a, opts: c }); return l
}); r("cells().nodes()", "cell().node()", function () {
return this.iterator("cell",
function (a, b, c) { return (a = a.aoData[b].anCells) ? a[c] : k }, 1)
}); p("cells().data()", function () { return this.iterator("cell", function (a, b, c) { return B(a, b, c) }, 1) }); r("cells().cache()", "cell().cache()", function (a) { a = "search" === a ? "_aFilterData" : "_aSortData"; return this.iterator("cell", function (b, c, d) { return b.aoData[c][a][d] }, 1) }); r("cells().render()", "cell().render()", function (a) { return this.iterator("cell", function (b, c, d) { return B(b, c, d, a) }, 1) }); r("cells().indexes()", "cell().index()", function () {
return this.iterator("cell",
function (a, b, c) { return { row: b, column: c, columnVisible: ba(a, c) } }, 1)
}); r("cells().invalidate()", "cell().invalidate()", function (a) { return this.iterator("cell", function (b, c, d) { ea(b, c, a, d) }) }); p("cell()", function (a, b, c) { return bb(this.cells(a, b, c)) }); p("cell().data()", function (a) { var b = this.context, c = this[0]; if (a === k) return b.length && c.length ? B(b[0], c[0].row, c[0].column) : k; jb(b[0], c[0].row, c[0].column, a); ea(b[0], c[0].row, "data", c[0].column); return this }); p("order()", function (a, b) {
var c = this.context; if (a ===
k) return 0 !== c.length ? c[0].aaSorting : k; "number" === typeof a ? a = [[a, b]] : h.isArray(a[0]) || (a = Array.prototype.slice.call(arguments)); return this.iterator("table", function (b) { b.aaSorting = a.slice() })
}); p("order.listener()", function (a, b, c) { return this.iterator("table", function (d) { Oa(d, a, b, c) }) }); p("order.fixed()", function (a) { if (!a) { var b = this.context, b = b.length ? b[0].aaSortingFixed : k; return h.isArray(b) ? { pre: b } : b } return this.iterator("table", function (b) { b.aaSortingFixed = h.extend(!0, {}, a) }) }); p(["columns().order()",
"column().order()"], function (a) { var b = this; return this.iterator("table", function (c, d) { var e = []; h.each(b[d], function (b, c) { e.push([c, a]) }); c.aaSorting = e }) }); p("search()", function (a, b, c, d) { var e = this.context; return a === k ? 0 !== e.length ? e[0].oPreviousSearch.sSearch : k : this.iterator("table", function (e) { e.oFeatures.bFilter && ha(e, h.extend({}, e.oPreviousSearch, { sSearch: a + "", bRegex: null === b ? !1 : b, bSmart: null === c ? !0 : c, bCaseInsensitive: null === d ? !0 : d }), 1) }) }); r("columns().search()", "column().search()", function (a,
b, c, d) { return this.iterator("column", function (e, f) { var g = e.aoPreSearchCols; if (a === k) return g[f].sSearch; e.oFeatures.bFilter && (h.extend(g[f], { sSearch: a + "", bRegex: null === b ? !1 : b, bSmart: null === c ? !0 : c, bCaseInsensitive: null === d ? !0 : d }), ha(e, e.oPreviousSearch, 1)) }) }); p("state()", function () { return this.context.length ? this.context[0].oSavedState : null }); p("state.clear()", function () { return this.iterator("table", function (a) { a.fnStateSaveCallback.call(a.oInstance, a, {}) }) }); p("state.loaded()", function () {
return this.context.length ?
this.context[0].oLoadedState : null
}); p("state.save()", function () { return this.iterator("table", function (a) { ya(a) }) }); m.versionCheck = m.fnVersionCheck = function (a) { for (var b = m.version.split("."), a = a.split("."), c, d, e = 0, f = a.length; e < f; e++)if (c = parseInt(b[e], 10) || 0, d = parseInt(a[e], 10) || 0, c !== d) return c > d; return !0 }; m.isDataTable = m.fnIsDataTable = function (a) {
var b = h(a).get(0), c = !1; h.each(m.settings, function (a, e) {
var f = e.nScrollHead ? h("table", e.nScrollHead)[0] : null, g = e.nScrollFoot ? h("table", e.nScrollFoot)[0] :
null; if (e.nTable === b || f === b || g === b) c = !0
}); return c
}; m.tables = m.fnTables = function (a) { var b = !1; h.isPlainObject(a) && (b = a.api, a = a.visible); var c = h.map(m.settings, function (b) { if (!a || a && h(b.nTable).is(":visible")) return b.nTable }); return b ? new t(c) : c }; m.util = { throttle: ua, escapeRegex: va }; m.camelToHungarian = J; p("$()", function (a, b) { var c = this.rows(b).nodes(), c = h(c); return h([].concat(c.filter(a).toArray(), c.find(a).toArray())) }); h.each(["on", "one", "off"], function (a, b) {
p(b + "()", function () {
var a = Array.prototype.slice.call(arguments);
a[0].match(/\.dt\b/) || (a[0] += ".dt"); var d = h(this.tables().nodes()); d[b].apply(d, a); return this
})
}); p("clear()", function () { return this.iterator("table", function (a) { na(a) }) }); p("settings()", function () { return new t(this.context, this.context) }); p("init()", function () { var a = this.context; return a.length ? a[0].oInit : null }); p("data()", function () { return this.iterator("table", function (a) { return D(a.aoData, "_aData") }).flatten() }); p("destroy()", function (a) {
a = a || !1; return this.iterator("table", function (b) {
var c =
b.nTableWrapper.parentNode, d = b.oClasses, e = b.nTable, f = b.nTBody, g = b.nTHead, j = b.nTFoot, i = h(e), f = h(f), k = h(b.nTableWrapper), l = h.map(b.aoData, function (a) { return a.nTr }), p; b.bDestroying = !0; v(b, "aoDestroyCallback", "destroy", [b]); a || (new t(b)).columns().visible(!0); k.unbind(".DT").find(":not(tbody *)").unbind(".DT"); h(E).unbind(".DT-" + b.sInstance); e != g.parentNode && (i.children("thead").detach(), i.append(g)); j && e != j.parentNode && (i.children("tfoot").detach(), i.append(j)); b.aaSorting = []; b.aaSortingFixed = []; xa(b);
h(l).removeClass(b.asStripeClasses.join(" ")); h("th, td", g).removeClass(d.sSortable + " " + d.sSortableAsc + " " + d.sSortableDesc + " " + d.sSortableNone); b.bJUI && (h("th span." + d.sSortIcon + ", td span." + d.sSortIcon, g).detach(), h("th, td", g).each(function () { var a = h("div." + d.sSortJUIWrapper, this); h(this).append(a.contents()); a.detach() })); f.children().detach(); f.append(l); g = a ? "remove" : "detach"; i[g](); k[g](); !a && c && (c.insertBefore(e, b.nTableReinsertBefore), i.css("width", b.sDestroyWidth).removeClass(d.sTable), (p =
b.asDestroyStripes.length) && f.children().each(function (a) { h(this).addClass(b.asDestroyStripes[a % p]) })); c = h.inArray(b, m.settings); -1 !== c && m.settings.splice(c, 1)
})
}); h.each(["column", "row", "cell"], function (a, b) { p(b + "s().every()", function (a) { var d = this.selector.opts, e = this; return this.iterator(b, function (f, g, h, i, m) { a.call(e[b](g, "cell" === b ? h : d, "cell" === b ? d : k), g, h, i, m) }) }) }); p("i18n()", function (a, b, c) {
var d = this.context[0], a = Q(a)(d.oLanguage); a === k && (a = b); c !== k && h.isPlainObject(a) && (a = a[c] !== k ? a[c] : a._);
return a.replace("%d", c)
}); m.version = "1.10.10"; m.settings = []; m.models = {}; m.models.oSearch = { bCaseInsensitive: !0, sSearch: "", bRegex: !1, bSmart: !0 }; m.models.oRow = { nTr: null, anCells: null, _aData: [], _aSortData: null, _aFilterData: null, _sFilterRow: null, _sRowStripe: "", src: null, idx: -1 }; m.models.oColumn = {
idx: null, aDataSort: null, asSorting: null, bSearchable: null, bSortable: null, bVisible: null, _sManualType: null, _bAttrSrc: !1, fnCreatedCell: null, fnGetData: null, fnSetData: null, mData: null, mRender: null, nTh: null, nTf: null, sClass: null,
sContentPadding: null, sDefaultContent: null, sName: null, sSortDataType: "std", sSortingClass: null, sSortingClassJUI: null, sTitle: null, sType: null, sWidth: null, sWidthOrig: null
}; m.defaults = {
aaData: null, aaSorting: [[0, "asc"]], aaSortingFixed: [], ajax: null, aLengthMenu: [10, 25, 50, 100], aoColumns: null, aoColumnDefs: null, aoSearchCols: [], asStripeClasses: null, bAutoWidth: !0, bDeferRender: !1, bDestroy: !1, bFilter: !0, bInfo: !0, bJQueryUI: !1, bLengthChange: !0, bPaginate: !0, bProcessing: !1, bRetrieve: !1, bScrollCollapse: !1, bServerSide: !1,
bSort: !0, bSortMulti: !0, bSortCellsTop: !1, bSortClasses: !0, bStateSave: !1, fnCreatedRow: null, fnDrawCallback: null, fnFooterCallback: null, fnFormatNumber: function (a) { return a.toString().replace(/\B(?=(\d{3})+(?!\d))/g, this.oLanguage.sThousands) }, fnHeaderCallback: null, fnInfoCallback: null, fnInitComplete: null, fnPreDrawCallback: null, fnRowCallback: null, fnServerData: null, fnServerParams: null, fnStateLoadCallback: function (a) {
try {
return JSON.parse((-1 === a.iStateDuration ? sessionStorage : localStorage).getItem("DataTables_" +
a.sInstance + "_" + location.pathname))
} catch (b) { }
}, fnStateLoadParams: null, fnStateLoaded: null, fnStateSaveCallback: function (a, b) { try { (-1 === a.iStateDuration ? sessionStorage : localStorage).setItem("DataTables_" + a.sInstance + "_" + location.pathname, JSON.stringify(b)) } catch (c) { } }, fnStateSaveParams: null, iStateDuration: 7200, iDeferLoading: null, iDisplayLength: 10, iDisplayStart: 0, iTabIndex: 0, oClasses: {}, oLanguage: {
oAria: { sSortAscending: ": activate to sort column ascending", sSortDescending: ": activate to sort column descending" },
oPaginate: { sFirst: "First", sLast: "Last", sNext: "Next", sPrevious: "Previous" }, sEmptyTable: "No data available in table", sInfo: "Showing _START_ to _END_ of _TOTAL_ entries", sInfoEmpty: "Showing 0 to 0 of 0 entries", sInfoFiltered: "(filtered from _MAX_ total entries)", sInfoPostFix: "", sDecimal: "", sThousands: ",", sLengthMenu: "Show _MENU_ entries", sLoadingRecords: "Loading...", sProcessing: "Processing...", sSearch: "Search:", sSearchPlaceholder: "", sUrl: "", sZeroRecords: "No matching records found"
}, oSearch: h.extend({},
m.models.oSearch), sAjaxDataProp: "data", sAjaxSource: null, sDom: "lfrtip", searchDelay: null, sPaginationType: "simple_numbers", sScrollX: "", sScrollXInner: "", sScrollY: "", sServerMethod: "GET", renderer: null, rowId: "DT_RowId"
}; Y(m.defaults); m.defaults.column = { aDataSort: null, iDataSort: -1, asSorting: ["asc", "desc"], bSearchable: !0, bSortable: !0, bVisible: !0, fnCreatedCell: null, mData: null, mRender: null, sCellType: "td", sClass: "", sContentPadding: "", sDefaultContent: null, sName: "", sSortDataType: "std", sTitle: null, sType: null, sWidth: null };
Y(m.defaults.column); m.models.oSettings = {
oFeatures: { bAutoWidth: null, bDeferRender: null, bFilter: null, bInfo: null, bLengthChange: null, bPaginate: null, bProcessing: null, bServerSide: null, bSort: null, bSortMulti: null, bSortClasses: null, bStateSave: null }, oScroll: { bCollapse: null, iBarWidth: 0, sX: null, sXInner: null, sY: null }, oLanguage: { fnInfoCallback: null }, oBrowser: { bScrollOversize: !1, bScrollbarLeft: !1, bBounding: !1, barWidth: 0 }, ajax: null, aanFeatures: [], aoData: [], aiDisplay: [], aiDisplayMaster: [], aIds: {}, aoColumns: [], aoHeader: [],
aoFooter: [], oPreviousSearch: {}, aoPreSearchCols: [], aaSorting: null, aaSortingFixed: [], asStripeClasses: null, asDestroyStripes: [], sDestroyWidth: 0, aoRowCallback: [], aoHeaderCallback: [], aoFooterCallback: [], aoDrawCallback: [], aoRowCreatedCallback: [], aoPreDrawCallback: [], aoInitComplete: [], aoStateSaveParams: [], aoStateLoadParams: [], aoStateLoaded: [], sTableId: "", nTable: null, nTHead: null, nTFoot: null, nTBody: null, nTableWrapper: null, bDeferLoading: !1, bInitialised: !1, aoOpenRows: [], sDom: null, searchDelay: null, sPaginationType: "two_button",
iStateDuration: 0, aoStateSave: [], aoStateLoad: [], oSavedState: null, oLoadedState: null, sAjaxSource: null, sAjaxDataProp: null, bAjaxDataGet: !0, jqXHR: null, json: k, oAjaxData: k, fnServerData: null, aoServerParams: [], sServerMethod: null, fnFormatNumber: null, aLengthMenu: null, iDraw: 0, bDrawing: !1, iDrawError: -1, _iDisplayLength: 10, _iDisplayStart: 0, _iRecordsTotal: 0, _iRecordsDisplay: 0, bJUI: null, oClasses: {}, bFiltered: !1, bSorted: !1, bSortCellsTop: null, oInit: null, aoDestroyCallback: [], fnRecordsTotal: function () {
return "ssp" == y(this) ?
1 * this._iRecordsTotal : this.aiDisplayMaster.length
}, fnRecordsDisplay: function () { return "ssp" == y(this) ? 1 * this._iRecordsDisplay : this.aiDisplay.length }, fnDisplayEnd: function () { var a = this._iDisplayLength, b = this._iDisplayStart, c = b + a, d = this.aiDisplay.length, e = this.oFeatures, f = e.bPaginate; return e.bServerSide ? !1 === f || -1 === a ? b + d : Math.min(b + a, this._iRecordsDisplay) : !f || c > d || -1 === a ? d : c }, oInstance: null, sInstance: null, iTabIndex: 0, nScrollHead: null, nScrollFoot: null, aLastSort: [], oPlugins: {}, rowIdFn: null, rowId: null
};
m.ext = s = { buttons: {}, classes: {}, build: "bs/jszip-2.5.0,pdfmake-0.1.18,dt-1.10.10,b-1.1.0,b-html5-1.1.0,b-print-1.1.0,r-2.0.0", errMode: "alert", feature: [], search: [], selector: { cell: [], column: [], row: [] }, internal: {}, legacy: { ajax: null }, pager: {}, renderer: { pageButton: {}, header: {} }, order: {}, type: { detect: [], search: {}, order: {} }, _unique: 0, fnVersionCheck: m.fnVersionCheck, iApiIndex: 0, oJUIClasses: {}, sVersion: m.version }; h.extend(s, {
afnFiltering: s.search, aTypes: s.type.detect, ofnSearch: s.type.search, oSort: s.type.order, afnSortData: s.order, aoFeatures: s.feature, oApi: s.internal, oStdClasses: s.classes,
oPagination: s.pager
}); h.extend(m.ext.classes, {
sTable: "dataTable", sNoFooter: "no-footer", sPageButton: "paginate_button", sPageButtonActive: "current", sPageButtonDisabled: "disabled", sStripeOdd: "odd", sStripeEven: "even", sRowEmpty: "dataTables_empty", sWrapper: "dataTables_wrapper", sFilter: "dataTables_filter", sInfo: "dataTables_info", sPaging: "dataTables_paginate paging_", sLength: "dataTables_length", sProcessing: "dataTables_processing", sSortAsc: "sorting_asc", sSortDesc: "sorting_desc", sSortable: "sorting", sSortableAsc: "sorting_asc_disabled",
sSortableDesc: "sorting_desc_disabled", sSortableNone: "sorting_disabled", sSortColumn: "sorting_", sFilterInput: "", sLengthSelect: "", sScrollWrapper: "dataTables_scroll", sScrollHead: "dataTables_scrollHead", sScrollHeadInner: "dataTables_scrollHeadInner", sScrollBody: "dataTables_scrollBody", sScrollFoot: "dataTables_scrollFoot", sScrollFootInner: "dataTables_scrollFootInner", sHeaderTH: "", sFooterTH: "", sSortJUIAsc: "", sSortJUIDesc: "", sSortJUI: "", sSortJUIAscAllowed: "", sSortJUIDescAllowed: "", sSortJUIWrapper: "", sSortIcon: "",
sJUIHeader: "", sJUIFooter: ""
}); var Ea = "", Ea = "", G = Ea + "ui-state-default", ka = Ea + "css_right ui-icon ui-icon-", Xb = Ea + "fg-toolbar ui-toolbar ui-widget-header ui-helper-clearfix"; h.extend(m.ext.oJUIClasses, m.ext.classes, {
sPageButton: "fg-button ui-button " + G, sPageButtonActive: "ui-state-disabled", sPageButtonDisabled: "ui-state-disabled", sPaging: "dataTables_paginate fg-buttonset ui-buttonset fg-buttonset-multi ui-buttonset-multi paging_", sSortAsc: G + " sorting_asc", sSortDesc: G + " sorting_desc", sSortable: G + " sorting",
sSortableAsc: G + " sorting_asc_disabled", sSortableDesc: G + " sorting_desc_disabled", sSortableNone: G + " sorting_disabled", sSortJUIAsc: ka + "triangle-1-n", sSortJUIDesc: ka + "triangle-1-s", sSortJUI: ka + "carat-2-n-s", sSortJUIAscAllowed: ka + "carat-1-n", sSortJUIDescAllowed: ka + "carat-1-s", sSortJUIWrapper: "DataTables_sort_wrapper", sSortIcon: "DataTables_sort_icon", sScrollHead: "dataTables_scrollHead " + G, sScrollFoot: "dataTables_scrollFoot " + G, sHeaderTH: G, sFooterTH: G, sJUIHeader: Xb + " ui-corner-tl ui-corner-tr", sJUIFooter: Xb +
" ui-corner-bl ui-corner-br"
}); var Mb = m.ext.pager; h.extend(Mb, { simple: function () { return ["previous", "next"] }, full: function () { return ["first", "previous", "next", "last"] }, numbers: function (a, b) { return [Aa(a, b)] }, simple_numbers: function (a, b) { return ["previous", Aa(a, b), "next"] }, full_numbers: function (a, b) { return ["first", "previous", Aa(a, b), "next", "last"] }, _numbers: Aa, numbers_length: 7 }); h.extend(!0, m.ext.renderer, {
pageButton: {
_: function (a, b, c, d, e, f) {
var g = a.oClasses, j = a.oLanguage.oPaginate, i = a.oLanguage.oAria.paginate ||
{}, k, l, m = 0, p = function (b, d) {
var n, r, t, s, v = function (b) { Ta(a, b.data.action, true) }; n = 0; for (r = d.length; n < r; n++) {
s = d[n]; if (h.isArray(s)) { t = h("<" + (s.DT_el || "div") + "/>").appendTo(b); p(t, s) } else {
k = null; l = ""; switch (s) {
case "ellipsis": b.append('<span class="ellipsis">&#x2026;</span>'); break; case "first": k = j.sFirst; l = s + (e > 0 ? "" : " " + g.sPageButtonDisabled); break; case "previous": k = j.sPrevious; l = s + (e > 0 ? "" : " " + g.sPageButtonDisabled); break; case "next": k = j.sNext; l = s + (e < f - 1 ? "" : " " + g.sPageButtonDisabled); break; case "last": k =
j.sLast; l = s + (e < f - 1 ? "" : " " + g.sPageButtonDisabled); break; default: k = s + 1; l = e === s ? g.sPageButtonActive : ""
}if (k !== null) { t = h("<a>", { "class": g.sPageButton + " " + l, "aria-controls": a.sTableId, "aria-label": i[s], "data-dt-idx": m, tabindex: a.iTabIndex, id: c === 0 && typeof s === "string" ? a.sTableId + "_" + s : null }).html(k).appendTo(b); Wa(t, { action: s }, v); m++ }
}
}
}, r; try { r = h(b).find(H.activeElement).data("dt-idx") } catch (n) { } p(h(b).empty(), d); r && h(b).find("[data-dt-idx=" + r + "]").focus()
}
}
}); h.extend(m.ext.type.detect, [function (a, b) {
var c =
b.oLanguage.sDecimal; return Za(a, c) ? "num" + c : null
}, function (a) { if (a && !(a instanceof Date) && (!ac.test(a) || !bc.test(a))) return null; var b = Date.parse(a); return null !== b && !isNaN(b) || M(a) ? "date" : null }, function (a, b) { var c = b.oLanguage.sDecimal; return Za(a, c, !0) ? "num-fmt" + c : null }, function (a, b) { var c = b.oLanguage.sDecimal; return Rb(a, c) ? "html-num" + c : null }, function (a, b) { var c = b.oLanguage.sDecimal; return Rb(a, c, !0) ? "html-num-fmt" + c : null }, function (a) {
return M(a) || "string" === typeof a && -1 !== a.indexOf("<") ? "html" :
null
}]); h.extend(m.ext.type.search, { html: function (a) { return M(a) ? a : "string" === typeof a ? a.replace(Ob, " ").replace(Ca, "") : "" }, string: function (a) { return M(a) ? a : "string" === typeof a ? a.replace(Ob, " ") : a } }); var Ba = function (a, b, c, d) { if (0 !== a && (!a || "-" === a)) return -Infinity; b && (a = Qb(a, b)); a.replace && (c && (a = a.replace(c, "")), d && (a = a.replace(d, ""))); return 1 * a }; h.extend(s.type.order, {
"date-pre": function (a) { return Date.parse(a) || 0 }, "html-pre": function (a) {
return M(a) ? "" : a.replace ? a.replace(/<.*?>/g, "").toLowerCase() :
a + ""
}, "string-pre": function (a) { return M(a) ? "" : "string" === typeof a ? a.toLowerCase() : !a.toString ? "" : a.toString() }, "string-asc": function (a, b) { return a < b ? -1 : a > b ? 1 : 0 }, "string-desc": function (a, b) { return a < b ? 1 : a > b ? -1 : 0 }
}); db(""); h.extend(!0, m.ext.renderer, {
header: {
_: function (a, b, c, d) { h(a.nTable).on("order.dt.DT", function (e, f, g, h) { if (a === f) { e = c.idx; b.removeClass(c.sSortingClass + " " + d.sSortAsc + " " + d.sSortDesc).addClass(h[e] == "asc" ? d.sSortAsc : h[e] == "desc" ? d.sSortDesc : c.sSortingClass) } }) }, jqueryui: function (a,
b, c, d) {
h("<div/>").addClass(d.sSortJUIWrapper).append(b.contents()).append(h("<span/>").addClass(d.sSortIcon + " " + c.sSortingClassJUI)).appendTo(b); h(a.nTable).on("order.dt.DT", function (e, f, g, h) {
if (a === f) {
e = c.idx; b.removeClass(d.sSortAsc + " " + d.sSortDesc).addClass(h[e] == "asc" ? d.sSortAsc : h[e] == "desc" ? d.sSortDesc : c.sSortingClass); b.find("span." + d.sSortIcon).removeClass(d.sSortJUIAsc + " " + d.sSortJUIDesc + " " + d.sSortJUI + " " + d.sSortJUIAscAllowed + " " + d.sSortJUIDescAllowed).addClass(h[e] == "asc" ? d.sSortJUIAsc :
h[e] == "desc" ? d.sSortJUIDesc : c.sSortingClassJUI)
}
})
}
}
}); m.render = {
number: function (a, b, c, d, e) { return { display: function (f) { if ("number" !== typeof f && "string" !== typeof f) return f; var g = 0 > f ? "-" : "", h = parseFloat(f); if (isNaN(h)) return f; f = Math.abs(h); h = parseInt(f, 10); f = c ? b + (f - h).toFixed(c).substring(2) : ""; return g + (d || "") + h.toString().replace(/\B(?=(\d{3})+(?!\d))/g, a) + f + (e || "") } } }, text: function () {
return {
display: function (a) {
return "string" === typeof a ? a.replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;") :
a
}
}
}
}; h.extend(m.ext.internal, {
_fnExternApiFunc: Nb, _fnBuildAjax: ra, _fnAjaxUpdate: lb, _fnAjaxParameters: ub, _fnAjaxUpdateDraw: vb, _fnAjaxDataSrc: sa, _fnAddColumn: Ga, _fnColumnOptions: la, _fnAdjustColumnSizing: U, _fnVisibleToColumnIndex: $, _fnColumnIndexToVisible: ba, _fnVisbleColumns: ca, _fnGetColumns: aa, _fnColumnTypes: Ia, _fnApplyColumnDefs: ib, _fnHungarianMap: Y, _fnCamelToHungarian: J, _fnLanguageCompat: Fa, _fnBrowserDetect: gb, _fnAddData: N, _fnAddTr: ma, _fnNodeToDataIndex: function (a, b) {
return b._DT_RowIndex !== k ? b._DT_RowIndex :
null
}, _fnNodeToColumnIndex: function (a, b, c) { return h.inArray(c, a.aoData[b].anCells) }, _fnGetCellData: B, _fnSetCellData: jb, _fnSplitObjNotation: La, _fnGetObjectDataFn: Q, _fnSetObjectDataFn: R, _fnGetDataMaster: Ma, _fnClearTable: na, _fnDeleteIndex: oa, _fnInvalidate: ea, _fnGetRowElements: Ka, _fnCreateTr: Ja, _fnBuildHead: kb, _fnDrawHead: ga, _fnDraw: O, _fnReDraw: T, _fnAddOptionsHtml: nb, _fnDetectHeader: fa, _fnGetUniqueThs: qa, _fnFeatureHtmlFilter: pb, _fnFilterComplete: ha, _fnFilterCustom: yb, _fnFilterColumn: xb, _fnFilter: wb, _fnFilterCreateSearch: Qa,
_fnEscapeRegex: va, _fnFilterData: zb, _fnFeatureHtmlInfo: sb, _fnUpdateInfo: Cb, _fnInfoMacros: Db, _fnInitialise: ia, _fnInitComplete: ta, _fnLengthChange: Ra, _fnFeatureHtmlLength: ob, _fnFeatureHtmlPaginate: tb, _fnPageChange: Ta, _fnFeatureHtmlProcessing: qb, _fnProcessingDisplay: C, _fnFeatureHtmlTable: rb, _fnScrollDraw: Z, _fnApplyToChildren: I, _fnCalculateColumnWidths: Ha, _fnThrottle: ua, _fnConvertToWidth: Fb, _fnGetWidestNode: Gb, _fnGetMaxLenString: Hb, _fnStringToCss: w, _fnSortFlatten: W, _fnSort: mb, _fnSortAria: Jb, _fnSortListener: Va,
_fnSortAttachListener: Oa, _fnSortingClasses: xa, _fnSortData: Ib, _fnSaveState: ya, _fnLoadState: Kb, _fnSettingsFromNode: za, _fnLog: K, _fnMap: F, _fnBindAction: Wa, _fnCallbackReg: z, _fnCallbackFire: v, _fnLengthOverflow: Sa, _fnRenderer: Pa, _fnDataSource: y, _fnRowAttributes: Na, _fnCalculateEnd: function () { }
}); h.fn.dataTable = m; m.$ = h; h.fn.dataTableSettings = m.settings; h.fn.dataTableExt = m.ext; h.fn.DataTable = function (a) { return h(this).dataTable(a).api() }; h.each(m, function (a, b) { h.fn.DataTable[a] = b }); return h.fn.dataTable
});
/*!
DataTables Bootstrap 3 integration
©2011-2015 SpryMedia Ltd - datatables.net/license
*/
(function (b) { "function" === typeof define && define.amd ? define(["jquery", "datatables.net"], function (a) { return b(a, window, document) }) : "object" === typeof exports ? module.exports = function (a, e) { a || (a = window); if (!e || !e.fn.dataTable) e = require("datatables.net")(a, e).$; return b(e, a, a.document) } : b(jQuery, window, document) })(function (b, a, e) {
var d = b.fn.dataTable; b.extend(!0, d.defaults, { dom: "<'row'<'col-sm-6'l><'col-sm-6'f>><'row'<'col-sm-12'tr>><'row'<'col-sm-5'i><'col-sm-7'p>>", renderer: "bootstrap" }); b.extend(d.ext.classes,
{ sWrapper: "dataTables_wrapper form-inline dt-bootstrap", sFilterInput: "form-control input-sm", sLengthSelect: "form-control input-sm", sProcessing: "dataTables_processing panel panel-default" }); d.ext.renderer.pageButton.bootstrap = function (a, h, r, m, j, n) {
var o = new d.Api(a), s = a.oClasses, k = a.oLanguage.oPaginate, t = a.oLanguage.oAria.paginate || {}, f, g, p = 0, q = function (d, e) {
var l, h, i, c, m = function (a) { a.preventDefault(); !b(a.currentTarget).hasClass("disabled") && o.page() != a.data.action && o.page(a.data.action).draw("page") };
l = 0; for (h = e.length; l < h; l++)if (c = e[l], b.isArray(c)) q(d, c); else {
g = f = ""; switch (c) { case "ellipsis": f = "&#x2026;"; g = "disabled"; break; case "first": f = k.sFirst; g = c + (0 < j ? "" : " disabled"); break; case "previous": f = k.sPrevious; g = c + (0 < j ? "" : " disabled"); break; case "next": f = k.sNext; g = c + (j < n - 1 ? "" : " disabled"); break; case "last": f = k.sLast; g = c + (j < n - 1 ? "" : " disabled"); break; default: f = c + 1, g = j === c ? "active" : "" }f && (i = b("<li>", { "class": s.sPageButton + " " + g, id: 0 === r && "string" === typeof c ? a.sTableId + "_" + c : null }).append(b("<a>", {
href: "#",
"aria-controls": a.sTableId, "aria-label": t[c], "data-dt-idx": p, tabindex: a.iTabIndex
}).html(f)).appendTo(d), a.oApi._fnBindAction(i, { action: c }, m), p++)
}
}, i; try { i = b(h).find(e.activeElement).data("dt-idx") } catch (u) { } q(b(h).empty().html('<ul class="pagination"/>').children("ul"), m); i && b(h).find("[data-dt-idx=" + i + "]").focus()
}; d.TableTools && (b.extend(!0, d.TableTools.classes, {
container: "DTTT btn-group", buttons: { normal: "btn btn-default", disabled: "disabled" }, collection: {
container: "DTTT_dropdown dropdown-menu",
buttons: { normal: "", disabled: "disabled" }
}, print: { info: "DTTT_print_info" }, select: { row: "active" }
}), b.extend(!0, d.TableTools.DEFAULTS.oTags, { collection: { container: "ul", button: "li", liner: "a" } })); return d
});
/*!
Buttons for DataTables 1.1.0
©2015 SpryMedia Ltd - datatables.net/license
*/
(function (e) { "function" === typeof define && define.amd ? define(["jquery", "datatables.net"], function (n) { return e(n, window, document) }) : "object" === typeof exports ? module.exports = function (n, o) { n || (n = window); if (!o || !o.fn.dataTable) o = require("datatables.net")(n, o).$; return e(o, n, n.document) } : e(jQuery, window, document) })(function (e, n, o, m) {
var j = e.fn.dataTable, s = 0, t = 0, k = j.ext.buttons, l = function (a, b) {
!0 === b && (b = {}); e.isArray(b) && (b = { buttons: b }); this.c = e.extend(!0, {}, l.defaults, b); b.buttons && (this.c.buttons = b.buttons);
this.s = { dt: new j.Api(a), buttons: [], subButtons: [], listenKeys: "", namespace: "dtb" + s++ }; this.dom = { container: e("<" + this.c.dom.container.tag + "/>").addClass(this.c.dom.container.className) }; this._constructor()
}; e.extend(l.prototype, {
action: function (a, b) { var c = this._indexToButton(a).conf; if (b === m) return c.action; c.action = b; return this }, active: function (a, b) { this._indexToButton(a).node.toggleClass(this.c.dom.button.active, b === m ? !0 : b); return this }, add: function (a, b) {
if ("string" === typeof a && -1 !== a.indexOf("-")) {
var c =
a.split("-"); this.c.buttons[1 * c[0]].buttons.splice(1 * c[1], 0, b)
} else this.c.buttons.splice(1 * a, 0, b); this.dom.container.empty(); this._buildButtons(this.c.buttons); return this
}, container: function () { return this.dom.container }, disable: function (a) { this._indexToButton(a).node.addClass(this.c.dom.button.disabled); return this }, destroy: function () {
e("body").off("keyup." + this.s.namespace); var a = this.s.buttons, b = this.s.subButtons, c, d, f; c = 0; for (a = a.length; c < a; c++) {
this.removePrep(c); d = 0; for (f = b[c].length; d < f; d++)this.removePrep(c +
"-" + d)
} this.removeCommit(); this.dom.container.remove(); b = this.s.dt.settings()[0]; c = 0; for (a = b.length; c < a; c++)if (b.inst === this) { b.splice(c, 1); break } return this
}, enable: function (a, b) { if (!1 === b) return this.disable(a); this._indexToButton(a).node.removeClass(this.c.dom.button.disabled); return this }, name: function () { return this.c.name }, node: function (a) { return this._indexToButton(a).node }, removeCommit: function () {
var a = this.s.buttons, b = this.s.subButtons, c, d; for (c = a.length - 1; 0 <= c; c--)null === a[c] && (a.splice(c,
1), b.splice(c, 1), this.c.buttons.splice(c, 1)); c = 0; for (a = b.length; c < a; c++)for (d = b[c].length - 1; 0 <= d; d--)null === b[c][d] && (b[c].splice(d, 1), this.c.buttons[c].buttons.splice(d, 1)); return this
}, removePrep: function (a) {
var b, c = this.s.dt; if ("number" === typeof a || -1 === a.indexOf("-")) b = this.s.buttons[1 * a], b.conf.destroy && b.conf.destroy.call(c.button(a), c, b, b.conf), b.node.remove(), this._removeKey(b.conf), this.s.buttons[1 * a] = null; else {
var d = a.split("-"); b = this.s.subButtons[1 * d[0]][1 * d[1]]; b.conf.destroy && b.conf.destroy.call(c.button(a),
c, b, b.conf); b.node.remove(); this._removeKey(b.conf); this.s.subButtons[1 * d[0]][1 * d[1]] = null
} return this
}, text: function (a, b) { var c = this._indexToButton(a), d = this.c.dom.collection.buttonLiner, d = "string" === typeof a && -1 !== a.indexOf("-") && d && d.tag ? d.tag : this.c.dom.buttonLiner.tag, e = this.s.dt, g = function (a) { return "function" === typeof a ? a(e, c.node, c.conf) : a }; if (b === m) return g(c.conf.text); c.conf.text = b; d ? c.node.children(d).html(g(b)) : c.node.html(g(b)); return this }, toIndex: function (a) {
var b, c, d, e; d = this.s.buttons;
var g = this.s.subButtons; b = 0; for (c = d.length; b < c; b++)if (d[b].node[0] === a) return b + ""; b = 0; for (c = g.length; b < c; b++) { d = 0; for (e = g[b].length; d < e; d++)if (g[b][d].node[0] === a) return b + "-" + d }
}, _constructor: function () {
var a = this, b = this.s.dt, c = b.settings()[0]; c._buttons || (c._buttons = []); c._buttons.push({ inst: this, name: this.c.name }); this._buildButtons(this.c.buttons); b.on("destroy", function () { a.destroy() }); e("body").on("keyup." + this.s.namespace, function (b) {
if (!o.activeElement || o.activeElement === o.body) {
var c = String.fromCharCode(b.keyCode).toLowerCase();
a.s.listenKeys.toLowerCase().indexOf(c) !== -1 && a._keypress(c, b)
}
})
}, _addKey: function (a) { a.key && (this.s.listenKeys += e.isPlainObject(a.key) ? a.key.key : a.key) }, _buildButtons: function (a, b, c) {
var d = this.s.dt; b || (b = this.dom.container, this.s.buttons = [], this.s.subButtons = []); for (var f = 0, g = a.length; f < g; f++) {
var h = this._resolveExtends(a[f]); if (h) if (e.isArray(h)) this._buildButtons(h, b, c); else {
var i = this._buildButton(h, c !== m ? !0 : !1); if (i) {
var q = i.node; b.append(i.inserter); c === m ? (this.s.buttons.push({
node: q, conf: h,
inserter: i.inserter
}), this.s.subButtons.push([])) : this.s.subButtons[c].push({ node: q, conf: h, inserter: i.inserter }); h.buttons && (i = this.c.dom.collection, h._collection = e("<" + i.tag + "/>").addClass(i.className), this._buildButtons(h.buttons, h._collection, f)); h.init && h.init.call(d.button(q), d, q, h)
}
}
}
}, _buildButton: function (a, b) {
var c = this.c.dom.button, d = this.c.dom.buttonLiner, f = this.c.dom.collection, g = this.s.dt, h = function (b) { return "function" === typeof b ? b(g, i, a) : b }; b && f.button && (c = f.button); b && f.buttonLiner &&
(d = f.buttonLiner); if (a.available && !a.available(g, a)) return !1; var i = e("<" + c.tag + "/>").addClass(c.className).attr("tabindex", this.s.dt.settings()[0].iTabIndex).attr("aria-controls", this.s.dt.table().node().id).on("click.dtb", function (b) { b.preventDefault(); !i.hasClass(c.disabled) && a.action && a.action.call(g.button(i), b, g, i, a); i.blur() }).on("keyup.dtb", function (b) { b.keyCode === 13 && !i.hasClass(c.disabled) && a.action && a.action.call(g.button(i), b, g, i, a) }); d.tag ? i.append(e("<" + d.tag + "/>").html(h(a.text)).addClass(d.className)) :
i.html(h(a.text)); !1 === a.enabled && i.addClass(c.disabled); a.className && i.addClass(a.className); a.titleAttr && i.attr("title", a.titleAttr); a.namespace || (a.namespace = ".dt-button-" + t++); d = (d = this.c.dom.buttonContainer) ? e("<" + d.tag + "/>").addClass(d.className).append(i) : i; this._addKey(a); return { node: i, inserter: d }
}, _indexToButton: function (a) { if ("number" === typeof a || -1 === a.indexOf("-")) return this.s.buttons[1 * a]; a = a.split("-"); return this.s.subButtons[1 * a[0]][1 * a[1]] }, _keypress: function (a, b) {
var c, d, f, g; f =
this.s.buttons; var h = this.s.subButtons, i = function (c, d) { if (c.key) if (c.key === a) d.click(); else if (e.isPlainObject(c.key) && c.key.key === a && (!c.key.shiftKey || b.shiftKey)) if (!c.key.altKey || b.altKey) if (!c.key.ctrlKey || b.ctrlKey) (!c.key.metaKey || b.metaKey) && d.click() }; c = 0; for (d = f.length; c < d; c++)i(f[c].conf, f[c].node); c = 0; for (d = h.length; c < d; c++) { f = 0; for (g = h[c].length; f < g; f++)i(h[c][f].conf, h[c][f].node) }
}, _removeKey: function (a) {
if (a.key) {
var b = e.isPlainObject(a.key) ? a.key.key : a.key, a = this.s.listenKeys.split(""),
b = e.inArray(b, a); a.splice(b, 1); this.s.listenKeys = a.join("")
}
}, _resolveExtends: function (a) {
for (var b = this.s.dt, c, d, f = function (c) { for (var d = 0; !e.isPlainObject(c) && !e.isArray(c);) { if (c === m) return; if ("function" === typeof c) { if (c = c(b, a), !c) return !1 } else if ("string" === typeof c) { if (!k[c]) throw "Unknown button type: " + c; c = k[c] } d++; if (30 < d) throw "Buttons: Too many iterations"; } return e.isArray(c) ? c : e.extend({}, c) }, a = f(a); a && a.extend;) {
if (!k[a.extend]) throw "Cannot extend unknown button type: " + a.extend; var g =
f(k[a.extend]); if (e.isArray(g)) return g; if (!g) return !1; c = g.className; a = e.extend({}, g, a); c && a.className !== c && (a.className = c + " " + a.className); var h = a.postfixButtons; if (h) { a.buttons || (a.buttons = []); c = 0; for (d = h.length; c < d; c++)a.buttons.push(h[c]); a.postfixButtons = null } if (h = a.prefixButtons) { a.buttons || (a.buttons = []); c = 0; for (d = h.length; c < d; c++)a.buttons.splice(c, 0, h[c]); a.prefixButtons = null } a.extend = g.extend
} return a
}
}); l.background = function (a, b, c) {
c === m && (c = 400); a ? e("<div/>").addClass(b).css("display",
"none").appendTo("body").fadeIn(c) : e("body > div." + b).fadeOut(c, function () { e(this).remove() })
}; l.instanceSelector = function (a, b) { if (!a) return e.map(b, function (a) { return a.inst }); var c = [], d = e.map(b, function (a) { return a.name }), f = function (a) { if (e.isArray(a)) for (var h = 0, i = a.length; h < i; h++)f(a[h]); else "string" === typeof a ? -1 !== a.indexOf(",") ? f(a.split(",")) : (a = e.inArray(e.trim(a), d), -1 !== a && c.push(b[a].inst)) : "number" === typeof a && c.push(b[a].inst) }; f(a); return c }; l.buttonSelector = function (a, b) {
for (var c =
[], d = function (a, b) {
var f, g, j = []; e.each(b.s.buttons, function (a, b) { null !== b && j.push({ node: b.node[0], name: b.name }) }); e.each(b.s.subButtons, function (a, b) { e.each(b, function (a, b) { null !== b && j.push({ node: b.node[0], name: b.name }) }) }); f = e.map(j, function (a) { return a.node }); if (e.isArray(a) || a instanceof e) { f = 0; for (g = a.length; f < g; f++)d(a[f], b) } else if (null === a || a === m || "*" === a) { f = 0; for (g = j.length; f < g; f++)c.push({ inst: b, idx: b.toIndex(j[f].node) }) } else if ("number" === typeof a) c.push({ inst: b, idx: a }); else if ("string" ===
typeof a) if (-1 !== a.indexOf(",")) { var k = a.split(","); f = 0; for (g = k.length; f < g; f++)d(e.trim(k[f]), b) } else if (a.match(/^\d+(\-\d+)?$/)) c.push({ inst: b, idx: a }); else if (-1 !== a.indexOf(":name")) { k = a.replace(":name", ""); f = 0; for (g = j.length; f < g; f++)j[f].name === k && c.push({ inst: b, idx: b.toIndex(j[f].node) }) } else e(f).filter(a).each(function () { c.push({ inst: b, idx: b.toIndex(this) }) }); else "object" === typeof a && a.nodeName && (g = e.inArray(a, f), -1 !== g && c.push({ inst: b, idx: b.toIndex(f[g]) }))
}, f = 0, g = a.length; f < g; f++)d(b, a[f]);
return c
}; l.defaults = { buttons: ["copy", "excel", "csv", "pdf", "print"], name: "main", tabIndex: 0, dom: { container: { tag: "div", className: "dt-buttons" }, collection: { tag: "div", className: "dt-button-collection" }, button: { tag: "a", className: "dt-button", active: "active", disabled: "disabled" }, buttonLiner: { tag: "span", className: "" } } }; l.version = "1.1.0"; e.extend(k, {
collection: {
text: function (a) { return a.i18n("buttons.collection", "Collection") }, className: "buttons-collection", action: function (a, b, c, d) {
var a = c.offset(), b = e(b.table().container()),
f = !1; e("div.dt-button-background").length && (f = e("div.dt-button-collection").offset(), e(o).trigger("click.dtb-collection")); d._collection.addClass(d.collectionLayout).css("display", "none").appendTo("body").fadeIn(d.fade); var g = d._collection.css("position"); f && "absolute" === g ? d._collection.css({ top: f.top + 5, left: f.left + 5 }) : "absolute" === g ? (d._collection.css({ top: a.top + c.outerHeight(), left: a.left }), c = a.left + d._collection.outerWidth(), b = b.offset().left + b.width(), c > b && d._collection.css("left", a.left - (c - b))) :
(a = d._collection.height() / 2, a > e(n).height() / 2 && (a = e(n).height() / 2), d._collection.css("marginTop", -1 * a)); d.background && l.background(!0, d.backgroundClassName, d.fade); setTimeout(function () {
e("div.dt-button-background").on("click.dtb-collection", function () { }); e("body").on("click.dtb-collection", function (a) {
if (!e(a.target).parents().andSelf().filter(d._collection).length) {
d._collection.fadeOut(d.fade, function () { d._collection.detach() }); e("div.dt-button-background").off("click.dtb-collection"); l.background(false,
d.backgroundClassName, d.fade); e("body").off("click.dtb-collection")
}
})
}, 10)
}, background: !0, collectionLayout: "", backgroundClassName: "dt-button-background", fade: 400
}, copy: function (a, b) { if (k.copyHtml5) return "copyHtml5"; if (k.copyFlash && k.copyFlash.available(a, b)) return "copyFlash" }, csv: function (a, b) { if (k.csvHtml5 && k.csvHtml5.available(a, b)) return "csvHtml5"; if (k.csvFlash && k.csvFlash.available(a, b)) return "csvFlash" }, excel: function (a, b) {
if (k.excelHtml5 && k.excelHtml5.available(a, b)) return "excelHtml5"; if (k.excelFlash &&
k.excelFlash.available(a, b)) return "excelFlash"
}, pdf: function (a, b) { if (k.pdfHtml5 && k.pdfHtml5.available(a, b)) return "pdfHtml5"; if (k.pdfFlash && k.pdfFlash.available(a, b)) return "pdfFlash" }, pageLength: function (a) {
var a = a.settings()[0].aLengthMenu, b = e.isArray(a[0]) ? a[0] : a, c = e.isArray(a[0]) ? a[1] : a, d = function (a) { return a.i18n("buttons.pageLength", { "-1": "Show all rows", _: "Show %d rows" }, a.page.len()) }; return {
extend: "collection", text: d, className: "buttons-page-length", buttons: e.map(b, function (a, b) {
return {
text: c[b],
action: function (b, c) { c.page.len(a).draw() }, init: function (b, c, d) { var e = this, c = function () { e.active(b.page.len() === a) }; b.on("length.dt" + d.namespace, c); c() }, destroy: function (a, b, c) { a.off("length.dt" + c.namespace) }
}
}), init: function (a, b, c) { var e = this; a.on("length.dt" + c.namespace, function () { e.text(d(a)) }) }, destroy: function (a, b, c) { a.off("length.dt" + c.namespace) }
}
}
}); j.Api.register("buttons()", function (a, b) {
b === m && (b = a, a = m); return this.iterator(!0, "table", function (c) {
if (c._buttons) return l.buttonSelector(l.instanceSelector(a,
c._buttons), b)
}, !0)
}); j.Api.register("button()", function (a, b) { var c = this.buttons(a, b); 1 < c.length && c.splice(1, c.length); return c }); j.Api.register(["buttons().active()", "button().active()"], function (a) { return this.each(function (b) { b.inst.active(b.idx, a) }) }); j.Api.registerPlural("buttons().action()", "button().action()", function (a) { return a === m ? this.map(function (a) { return a.inst.action(a.idx) }) : this.each(function (b) { b.inst.action(b.idx, a) }) }); j.Api.register(["buttons().enable()", "button().enable()"],
function (a) { return this.each(function (b) { b.inst.enable(b.idx, a) }) }); j.Api.register(["buttons().disable()", "button().disable()"], function () { return this.each(function (a) { a.inst.disable(a.idx) }) }); j.Api.registerPlural("buttons().nodes()", "button().node()", function () { var a = e(); e(this.each(function (b) { a = a.add(b.inst.node(b.idx)) })); return a }); j.Api.registerPlural("buttons().text()", "button().text()", function (a) {
return a === m ? this.map(function (a) { return a.inst.text(a.idx) }) : this.each(function (b) {
b.inst.text(b.idx,
a)
})
}); j.Api.registerPlural("buttons().trigger()", "button().trigger()", function () { return this.each(function (a) { a.inst.node(a.idx).trigger("click") }) }); j.Api.registerPlural("buttons().containers()", "buttons().container()", function () { var a = e(); e(this.each(function (b) { a = a.add(b.inst.container()) })); return a }); j.Api.register("button().add()", function (a, b) { 1 === this.length && this[0].inst.add(a, b); return this.button(a) }); j.Api.register("buttons().destroy()", function () {
this.pluck("inst").unique().each(function (a) { a.destroy() });
return this
}); j.Api.registerPlural("buttons().remove()", "buttons().remove()", function () { this.each(function (a) { a.inst.removePrep(a.idx) }); this.pluck("inst").unique().each(function (a) { a.removeCommit() }); return this }); var p; j.Api.register("buttons.info()", function (a, b, c) {
var d = this; if (!1 === a) return e("#datatables_buttons_info").fadeOut(function () { e(this).remove() }), clearTimeout(p), p = null, this; p && clearTimeout(p); e("#datatables_buttons_info").length && e("#datatables_buttons_info").remove(); e('<div id="datatables_buttons_info" class="dt-button-info"/>').html(a ?
"<h2>" + a + "</h2>" : "").append(e("<div/>")["string" === typeof b ? "html" : "append"](b)).css("display", "none").appendTo("body").fadeIn(); c !== m && 0 !== c && (p = setTimeout(function () { d.buttons.info(!1) }, c)); return this
}); j.Api.register("buttons.exportData()", function (a) {
if (this.context.length) {
for (var b = new j.Api(this.context[0]), c = e.extend(!0, {}, {
rows: null, columns: "", modifier: { search: "applied", order: "applied" }, orthogonal: "display", stripHtml: !0, stripNewlines: !0, decodeEntities: !0, trim: !0, format: {
header: function (a) { return d(a) },
footer: function (a) { return d(a) }, body: function (a) { return d(a) }
}
}, a), d = function (a) { if ("string" !== typeof a) return a; c.stripHtml && (a = a.replace(/<.*?>/g, "")); c.trim && (a = a.replace(/^\s+|\s+$/g, "")); c.stripNewlines && (a = a.replace(/\n/g, " ")); c.decodeEntities && (r.innerHTML = a, a = r.value); return a }, a = b.columns(c.columns).indexes().map(function (a) { return c.format.header(b.column(a).header().innerHTML, a) }).toArray(), f = b.table().footer() ? b.columns(c.columns).indexes().map(function (a) {
var d = b.column(a).footer();
return c.format.footer(d ? d.innerHTML : "", a)
}).toArray() : null, g = b.rows(c.rows, c.modifier).indexes().toArray(), g = b.cells(g, c.columns).render(c.orthogonal).toArray(), h = a.length, i = 0 < h ? g.length / h : 0, k = Array(i), l = 0, m = 0; m < i; m++) { for (var o = Array(h), n = 0; n < h; n++)o[n] = c.format.body(g[l], n, m), l++; k[m] = o } return { header: a, footer: f, body: k }
}
}); var r = e("<textarea/>")[0]; e.fn.dataTable.Buttons = l; e.fn.DataTable.Buttons = l; e(o).on("init.dt plugin-init.dt", function (a, b) {
if ("dt" === a.namespace) {
var c = b.oInit.buttons || j.defaults.buttons;
c && !b._buttons && (new l(b, c)).container()
}
}); j.ext.feature.push({ fnInit: function (a) { var a = new j.Api(a), b = a.init().buttons || j.defaults.buttons; return (new l(a, b)).container() }, cFeature: "B" }); return l
});
/*!
Bootstrap integration for DataTables' Buttons
©2015 SpryMedia Ltd - datatables.net/license
*/
(function (c) { "function" === typeof define && define.amd ? define(["jquery", "datatables.net-bs", "datatables.net-buttons"], function (a) { return c(a, window, document) }) : "object" === typeof exports ? module.exports = function (a, b) { a || (a = window); if (!b || !b.fn.dataTable) b = require("datatables.net-bs")(a, b).$; b.fn.dataTable.Buttons || require("datatables.net-buttons")(a, b); return c(b, a, a.document) } : c(jQuery, window, document) })(function (c) {
var a = c.fn.dataTable; c.extend(!0, a.Buttons.defaults, {
dom: {
container: { className: "dt-buttons btn-group" },
button: { className: "btn btn-default" }, collection: { tag: "ul", className: "dt-button-collection dropdown-menu", button: { tag: "li", className: "dt-button" }, buttonLiner: { tag: "a", className: "" } }
}
}); a.ext.buttons.collection.text = function (a) { return a.i18n("buttons.collection", 'Collection <span class="caret"/>') }; return a.Buttons
});
(function (g) { "function" === typeof define && define.amd ? define(["jquery", "datatables.net", "datatables.net-buttons"], function (d) { return g(d, window, document) }) : "object" === typeof exports ? module.exports = function (d, f) { d || (d = window); if (!f || !f.fn.dataTable) f = require("datatables.net")(d, f).$; f.fn.dataTable.Buttons || require("datatables.net-buttons")(d, f); return g(f, d, d.document) } : g(jQuery, window, document) })(function (g, d, f, k) {
var l = g.fn.dataTable, j; if ("undefined" !== typeof navigator && /MSIE [1-9]\./.test(navigator.userAgent)) j =
void 0; else {
var v = d.document, o = v.createElementNS("http://www.w3.org/1999/xhtml", "a"), D = "download" in o, p = d.webkitRequestFileSystem, w = d.requestFileSystem || p || d.mozRequestFileSystem, E = function (a) { (d.setImmediate || d.setTimeout)(function () { throw a; }, 0) }, q = 0, r = function (a) { var b = function () { "string" === typeof a ? (d.URL || d.webkitURL || d).revokeObjectURL(a) : a.remove() }; d.chrome ? b() : setTimeout(b, 500) }, s = function (a, b, e) {
for (var b = [].concat(b), c = b.length; c--;) {
var d = a["on" + b[c]]; if ("function" === typeof d) try {
d.call(a,
e || a)
} catch (h) { E(h) }
}
}, y = function (a) { return /^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type) ? new Blob(["", a], { type: a.type }) : a }, A = function (a, b) {
var a = y(a), e = this, c = a.type, x = !1, h, g, z = function () { s(e, ["writestart", "progress", "write", "writeend"]) }, f = function () { if (x || !h) h = (d.URL || d.webkitURL || d).createObjectURL(a); g ? g.location.href = h : d.open(h, "_blank") === k && "undefined" !== typeof safari && (d.location.href = h); e.readyState = e.DONE; z(); r(h) }, n = function (a) {
return function () {
if (e.readyState !==
e.DONE) return a.apply(this, arguments)
}
}, i = { create: !0, exclusive: !1 }, j; e.readyState = e.INIT; b || (b = "download"); if (D) h = (d.URL || d.webkitURL || d).createObjectURL(a), o.href = h, o.download = b, c = v.createEvent("MouseEvents"), c.initMouseEvent("click", !0, !1, d, 0, 0, 0, 0, 0, !1, !1, !1, !1, 0, null), o.dispatchEvent(c), e.readyState = e.DONE, z(), r(h); else {
d.chrome && (c && "application/octet-stream" !== c) && (j = a.slice || a.webkitSlice, a = j.call(a, 0, a.size, "application/octet-stream"), x = !0); p && "download" !== b && (b += ".download"); if ("application/octet-stream" ===
c || p) g = d; w ? (q += a.size, w(d.TEMPORARY, q, n(function (c) {
c.root.getDirectory("saved", i, n(function (c) {
var d = function () {
c.getFile(b, i, n(function (b) { b.createWriter(n(function (c) { c.onwriteend = function (a) { g.location.href = b.toURL(); e.readyState = e.DONE; s(e, "writeend", a); r(b) }; c.onerror = function () { var a = c.error; a.code !== a.ABORT_ERR && f() };["writestart", "progress", "write", "abort"].forEach(function (a) { c["on" + a] = e["on" + a] }); c.write(a); e.abort = function () { c.abort(); e.readyState = e.DONE }; e.readyState = e.WRITING }), f) }),
f)
}; c.getFile(b, { create: false }, n(function (a) { a.remove(); d() }), n(function (a) { a.code === a.NOT_FOUND_ERR ? d() : f() }))
}), f)
}), f)) : f()
}
}, i = A.prototype; "undefined" !== typeof navigator && navigator.msSaveOrOpenBlob ? j = function (a, b) { return navigator.msSaveOrOpenBlob(y(a), b) } : (i.abort = function () { this.readyState = this.DONE; s(this, "abort") }, i.readyState = i.INIT = 0, i.WRITING = 1, i.DONE = 2, i.error = i.onwritestart = i.onprogress = i.onwrite = i.onabort = i.onerror = i.onwriteend = null, j = function (a, b) { return new A(a, b) })
} var t = function (a,
b) { var e = "*" === a.filename && "*" !== a.title && a.title !== k ? a.title : a.filename; -1 !== e.indexOf("*") && (e = e.replace("*", g("title").text())); e = e.replace(/[^a-zA-Z0-9_\u00A1-\uFFFF\.,\-_ !\(\)]/g, ""); return b === k || !0 === b ? e + a.extension : e }, F = function (a) { a = a.title; return -1 !== a.indexOf("*") ? a.replace("*", g("title").text()) : a }, u = function (a) { return a.newline ? a.newline : navigator.userAgent.match(/Windows/) ? "\r\n" : "\n" }, B = function (a, b) {
for (var e = u(b), c = a.buttons.exportData(b.exportOptions), d = b.fieldBoundary, h = b.fieldSeparator,
f = RegExp(d, "g"), g = b.escapeChar !== k ? b.escapeChar : "\\", i = function (a) { for (var b = "", c = 0, e = a.length; c < e; c++)0 < c && (b += h), b += d ? d + ("" + a[c]).replace(f, g + d) + d : a[c]; return b }, n = b.header ? i(c.header) + e : "", j = b.footer ? e + i(c.footer) : "", l = [], m = 0, o = c.body.length; m < o; m++)l.push(i(c.body[m])); return { str: n + l.join(e) + j, rows: l.length }
}, C = function () { return -1 !== navigator.userAgent.indexOf("Safari") && -1 === navigator.userAgent.indexOf("Chrome") && -1 === navigator.userAgent.indexOf("Opera") }, m = {
"_rels/.rels": '<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">\t<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="xl/workbook.xml"/></Relationships>',
"xl/_rels/workbook.xml.rels": '<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">\t<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet" Target="worksheets/sheet1.xml"/></Relationships>', "[Content_Types].xml": '<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types">\t<Default Extension="xml" ContentType="application/xml"/>\t<Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/>\t<Default Extension="jpeg" ContentType="image/jpeg"/>\t<Override PartName="/xl/workbook.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"/>\t<Override PartName="/xl/worksheets/sheet1.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"/></Types>',
"xl/workbook.xml": '<?xml version="1.0" encoding="UTF-8" standalone="yes"?><workbook xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">\t<fileVersion appName="xl" lastEdited="5" lowestEdited="5" rupBuild="24816"/>\t<workbookPr showInkAnnotation="0" autoCompressPictures="0"/>\t<bookViews>\t\t<workbookView xWindow="0" yWindow="0" windowWidth="25600" windowHeight="19020" tabRatio="500"/>\t</bookViews>\t<sheets>\t\t<sheet name="Sheet1" sheetId="1" r:id="rId1"/>\t</sheets></workbook>',
"xl/worksheets/sheet1.xml": '<?xml version="1.0" encoding="UTF-8" standalone="yes"?><worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac">\t<sheetData>\t\t__DATA__\t</sheetData></worksheet>'
}; l.ext.buttons.copyHtml5 = {
className: "buttons-copy buttons-html5",
text: function (a) { return a.i18n("buttons.copy", "Copy") }, action: function (a, b, d, c) {
a = B(b, c); c = a.str; d = g("<div/>").css({ height: 1, width: 1, overflow: "hidden", position: "fixed", top: 0, left: 0 }); c = g("<textarea readonly/>").val(c).appendTo(d); if (f.queryCommandSupported("copy")) {
d.appendTo("body"); c[0].focus(); c[0].select(); try {
f.execCommand("copy"); d.remove(); b.buttons.info(b.i18n("buttons.copyTitle", "Copy to clipboard"), b.i18n("buttons.copySuccess", { 1: "Copied one row to clipboard", _: "Copied %d rows to clipboard" },
a.rows), 2E3); return
} catch (i) { }
} a = g("<span>" + b.i18n("buttons.copyKeys", "Press <i>ctrl</i> or <i>⌘</i> + <i>C</i> to copy the table data<br>to your system clipboard.<br><br>To cancel, click this message or press escape.") + "</span>").append(d); b.buttons.info(b.i18n("buttons.copyTitle", "Copy to clipboard"), a, 0); c[0].focus(); c[0].select(); var h = g(a).closest(".dt-button-info"), j = function () { h.off("click.buttons-copy"); g(f).off(".buttons-copy"); b.buttons.info(!1) }; h.on("click.buttons-copy", j); g(f).on("keydown.buttons-copy",
function (a) { 27 === a.keyCode && j() }).on("copy.buttons-copy cut.buttons-copy", function () { j() })
}, exportOptions: {}, fieldSeparator: "\t", fieldBoundary: "", header: !0, footer: !1
}; l.ext.buttons.csvHtml5 = {
className: "buttons-csv buttons-html5", available: function () { return d.FileReader !== k && d.Blob }, text: function (a) { return a.i18n("buttons.csv", "CSV") }, action: function (a, b, d, c) { u(c); a = B(b, c).str; b = c.charset; !1 !== b ? (b || (b = f.characterSet || f.charset), b && (b = ";charset=" + b)) : b = ""; j(new Blob([a], { type: "text/csv" + b }), t(c)) },
filename: "*", extension: ".csv", exportOptions: {}, fieldSeparator: ",", fieldBoundary: '"', escapeChar: '"', charset: null, header: !0, footer: !1
}; l.ext.buttons.excelHtml5 = {
className: "buttons-excel buttons-html5", available: function () { return d.FileReader !== k && d.JSZip !== k && !C() }, text: function (a) { return a.i18n("buttons.excel", "Excel") }, action: function (a, b, e, c) {
a = ""; b = b.buttons.exportData(c.exportOptions); e = function (a) {
for (var b = [], c = 0, d = a.length; c < d; c++) {
if (null === a[c] || a[c] === k) a[c] = ""; b.push("number" === typeof a[c] ||
a[c].match && a[c].match(/^-?[0-9\.]+$/) && "0" !== a[c].charAt(0) ? '<c t="n"><v>' + a[c] + "</v></c>" : '<c t="inlineStr"><is><t>' + (!a[c].replace ? a[c] : a[c].replace(/&(?!amp;)/g, "&amp;").replace(/[\x00-\x1F\x7F-\x9F]/g, "")) + "</t></is></c>")
} return "<row>" + b.join("") + "</row>"
}; c.header && (a += e(b.header)); for (var f = 0, h = b.body.length; f < h; f++)a += e(b.body[f]); c.footer && (a += e(b.footer)); var b = new d.JSZip, e = b.folder("_rels"), f = b.folder("xl"), h = b.folder("xl/_rels"), g = b.folder("xl/worksheets"); b.file("[Content_Types].xml",
m["[Content_Types].xml"]); e.file(".rels", m["_rels/.rels"]); f.file("workbook.xml", m["xl/workbook.xml"]); h.file("workbook.xml.rels", m["xl/_rels/workbook.xml.rels"]); g.file("sheet1.xml", m["xl/worksheets/sheet1.xml"].replace("__DATA__", a)); j(b.generate({ type: "blob" }), t(c))
}, filename: "*", extension: ".xlsx", exportOptions: {}, header: !0, footer: !1
}; l.ext.buttons.pdfHtml5 = {
className: "buttons-pdf buttons-html5", available: function () { return d.FileReader !== k && d.pdfMake }, text: function (a) {
return a.i18n("buttons.pdf",
"PDF")
}, action: function (a, b, e, c) {
u(c); a = b.buttons.exportData(c.exportOptions); b = []; c.header && b.push(g.map(a.header, function (a) { return { text: "string" === typeof a ? a : a + "", style: "tableHeader" } })); for (var f = 0, e = a.body.length; f < e; f++)b.push(g.map(a.body[f], function (a) { return { text: "string" === typeof a ? a : a + "", style: f % 2 ? "tableBodyEven" : "tableBodyOdd" } })); c.footer && b.push(g.map(a.footer, function (a) { return { text: "string" === typeof a ? a : a + "", style: "tableFooter" } })); a = {
pageSize: c.pageSize, pageOrientation: c.orientation,
content: [{ table: { headerRows: 1, body: b }, layout: "noBorders" }], styles: { tableHeader: { bold: !0, fontSize: 11, color: "white", fillColor: "#2d4154", alignment: "center" }, tableBodyEven: {}, tableBodyOdd: { fillColor: "#f3f3f3" }, tableFooter: { bold: !0, fontSize: 11, color: "white", fillColor: "#2d4154" }, title: { alignment: "center", fontSize: 15 }, message: {} }, defaultStyle: { fontSize: 10 }
}; c.message && a.content.unshift({ text: c.message, style: "message", margin: [0, 0, 0, 12] }); c.title && a.content.unshift({
text: F(c, !1), style: "title", margin: [0, 0,
0, 12]
}); c.customize && c.customize(a); a = d.pdfMake.createPdf(a); "open" === c.download && !C() ? a.open() : a.getBuffer(function (a) { a = new Blob([a], { type: "application/pdf" }); j(a, t(c)) })
}, title: "*", filename: "*", extension: ".pdf", exportOptions: {}, orientation: "portrait", pageSize: "A4", header: !0, footer: !1, message: null, customize: null, download: "download"
}; return l.Buttons
});
(function (d) { "function" === typeof define && define.amd ? define(["jquery", "datatables.net", "datatables.net-buttons"], function (c) { return d(c, window, document) }) : "object" === typeof exports ? module.exports = function (c, a) { c || (c = window); if (!a || !a.fn.dataTable) a = require("datatables.net")(c, a).$; a.fn.dataTable.Buttons || require("datatables.net-buttons")(c, a); return d(a, c, c.document) } : d(jQuery, window, document) })(function (d, c, a) {
var h = d.fn.dataTable, f = a.createElement("a"); h.ext.buttons.print = {
className: "buttons-print",
text: function (d) { return d.i18n("buttons.print", "Print") }, action: function (a, b, i, e) {
a = b.buttons.exportData(e.exportOptions); i = function (a, b) { for (var d = "<tr>", c = 0, e = a.length; c < e; c++)d += "<" + b + ">" + a[c] + "</" + b + ">"; return d + "</tr>" }; b = '<table class="' + b.table().node().className + '">'; e.header && (b += "<thead>" + i(a.header, "th") + "</thead>"); for (var b = b + "<tbody>", j = 0, h = a.body.length; j < h; j++)b += i(a.body[j], "td"); b += "</tbody>"; e.footer && (b += "<thead>" + i(a.footer, "th") + "</thead>"); var g = c.open("", ""), a = e.title.replace("*",
d("title").text()); g.document.close(); var k = "<title>" + a + "</title>"; d("style, link").each(function () { var a = k, b = d(this).clone()[0], c; "link" === b.nodeName.toLowerCase() && (f.href = b.href, c = f.host, -1 === c.indexOf("/") && 0 !== f.pathname.indexOf("/") && (c += "/"), b.href = f.protocol + "//" + c + f.pathname + f.search); k = a + b.outerHTML }); d(g.document.head).html(k); d(g.document.body).html("<h1>" + a + "</h1><div>" + e.message + "</div>" + b); e.customize && e.customize(g); setTimeout(function () { e.autoPrint && (g.print(), g.close()) }, 250)
}, title: "*",
message: "", exportOptions: {}, header: !0, footer: !1, autoPrint: !0, customize: null
}; return h.Buttons
});
/*!
Responsive 2.0.0
2014-2015 SpryMedia Ltd - datatables.net/license
*/
(function (c) { "function" === typeof define && define.amd ? define(["jquery", "datatables.net"], function (l) { return c(l, window, document) }) : "object" === typeof exports ? module.exports = function (l, k) { l || (l = window); if (!k || !k.fn.dataTable) k = require("datatables.net")(l, k).$; return c(k, l, l.document) } : c(jQuery, window, document) })(function (c, l, k, p) {
var n = c.fn.dataTable, j = function (a, b) {
if (!n.versionCheck || !n.versionCheck("1.10.3")) throw "DataTables Responsive requires DataTables 1.10.3 or newer"; this.s = {
dt: new n.Api(a), columns: [],
current: []
}; this.s.dt.settings()[0].responsive || (b && "string" === typeof b.details && (b.details = { type: b.details }), this.c = c.extend(!0, {}, j.defaults, n.defaults.responsive, b), a.responsive = this, this._constructor())
}; c.extend(j.prototype, {
_constructor: function () {
var a = this, b = this.s.dt, d = b.settings()[0]; b.settings()[0]._responsive = this; c(l).on("resize.dtr orientationchange.dtr", n.util.throttle(function () { a._resize() })); d.oApi._fnCallbackReg(d, "aoRowCreatedCallback", function (e) {
-1 !== c.inArray(!1, a.s.current) &&
c("td, th", e).each(function (e) { e = b.column.index("toData", e); !1 === a.s.current[e] && c(this).css("display", "none") })
}); b.on("destroy.dtr", function () { b.off(".dtr"); c(b.table().body()).off(".dtr"); c(l).off("resize.dtr orientationchange.dtr"); c.each(a.s.current, function (e, b) { !1 === b && a._setColumnVis(e, !0) }) }); this.c.breakpoints.sort(function (a, b) { return a.width < b.width ? 1 : a.width > b.width ? -1 : 0 }); this._classLogic(); this._resizeAuto(); d = this.c.details; !1 !== d.type && (a._detailsInit(), b.on("column-visibility.dtr",
function () { a._classLogic(); a._resizeAuto(); a._resize() }), b.on("draw.dtr", function () { a._redrawChildren() }), c(b.table().node()).addClass("dtr-" + d.type)); b.on("column-reorder.dtr", function (b, d, c) { if (c.drop) { a._classLogic(); a._resizeAuto(); a._resize() } }); this._resize()
}, _columnsVisiblity: function (a) {
var b = this.s.dt, d = this.s.columns, e, f, h = d.map(function (a, b) { return { columnIdx: b, priority: a.priority } }).sort(function (a, b) { return a.priority !== b.priority ? a.priority - b.priority : a.columnIdx - b.columnIdx }), g = c.map(d,
function (b) { return b.auto && null === b.minWidth ? !1 : !0 === b.auto ? "-" : -1 !== c.inArray(a, b.includeIn) }), m = 0; e = 0; for (f = g.length; e < f; e++)!0 === g[e] && (m += d[e].minWidth); e = b.settings()[0].oScroll; e = e.sY || e.sX ? e.iBarWidth : 0; b = b.table().container().offsetWidth - e - m; e = 0; for (f = g.length; e < f; e++)d[e].control && (b -= d[e].minWidth); m = !1; e = 0; for (f = h.length; e < f; e++) { var i = h[e].columnIdx; "-" === g[i] && (!d[i].control && d[i].minWidth) && (m || 0 > b - d[i].minWidth ? (m = !0, g[i] = !1) : g[i] = !0, b -= d[i].minWidth) } h = !1; e = 0; for (f = d.length; e < f; e++)if (!d[e].control &&
!d[e].never && !g[e]) { h = !0; break } e = 0; for (f = d.length; e < f; e++)d[e].control && (g[e] = h); -1 === c.inArray(!0, g) && (g[0] = !0); return g
}, _classLogic: function () {
var a = this, b = this.c.breakpoints, d = this.s.dt, e = d.columns().eq(0).map(function (a) { var b = this.column(a), e = b.header().className, a = d.settings()[0].aoColumns[a].responsivePriority; a === p && (a = c(b.header).data("priority") !== p ? 1 * c(b.header).data("priority") : 1E4); return { className: e, includeIn: [], auto: !1, control: !1, never: e.match(/\bnever\b/) ? !0 : !1, priority: a } }), f = function (a,
b) { var d = e[a].includeIn; -1 === c.inArray(b, d) && d.push(b) }, h = function (d, c, i, h) { if (i) if ("max-" === i) { h = a._find(c).width; c = 0; for (i = b.length; c < i; c++)b[c].width <= h && f(d, b[c].name) } else if ("min-" === i) { h = a._find(c).width; c = 0; for (i = b.length; c < i; c++)b[c].width >= h && f(d, b[c].name) } else { if ("not-" === i) { c = 0; for (i = b.length; c < i; c++)-1 === b[c].name.indexOf(h) && f(d, b[c].name) } } else e[d].includeIn.push(c) }; e.each(function (a, e) {
for (var d = a.className.split(" "), f = !1, j = 0, l = d.length; j < l; j++) {
var k = c.trim(d[j]); if ("all" === k) {
f =
!0; a.includeIn = c.map(b, function (a) { return a.name }); return
} if ("none" === k || a.never) { f = !0; return } if ("control" === k) { f = !0; a.control = !0; return } c.each(b, function (a, b) { var c = b.name.split("-"), d = k.match(RegExp("(min\\-|max\\-|not\\-)?(" + c[0] + ")(\\-[_a-zA-Z0-9])?")); d && (f = !0, d[2] === c[0] && d[3] === "-" + c[1] ? h(e, b.name, d[1], d[2] + d[3]) : d[2] === c[0] && !d[3] && h(e, b.name, d[1], d[2])) })
} f || (a.auto = !0)
}); this.s.columns = e
}, _detailsDisplay: function (a, b) {
var d = this, e = this.s.dt, f = this.c.details.display(a, b, function () {
return d.c.details.renderer(e,
a[0], d._detailsObj(a[0]))
}); (!0 === f || !1 === f) && c(e.table().node()).triggerHandler("responsive-display.dt", [e, a, f, b])
}, _detailsInit: function () {
var a = this, b = this.s.dt, d = this.c.details; "inline" === d.type && (d.target = "td:first-child"); b.on("draw.dtr", function () { a._tabIndexes() }); a._tabIndexes(); c(b.table().body()).on("keyup.dtr", "td", function (a) { a.keyCode === 13 && c(this).data("dtr-keyboard") && c(this).click() }); var e = d.target, d = "string" === typeof e ? e : "td"; c(b.table().body()).on("mousedown.dtr", d, function (a) { a.preventDefault() }).on("click.dtr",
d, function () { if (c(b.table().node()).hasClass("collapsed") && b.row(c(this).closest("tr")).length) { if (typeof e === "number") { var d = e < 0 ? b.columns().eq(0).length + e : e; if (b.cell(this).index().column !== d) return } d = b.row(c(this).closest("tr")); a._detailsDisplay(d, false) } })
}, _detailsObj: function (a) { var b = this, d = this.s.dt; return c.map(this.s.columns, function (c, f) { if (!c.never) return { title: d.settings()[0].aoColumns[f].sTitle, data: d.cell(a, f).render(b.c.orthogonal), hidden: d.column(f).visible() && !b.s.current[f] } }) },
_find: function (a) { for (var b = this.c.breakpoints, d = 0, c = b.length; d < c; d++)if (b[d].name === a) return b[d] }, _redrawChildren: function () { var a = this, b = this.s.dt; b.rows({ page: "current" }).iterator("row", function (c, e) { b.row(e); a._detailsDisplay(b.row(e), !0) }) }, _resize: function () {
var a = this, b = this.s.dt, d = c(l).width(), e = this.c.breakpoints, f = e[0].name, h = this.s.columns, g, m = this.s.current.slice(); for (g = e.length - 1; 0 <= g; g--)if (d <= e[g].width) { f = e[g].name; break } var i = this._columnsVisiblity(f); this.s.current = i; e = !1; g = 0;
for (d = h.length; g < d; g++)if (!1 === i[g] && !h[g].never) { e = !0; break } c(b.table().node()).toggleClass("collapsed", e); var j = !1; b.columns().eq(0).each(function (b, c) { i[c] !== m[c] && (j = !0, a._setColumnVis(b, i[c])) }); j && this._redrawChildren()
}, _resizeAuto: function () {
var a = this.s.dt, b = this.s.columns; if (this.c.auto && -1 !== c.inArray(!0, c.map(b, function (a) { return a.auto }))) {
a.table().node(); var d = a.table().node().cloneNode(!1), e = c(a.table().header().cloneNode(!1)).appendTo(d), f = c(a.table().body().cloneNode(!1)).appendTo(d),
h = a.columns().header().filter(function (b) { return a.column(b).visible() }).to$().clone(!1).css("display", "table-cell"); c(f).append(c(a.rows({ page: "current" }).nodes()).clone(!1)).find("th, td").css("display", ""); if (f = a.table().footer()) { var f = c(f.cloneNode(!1)).appendTo(d), g = a.columns().header().filter(function (b) { return a.column(b).visible() }).to$().clone(!1).css("display", "table-cell"); c("<tr/>").append(g).appendTo(f) } c("<tr/>").append(h).appendTo(e); "inline" === this.c.details.type && c(d).addClass("dtr-inline collapsed");
d = c("<div/>").css({ width: 1, height: 1, overflow: "hidden" }).append(d); d.insertBefore(a.table().node()); h.each(function (c) { c = a.column.index("fromVisible", c); b[c].minWidth = this.offsetWidth || 0 }); d.remove()
}
}, _setColumnVis: function (a, b) { var d = this.s.dt, e = b ? "" : "none"; c(d.column(a).header()).css("display", e); c(d.column(a).footer()).css("display", e); d.column(a).nodes().to$().css("display", e) }, _tabIndexes: function () {
var a = this.s.dt, b = a.cells({ page: "current" }).nodes().to$(), d = a.settings()[0], e = this.c.details.target;
b.filter("[data-dtr-keyboard]").removeData("[data-dtr-keyboard]"); c("number" === typeof e ? ":eq(" + e + ")" : e, a.rows({ page: "current" }).nodes()).attr("tabIndex", d.iTabIndex).data("dtr-keyboard", 1)
}
}); j.breakpoints = [{ name: "desktop", width: Infinity }, { name: "tablet-l", width: 1024 }, { name: "tablet-p", width: 768 }, { name: "mobile-l", width: 480 }, { name: "mobile-p", width: 320 }]; j.display = {
childRow: function (a, b, d) {
if (b) { if (c(a.node()).hasClass("parent")) return a.child(d(), "child").show(), !0 } else {
if (a.child.isShown()) return a.child(!1),
c(a.node()).removeClass("parent"), !1; a.child(d(), "child").show(); c(a.node()).addClass("parent"); return !0
}
}, childRowImmediate: function (a, b, d) { if (!b && a.child.isShown() || !a.responsive.hasHidden()) return a.child(!1), c(a.node()).removeClass("parent"), !1; a.child(d(), "child").show(); c(a.node()).addClass("parent"); return !0 }, modal: function (a) {
return function (b, d, e) {
if (d) c("div.dtr-modal-content").empty().append(e()); else {
var f = function () { h.remove(); c(k).off("keypress.dtr") }, h = c('<div class="dtr-modal"/>').append(c('<div class="dtr-modal-display"/>').append(c('<div class="dtr-modal-content"/>').append(e())).append(c('<div class="dtr-modal-close">&times;</div>').click(function () { f() }))).append(c('<div class="dtr-modal-background"/>').click(function () { f() })).appendTo("body");
a && a.header && h.find("div.dtr-modal-content").prepend("<h2>" + a.header(b) + "</h2>"); c(k).on("keyup.dtr", function (a) { 27 === a.keyCode && (a.stopPropagation(), f()) })
}
}
}
}; j.defaults = {
breakpoints: j.breakpoints, auto: !0, details: {
display: j.display.childRow, renderer: function (a, b, d) { return (a = c.map(d, function (a, b) { return a.hidden ? '<li data-dtr-index="' + b + '"><span class="dtr-title">' + a.title + '</span> <span class="dtr-data">' + a.data + "</span></li>" : "" }).join("")) ? c('<ul data-dtr-index="' + b + '"/>').append(a) : !1 }, target: 0,
type: "inline"
}, orthogonal: "display"
}; var o = c.fn.dataTable.Api; o.register("responsive()", function () { return this }); o.register("responsive.index()", function (a) { a = c(a); return { column: a.data("dtr-index"), row: a.parent().data("dtr-index") } }); o.register("responsive.rebuild()", function () { return this.iterator("table", function (a) { a._responsive && a._responsive._classLogic() }) }); o.register("responsive.recalc()", function () { return this.iterator("table", function (a) { a._responsive && (a._responsive._resizeAuto(), a._responsive._resize()) }) });
o.register("responsive.hasHidden()", function () { var a = this.context[0]; return a._responsive ? -1 !== c.inArray(!1, a._responsive.s.current) : !1 }); j.version = "2.0.0"; c.fn.dataTable.Responsive = j; c.fn.DataTable.Responsive = j; c(k).on("init.dt.dtr", function (a, b) { if ("dt" === a.namespace && (c(b.nTable).hasClass("responsive") || c(b.nTable).hasClass("dt-responsive") || b.oInit.responsive || n.defaults.responsive)) { var d = b.oInit.responsive; !1 !== d && new j(b, c.isPlainObject(d) ? d : {}) } }); return j
});
/*!
Bootstrap integration for DataTables' Responsive
©2015 SpryMedia Ltd - datatables.net/license
*/
(function (c) { "function" === typeof define && define.amd ? define(["jquery", "datatables.net-bs", "datatables.net-responsive"], function (a) { return c(a, window, document) }) : "object" === typeof exports ? module.exports = function (a, b) { a || (a = window); if (!b || !b.fn.dataTable) b = require("datatables.net-bs")(a, b).$; b.fn.dataTable.Responsive || require("datatables.net-responsive")(a, b); return c(b, a, a.document) } : c(jQuery, window, document) })(function (c) {
var a = c.fn.dataTable, b = a.Responsive.display, f = b.modal; b.modal = function (a) {
return function (b,
d, e) { c.fn.modal ? d || (d = c('<div class="modal fade" role="dialog"><div class="modal-dialog" role="document"><div class="modal-content"><div class="modal-header"><button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button></div><div class="modal-body"/></div></div></div>'), a && a.header && d.find("div.modal-header").append('<h4 class="modal-title">' + a.header(b) + "</h4>"), d.find("div.modal-body").append(e()), d.appendTo("body").modal()) : f(b, d, e) }
};
return a.Responsive
});