1"use strict"; 2var pdfflip = pdfflip || {}, 3 PRESENTATION = pdfflip; 4!(function (e, t) { 5 (e.version = "1.4.31"), 6 (e.PAGE_MODE = { SINGLE: 1, DOUBLE: 2, AUTO: null }), 7 (e.SINGLE_PAGE_MODE = { ZOOM: 1, BOOKLET: 2, AUTO: null }), 8 (e.CONTROLSPOSITION = { HIDDEN: "hide", TOP: "top", BOTTOM: "bottom" }), 9 (e.DIRECTION = { LTR: 1, RTL: 2 }), 10 (e.CORNERS = { TL: "tl", TR: "tr", BL: "bl", BR: "br", L: "l", R: "r", NONE: null }), 11 (e.SOURCE_TYPE = { IMAGE: "image", PDF: "pdf", HTML: "html" }), 12 (e.DISPLAY_TYPE = { WEBGL: "3D", HTML: "2D" }), 13 (e.PAGE_SIZE = { AUTO: 0, SINGLE: 1, DOUBLEINTERNAL: 2 }); 14 var n, 15 i, 16 o, 17 a, 18 r = (e.defaults = { 19 webgl: !0, 20 webglShadow: !0, 21 enableSound: !0, 22 height: "100%", 23 autoEnableOutline: !1, 24 autoEnableThumbnail: !1, 25 overwritePDFOutline: !0, 26 downloadEnable: !0, 27 duration: 800, 28 direction: e.DIRECTION.LTR, 29 pageMode: e.PAGE_MODE.AUTO, 30 singlePageMode: e.SINGLE_PAGE_MODE.AUTO, 31 backgroundColor: "#fff", 32 forceFit: !0, 33 transparent: !1, 34 hard: "none", 35 openPage: 1, 36 annotationClass: "", 37 autoPlay: !0, 38 autoPlayDuration: 3e3, 39 autoPlayStart: !1, 40 maxTextureSize: 1600, 41 minTextureSize: 256, 42 rangeChunkSize: 524288, 43 icons: { 44 altnext: "ti-angle-right", 45 altprev: "ti-angle-right", 46 next: "fa fa-chevron-right", 47 prev: "fa fa-chevron-left", 48 end: "ti-angle-double-right", 49 start: "ti-angle-double-left", 50 share: "fa fa-share", 51 help: "ti-help-alt", 52 more: "ti-more-alt", 53 download: "fa fa-file-ppdff-o", 54 zoomin: "ti-zoom-in", 55 zoomout: "ti-zoom-out", 56 fullscreen: "fa fa-arrows-alt", 57 fitscreen: "ti-arrows-corner", 58 thumbnail: "ti-layout-grid2", 59 outline: "ti-menu-alt", 60 close: "ti-close", 61 doublepage: "ti-book", 62 singlepage: "ti-file", 63 sound: "ti-volume", 64 facebook: "ti-facebook", 65 google: "ti-google", 66 linkedin: "ti-linkedin", 67 twitter: "ti-twitter-alt", 68 mail: "ti-email", 69 play: "ti-control-play", 70 pause: "ti-control-pause", 71 }, 72 text: { 73 toggleSound: "Sound", 74 toggleThumbnails: "Thumbnails", 75 toggleOutline: "Contents", 76 previousPage: "Previous Page", 77 nextPage: "Next Page", 78 toggleFullscreen: "Fullscreen", 79 zoomIn: "Zoom In", 80 zoomOut: "Zoom Out", 81 downloadPDFFile: "Download PDF", 82 gotoFirstPage: "First Page", 83 gotoLastPage: "Last Page", 84 play: "AutoPlay On", 85 pause: "AutoPlay Off", 86 share: "Share", 87 }, 88 allControls: "startPage,altPrev,pageNumber,altNext,endPage,play,outline,thumbnail,zoomIn,zoomOut,fullScreen,share,download,sound", 89 moreControls: "", 90 hideControls: "", 91 controlsPosition: e.CONTROLSPOSITION.BOTTOM, 92 paddingTop: 15, 93 paddingLeft: 15, 94 paddingRight: 15, 95 paddingBottom: -10, 96 scrollWheel: !0, 97 onCreate: function (e) {}, 98 onCreateUI: function (e) {}, 99 onFlip: function (e) {}, 100 beforeFlip: function (e) {}, 101 onReady: function (e) {}, 102 zoomRatio: 1.5, 103 pageSize: e.PAGE_SIZE.AUTO, 104 pdfjsSrc: "js/libs/pdf.min.js", 105 pdfjsCompatibilitySrc: "js/libs/compatibility.js", 106 pdfjsWorkerSrc: "js/libs/pdf.worker.min.js", 107 threejsSrc: "../assets/js/pflip/js/libs/three.min.js", 108 utilsSrc: "js/libs/utils.min.js", 109 soundFile: "sound/turn.mp3", 110 imagesLocation: "images", 111 imageResourcesPath: "images/pdfjs/", 112 cMapUrl: "cmaps/", 113 enableDebugLog: !1, 114 canvasToBlob: !1, 115 enableAnnotation: !0, 116 pdfRenderQuality: 0.9, 117 textureLoadFallback: "blank", 118 stiffness: 3, 119 backgroundImage: "js/pflip/background.jpg", 120 pageRatio: null, 121 pixelRatio: window.devicePixelRatio || 1, 122 thumbElement: "div", 123 spotLightIntensity: 0.22, 124 ambientLightColor: "#fff", 125 ambientLightIntensity: 0.8, 126 shadowOpacity: 0.08, 127 }), 128 s = "WebKitCSSMatrix" in window || (document.body && "MozPerspective" in document.body.style), 129 l = "onmousedown" in window, 130 c = (window, navigator.userAgent), 131 d = (e.utils = { 132 drag: { left: 0, right: 1, none: -1 }, 133 mouseEvents: l ? { type: "mouse", start: "mousedown", move: "mousemove", end: "mouseup" } : { type: "touch", start: "touchstart", move: "touchmove", end: "touchend" }, 134 html: { div: "<div/>", img: "<img/>", a: "<a>", input: "<input type='text'/>" }, 135 toRad: function (e) { 136 return (e * Math.PI) / 180; 137 }, 138 isset: function (e, t) { 139 return null == e ? t : e; 140 }, 141 isnull: function (e) { 142 return null == e || null == e; 143 }, 144 toDeg: function (e) { 145 return (180 * e) / Math.PI; 146 }, 147 transition: function (e, t) { 148 return e ? t / 1e3 + "s ease-out" : "0s none"; 149 }, 150 display: function (e) { 151 return e ? "block" : "none"; 152 }, 153 resetTranslate: function () { 154 return b(0, 0); 155 }, 156 translateStr: function (e, t) { 157 return s ? " translate3d(" + e + "px," + t + "px, 0px) " : " translate(" + e + "px, " + t + "px) "; 158 }, 159 httpsCorrection: function (e) { 160 var t = window.location; 161 return t.href.indexOf("https://") > -1 && e.indexOf(t.hostname) > -1 && (e = e.replace("http://", "https://")), e; 162 }, 163 resetBoxShadow: function () { 164 return "rgba(0, 0, 0, 0) 0px 0px 20px"; 165 }, 166 rotateStr: function (e) { 167 return " rotateZ(" + e + "deg) "; 168 }, 169 bg: function (e) { 170 return "#fff" + y(e); 171 }, 172 bgImage: function (e) { 173 return null == e || "blank" == e ? "" : " url(" + e + ")"; 174 }, 175 src: function (e) { 176 return null != e ? "" + e : ""; 177 }, 178 limitAt: function (e, t, n) { 179 return e < t ? t : e > n ? n : e; 180 }, 181 distOrigin: function (e, t) { 182 return Math.sqrt(Math.pow(e, 2) + Math.pow(t, 2)); 183 }, 184 distPoints: function (e, t, n, i) { 185 return Math.sqrt(Math.pow(n - e, 2) + Math.pow(i - t, 2)); 186 }, 187 calculateScale: function (e, t) { 188 var n = C(e[0].x, e[0].y, e[1].x, e[1].y); 189 return C(t[0].x, t[0].y, t[1].x, t[1].y) / n; 190 }, 191 getVectorAvg: function (e) { 192 return { 193 x: 194 e 195 .map(function (e) { 196 return e.x; 197 }) 198 .reduce(d.sum) / e.length, 199 y: 200 e 201 .map(function (e) { 202 return e.y; 203 }) 204 .reduce(d.sum) / e.length, 205 }; 206 }, 207 sum: function (e, t) { 208 return e + t; 209 }, 210 getTouches: function (e, t) { 211 return (
212 (t = t || { left: 0, top: 0 }), 213 Array.prototype.slice.call(e.touches).map(function (e) { 214 return { x: e.pageX - t.left, y: e.pageY - t.top }; 215 }) 216 ); 217 }, 218 angleByDistance: function (e, t) { 219 var n = t / 2, 220 i = P(e, 0, t); 221 return i < n ? v(Math.asin(i / n)) : 90 + v(Math.asin((i - n) / n)); 222 }, 223 log: function (e) { 224 1 == r.enableDebugLog && window.console && console.log(e); 225 }, 226 lowerPowerOfTwo: function (e) { 227 return Math.pow(2, Math.floor(Math.log(e) / Math.LN2)); 228 }, 229 nearestPowerOfTwo: function (e, t) { 230 return Math.min(t || 2048, Math.pow(2, Math.ceil(Math.log(e) / Math.LN2))); 231 }, 232 zoomStops: function (e, t, n, i, o) { 233 null == i && (i = 256), null == o && (o = 2048); 234 var a = Math.log(e / i) / Math.log(t); 235 return i * Math.pow(t, null == n ? Math.round(a) : 1 == n ? Math.ceil(a) : Math.floor(a)); 236 }, 237 extendOptions: function (e, n) { 238 return t.extend(!0, {}, e, n); 239 }, 240 getFullscreenElement: function () { 241 return document.fullscreenElement || document.mozFullScreenElement || document.webkitFullscreenElement || document.msFullscreenElement; 242 }, 243 hasFullscreenEnabled: function () { 244 return document.fullscreenEnabled || document.mozFullScreenEnabled || document.webkitFullscreenEnabled || document.msFullscreenEnabled; 245 }, 246 getBasePage: function (e) { 247 return 2 * Math.floor(e / 2); 248 }, 249 loadResources: function (e, t, n) { 250 var i = document, 251 o = i.createElement(e), 252 a = i.getElementsByTagName(e)[0]; 253 (o.async = !0), 254 n && 255 o.addEventListener( 256 "load", 257 function (e) { 258 n(null, e); 259 }, 260 !1 261 ), 262 (o.src = t), 263 a.parentNode.insertBefore(o, a); 264 }, 265 getScript: function (e, t, n) { 266 var i = document.createElement("script"), 267 o = document.body.getElementsByTagName("script")[0]; 268 function a(e, o) { 269 null != i && (o || !i.readyState || /loaded|complete/.test(i.readyState)) && ((i.onload = i.onreadystatechange = null), (i = null), (i = null), o || (t && t(), (t = null), (n = null))); 270 } 271 (i.async = 1), 272 i.setAttribute("data-cfasync", !1), 273 null != o ? (o.parentNode.insertBefore(i, o), (o = null)) : document.body.appendChild(i), 274 i.addEventListener("load", a, !1), 275 i.addEventListener("readystatechange", a, !1), 276 i.addEventListener("complete", a, !1), 277 n && i.addEventListener("error", n, !1), 278 (i.src = e + ("MS" == R.dom ? "?" + Math.random(1) : "")); 279 }, 280 isHardPage: function (e, t, n, i) { 281 if (null != e) { 282 if ("cover" == e) return 0 == t || (i && 1 == t) || t == Math.floor(n / (i ? 1 : 2)) - (i ? 0 : 1); 283 if ("all" == e) return !0; 284 var o = ("," + e + ",").indexOf("," + (2 * t + 1) + ",") > -1, 285 a = ("," + e + ",").indexOf("," + (2 * t + 2) + ",") > -1; 286 return o || a; 287 } 288 return !1; 289 }, 290 fixMouseEvent: function (e) { 291 if (e) { 292 var n = e.originalEvent || e; 293 if (n.changedTouches && n.changedTouches.length > 0) { 294 var i = t.event.fix(e), 295 o = n.changedTouches[0]; 296 return (i.clientX = o.clientX), (i.clientY = o.clientY), (i.pageX = o.pageX), (i.touches = n.touches), (i.pageY = o.pageY), (i.movementX = o.movementX), (i.movementY = o.movementY), i; 297 } 298 return e; 299 } 300 return e; 301 }, 302 hasWebgl: (function () { 303 try { 304 var e = document.createElement("canvas"); 305 return !(!window.WebGLRenderingContext || (!e.getContext("webgl") && !e.getContext("experimental-webgl"))); 306 } catch (e) { 307 return !1; 308 } 309 })(), 310 isBookletMode: function (t) { 311 return t.pageMode == e.PAGE_MODE.SINGLE && t.singlePageMode == e.SINGLE_PAGE_MODE.BOOKLET; 312 }, 313 isRTLMode: function (t) { 314 return t.direction == e.DIRECTION.RTL; 315 }, 316 isMobile: 317 ((a = !1), 318 (o = c || navigator.vendor || window.opera), 319 (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test( 320 o 321 ) || 322 /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|
322sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test( 323 o.substr(0, 4) 324 )) && 325 (a = !0), 326 a), 327 isIOS: /(iPad|iPhone|iPod)/g.test(c), 328 isSafari: /constructor/i.test(window.HTMLElement) || "[object SafariRemoteNotification]" === (!window.safari || safari.pushNotification).toString(), 329 prefix: 330 ((n = window.getComputedStyle(document.documentElement, "")), 331 (i = Array.prototype.slice 332 .call(n) 333 .join("") 334 .match(/-(moz|webkit|ms)-/)[1]), 335 { dom: "WebKit|Moz|MS".match(new RegExp("(" + i + ")", "i"))[1], lowercase: i, css: "-" + i + "-", js: i[0].toUpperCase() + i.substr(1) }), 336 __extends: function (e, t) { 337 for (var n in t) t.hasOwnProperty(n) && (e[n] = t[n]); 338 function i() { 339 this.constructor = e; 340 } 341 return (i.prototype = t.prototype), (e.prototype = new i()), (e.__super = t.prototype), e; 342 }, 343 }), 344 u = e.SOURCE_TYPE, 345 p = (e.DISPLAY_TYPE, d.drag), 346 h = d.mouseEvents, 347 f = d.html, 348 g = d.isset, 349 m = (d.isnull, d.toRad), 350 v = d.toDeg, 351 b = (d.transition, d.translateStr), 352 w = (d.resetBoxShadow, d.rotateStr), 353 y = (d.bg, d.bgImage), 354 P = (d.src, d.limitAt), 355 x = d.distOrigin, 356 C = d.distPoints, 357 E = d.angleByDistance, 358 S = d.log, 359 k = d.nearestPowerOfTwo, 360 T = d.extendOptions, 361 L = d.getBasePage, 362 O = d.getScript, 363 I = d.fixMouseEvent, 364 R = d.prefix, 365 M = d.isBookletMode, 366 D = d.isRTLMode, 367 F = d.isMobile, 368 z = d.hasWebgl, 369 N = d.isSafari, 370 A = d.isIOS, 371 B = d.__extends; 372 !(function () { 373 if (window.CanvasPixelArray) 374 "function" != typeof window.CanvasPixelArray.prototype.set && 375 (window.CanvasPixelArray.prototype.set = function (e) { 376 for (var t = 0, n = this.length; t < n; t++) this[t] = e[t]; 377 }); 378 else { 379 var e, 380 t = !1; 381 if ((N && (t = (e = c.match(/Version\/([0-9]+)\.([0-9]+)\.([0-9]+) Safari\//)) && parseInt(e[1]) < 6), t)) { 382 var n = window.CanvasRenderingContext2D.prototype, 383 i = n.createImageData; 384 (n.createImageData = function (e, t) { 385 var n = i.call(this, e, t); 386 return ( 387 (n.data.set = function (e) { 388 for (var t = 0, n = this.length; t < n; t++) this[t] = e[t]; 389 }), 390 n 391 ); 392 }), 393 (n = null); 394 } 395 } 396 })(), 397 "requestAnimationFrame" in window || 398 (window.requestAnimationFrame = 399 window.mozRequestAnimationFrame || 400 window.webkitRequestAnimationFrame || 401 function (e) { 402 window.setTimeout(e, 20); 403 }), 404 (function () { 405 if ("undefined" != typeof Uint8Array) 406 return ( 407 void 0 === Uint8Array.prototype.subarray && 408 ((Uint8Array.prototype.subarray = function (e, t) { 409 return new Uint8Array(this.slice(e, t)); 410 }), 411 (Float32Array.prototype.subarray = function (e, t) { 412 return new Float32Array(this.slice(e, t)); 413 })), 414 void ("undefined" == typeof Float64Array && (window.Float64Array = Float32Array)) 415 ); 416 function e(e, t) { 417 return new n(this.slice(e, t)); 418 } 419 function t(e, t) { 420 arguments.length < 2 && (t = 0); 421 for (var n = 0, i = e.length; n < i; ++n, ++t) this[t] = 255 & e[n]; 422 } 423 function n(n) { 424 var i, o, a; 425 if ("number" == typeof n) for (i = [], o = 0; o < n; ++o) i[o] = 0; 426 else if ("slice" in n) i = n.slice(0); 427 else for (i = [], o = 0, a = n.length; o < a; ++o) i[o] = n[o]; 428 return (i.subarray = e), (i.buffer = i), (i.byteLength = i.length), (i.set = t), "object" == typeof n && n.buffer && (i.buffer = n.buffer), i; 429 } 430 (window.Uint8Array = n), (window.Int8Array = n), (window.Uint32Array = n), (window.Int32Array = n), (window.Uint16Array = n), (window.Float32Array = n), (window.Float64Array = n); 431 })(); 432 var j = function (n, i) { 433 var o = "pdff-ui", 434 a = "pdff-ui-wrapper", 435 r = o + "-btn", 436 s = (i.ui = t(f.div, { class: o })), 437 l = i.options; 438 s.dispose = function () { 439 n.find("." + r).each(function () { 440 t(this).off(); 441 }), 442 y.off(), 443 u.off(), 444 p.off(), 445 h.off(), 446 g.off(), 447 m.off(), 448 v.off(), 449 b.off(), 450 P.off(), 451 x.off(), 452 T.off(), 453 L.off(), 454 I.off(), 455 R.off(), 456 M.off(), 457 D.off(), 458 F.off(), 459 z.off(), 460 N.off(), 461 A.off(), 462 O.remove(), 463 w.remove(), 464 p.remove(), 465 u.remove(), 466 g.remove(), 467 s.shareBox && (s.shareBox.dispose && s.shareBox.dispose(), (s.shareBox = null)), 468 document.removeEventListener("keyup", X, !1), 469 window.removeEventListener("click", C, !1), 470 (s.update = null), 471 (i = null); 472 }; 473 var c = function (e) { 474 return isNaN(e) ? (e = i.target._activePage) : e < 1 ? (e = 1) : e >
474 i.target.pageCount && (e = i.target.pageCount), e; 475 }, 476 u = (s.next = t(f.div, { class: r + " " + o + "-next " + l.icons.next, title: l.text.nextPage, html: "<span>" + l.text.nextPage + "</span>" }).on("click", function () { 477 i.next(); 478 })), 479 p = (s.prev = t(f.div, { class: r + " " + o + "-prev " + l.icons.prev, title: l.text.previousPage, html: "<span>" + l.text.previousPage + "</span>" }).on("click", function () { 480 i.prev(); 481 })), 482 h = t(f.div, { class: r + " " + o + "-play " + l.icons.play, title: l.text.play, html: "<span>" + l.text.play + "</span>" }).on("click", function () { 483 var e = t(this); 484 i.setAutoPlay(!e.hasClass(l.icons.pause)); 485 }); 486 1 == l.autoPlay && ((s.play = h), i.setAutoPlay(l.autoPlayStart)); 487 var g = t(f.div, { class: a + " " + o + "-zoom" }), 488 m = (s.zoomIn = t(f.div, { class: r + " " + o + "-zoomin " + l.icons.zoomin, title: l.text.zoomIn, html: "<span>" + l.text.zoomIn + "</span>" }).on("click", function () { 489 i.zoom(1), s.update(), i.target.startPoint && i.target.pan && i.target.pan(i.target.startPoint); 490 })), 491 v = (s.zoomOut = t(f.div, { class: r + " " + o + "-zoomout " + l.icons.zoomout, title: l.text.zoomOut, html: "<span>" + l.text.zoomOut + "</span>" }).on("click", function () { 492 i.zoom(-1), s.update(), i.target.startPoint && i.target.pan && i.target.pan(i.target.startPoint); 493 })); 494 g.append(m).append(v); 495 var b = (s.pageNumber = t(f.div, { class: r + " " + o + "-page" }) 496 .on("change", function () { 497 var e = parseInt(s.pageInput.val(), 10); 498 (e = c(e)), i.gotoPage(e); 499 }) 500 .on("keyup", function (e) { 501 if (13 == e.keyCode) { 502 var t = parseInt(s.pageInput.val(), 10); 503 (t = c(t)) !== c(i.target._activePage || i._activePage) && i.gotoPage(t); 504 } 505 })); 506 (s.pageInput = t('<input id="df_book_page_number" type="text"/>').appendTo(b)), (s.pageLabel = t('<label for="df_book_page_number"/>').appendTo(b)); 507 var w = t(f.div, { class: a + " " + o + "-size" }), 508 y = t(f.div, { class: r + " " + o + "-help " + l.icons.help, title: l.text.toggleHelp, html: "<span>" + l.text.toggleHelp + "</span>" }).on("click", function () {}), 509 P = (s.sound = t(f.div, { class: r + " " + o + "-sound " + l.icons.sound, title: l.text.toggleSound, html: "<span>" + l.text.toggleSound + "</span>" }).on("click", function () { 510 (l.enableSound = !l.enableSound), s.updateSound(); 511 })); 512 (s.updateSound = function () { 513 0 == l.enableSound || "false" == l.enableSound ? P.addClass("disabled") : P.removeClass("disabled"); 514 }), 515 s.updateSound(); 516 var x = (s.more = t(f.div, { class: r + " " + o + "-more " + l.icons.more }).on("click", function (e) { 517 x.hasClass("pdff-active") || (t(this).addClass("pdff-active"), e.stopPropagation()); 518 })); 519 function C(e) { 520 x.removeClass("pdff-active"); 521 } 522 window.addEventListener("click", C, !1); 523 var E = t(f.div, { class: "more-container" }); 524 if ((x.append(E), "string" == typeof l.source && 1 == l.downloadEnable)) { 525 var k = r + " " + o + "-download " + l.icons.download; 526 (s.download = t('<a download target="_blank" class="' + k + '"><span>' + l.text.downloadPDFFile + "</span></a>")).attr("href", l.source).attr("title", l.text.downloadPDFFile); 527 } 528 d.hasFullscreenEnabled() || n.addClass("pdff-custom-fullscreen"), 529 (s.switchFullscreen = function () { 530 d.getFullscreenElement(); 531 var e = i.container[0]; 532 1 != s.isFullscreen 533 ? (i.container.addClass("pdff-fullscreen"), 534 e.requestFullscreen ? e.requestFullscreen() : e.msRequestFullscreen ? e.msRequestFullscreen() : e.mozRequestFullScreen ? e.mozRequestFullScreen() : e.webkitRequestFullscreen && e.webkitRequestFullscreen(), 535 (s.isFullscreen = !0)) 536 : (i.container.removeClass("pdff-fullscreen"), 537 (s.isFullscreen = !1), 538 document.exitFullscreen 539 ? document.exitFullscreen() 540 : document.msExitFullscreen 541 ? document.msExitFullscreen() 542 : document.mozCancelFullScreen 543 ? document.mozCancelFullScreen() 544 : document.webkitExitFullscreen && document.webkitExitFullscreen()), 545 d.hasFullscreenEnabled() || 546 setTimeout(function () { 547 i.resize(); 548 }, 50); 549 }); 550 var T = (s.fullScreen = t(f.div, { class: r + " " + o + "-fullscreen " + l.icons.fullscreen, title: l.text.toggleFullscreen, html: "<span>" + l.text.toggleFullscreen + "</span>" }).on("click", s.switchFullscreen)), 551 L = (s.fit = t(f.div, { class: r + " " + o + "-fit " + l.icons.fitscreen }).on("click", function () { 552 t(this).toggleClass("pdff-button-fit-active"); 553 })); 554 w.append(T);
555 var O = t(f.div, { class: a + " " + o + "-controls" }), 556 I = 557 ((s.shareBox = new e.Share(n, l)), 558 (s.share = t(f.div, { class: r + " " + o + "-share " + l.icons.share, title: l.text.share, html: "<span>" + l.text.share + "</span>" }).on("click", function (e) { 559 1 == s.shareBox.isOpen ? s.shareBox.close() : (s.shareBox.update(i.getURLHash()), s.shareBox.show()); 560 }))), 561 R = (s.startPage = t(f.div, { class: r + " " + o + "-start " + l.icons.start, title: l.text.gotoFirstPage, html: "<span>" + l.text.gotoFirstPage + "</span>" }).on("click", function () { 562 i.start(); 563 })), 564 M = (s.endPage = t(f.div, { class: r + " " + o + "-end " + l.icons.end, title: l.text.gotoLastPage, html: "<span>" + l.text.gotoLastPage + "</span>" }).on("click", function () { 565 i.end(); 566 })), 567 D = (s.pageMode = t(f.div, { class: r + " " + o + "-pagemode " + l.icons.singlepage, html: "<span>" + l.text.singlePageMode + "</span>" }).on("click", function () { 568 var e = t(this); 569 i.setPageMode(!e.hasClass(l.icons.doublepage)); 570 })); 571 i.setPageMode(i.target.pageMode == e.PAGE_MODE.SINGLE); 572 for ( 573 var F = (s.altPrev = t(f.div, { class: r + " " + o + "-prev " + o + "-alt " + l.icons.prev, title: l.text.previousPage, html: "<span>" + l.text.previousPage + "</span>" }).on("click", function () { 574 i.prev(); 575 })), 576 z = (s.altNext = t(f.div, { class: r + " " + o + "-next " + o + "-alt " + l.icons.next, title: l.text.nextPage, html: "<span>" + l.text.nextPage + "</span>" }).on("click", function () { 577 i.next(); 578 })), 579 N = (s.thumbnail = t(f.div, { class: r + " " + o + "-thumbnail " + l.icons.thumbnail, title: l.text.toggleThumbnails, html: "<span>" + l.text.toggleThumbnails + "</span>" }).on("click", function () { 580 var e = t(this); 581 i.target.thumbContainer ? (i.target.thumbContainer.toggleClass("pdff-sidemenu-visible"), e.toggleClass("pdff-active")) : (i.contentProvider.initThumbs(), e.toggleClass("pdff-active")), 582 e.hasClass("pdff-active") && e.siblings(".pdff-active").trigger("click"), 583 s.update(!0); 584 })), 585 A = (s.outline = t(f.div, { class: r + " " + o + "-outline " + l.icons.outline, title: l.text.toggleOutline, html: "<span>" + l.text.toggleOutline + "</span>" }).on("click", function () { 586 var e = t(this); 587 if (i.target.outlineContainer) { 588 var n = i.target.outlineContainer; 589 e.toggleClass("pdff-active"), n.toggleClass("pdff-sidemenu-visible"), e.hasClass("pdff-active") && e.siblings(".pdff-active").trigger("click"), s.update(!0); 590 } 591 })), 592 B = l.allControls.replace(/ /g, "").split(","), 593 j = "," + l.moreControls.replace(/ /g, "") + ",", 594 _ = "," + l.hideControls.replace(/ /g, "") + ",", 595 U = (j.split(","), 0); 596 U < B.length; 597 U++ 598 ) { 599 var H = B[U]; 600 if (_.indexOf("," + H + ",") < 0) { 601 var W = s[H]; 602 null != W && (j.indexOf("," + H + ",") > -1 && "more" !== H && "pageNumber" !== H ? E.append(W) : O.append(W)); 603 } 604 } 605 n.append(O).append(p).append(u).append(g); 606 var G = 16, 607 V = 17, 608 q = 18, 609 Z = 39, 610 Y = 37, 611 K = 27; 612 function X(e) { 613 switch (e.keyCode) { 614 case K: 615 1 == s.isFullscreen && s.fullScreen.trigger("click"); 616 break; 617 case G: 618 case V: 619 case q: 620 break; 621 case Y: 622 i.prev(); 623 break; 624 case Z: 625 i.next(); 626 } 627 } 628 document.addEventListener("keyup", X, !1), 629 (s.update = function (t) { 630 S("ui update"); 631 var o = i.target, 632 a = c(o._activePage || i._activePage), 633 r = o.pageCount || i.pageCount, 634 l = o.direction == e.DIRECTION.RTL, 635 d = 1 == a || 0 == a, 636 u = a == r; 637 s.next.show(), 638 s.prev.show(), 639 s.altNext.removeClass("disabled"), 640 s.altPrev.removeClass("disabled"), 641 ((d && !l) || (u && l)) && (s.prev.hide(), s.altPrev.addClass("disabled")), 642 ((u && !l) || (d && l)) && (s.next.hide(), s.altNext.addClass("disabled")), 643 s.pageInput.val(a), 644 s.pageLabel.html(a + "/" + r), 645 n.find(".pdff-sidemenu-visible").length > 0 ? n.addClass("pdff-sidemenu-open") : n.removeClass("pdff-sidemenu-open"), 646 1 == t && i.resize(), 647 o.contentProvider.zoomScale == o.contentProvider.maxZoom ? s.zoomIn.addClass("disabled") : s.zoomIn.removeClass("disabled"), 648 1 == o.contentProvider.zoomScale ? s.zoomOut.addClass("disabled") : s.zoomOut.removeClass("disabled"); 649 }), 650 null != i.target && (i.target.ui = s), 651 null != l.onCreateUI && l.onCreateUI(i); 652 }, 653 _ = null; 654 var U = (function (n) { 655 function i(t) { 656 (t = t || {}
656), (this.type = "PreviewObject"); 657 var n = this; 658 function i() { 659 setTimeout(function () { 660 n.resize(); 661 }, 50); 662 } 663 (n.zoomValue = 1), 664 window.addEventListener("resize", i, !1), 665 (this.sound = document.createElement("audio")), 666 this.sound.setAttribute("src", t.soundFile + "?ver=" + e.version), 667 this.sound.setAttribute("type", "audio/mpeg"), 668 (this.autoPlayFunction = function () { 669 n && n.target.autoPlay && (n.target.direction == e.DIRECTION.RTL ? n.target.prev() : n.target.next()); 670 }), 671 (this.dispose = function () { 672 if ((clearInterval(this.autoPlayTimer), (this.autoPlayTimer = null), (this.autoPlayFunction = null), this.target && this.target.children)) 673 for (var e = 0; e < this.target.children.length; e++) { 674 var t = this.target.children[e]; 675 t && t.currentTween && t.currentTween.stop(); 676 } 677 this.zoomTween && (this.zoomTween.stop && this.zoomTween.stop(), (this.zoomTween = null)), 678 this.container && this.container.info && this.container.info.remove && this.container.info.remove(), 679 this.target && this.target.dispose && this.target.dispose(), 680 (this.target = null), 681 this.stage && this.stage.dispose && this.stage.dispose(), 682 (this.stage = null), 683 this.ui && this.ui.dispose && this.ui.dispose(), 684 (this.ui = null), 685 this.contentProvider && this.contentProvider.dispose && this.contentProvider.dispose(), 686 (this.contentProvider = null), 687 window.removeEventListener("resize", i); 688 }); 689 } 690 return ( 691 (i.prototype = { 692 start: function () { 693 this.target.gotoPage(this.target.startPage); 694 }, 695 end: function () { 696 this.target.gotoPage(this.target.endPage); 697 }, 698 next: function () {}, 699 prev: function () {}, 700 zoom: function (e) { 701 (this.pendingZoom = !0), (this.zoomDelta = e), this.resize(), this.ui.update(); 702 }, 703 resize: function () { 704 var n = this; 705 if (null != n.target && null != n.target.ui && null != n.target.contentProvider && null != n.target.contentProvider.viewport && null != n.target.stage) { 706 this.ui && 1 == this.ui.isFullscreen && 1 == d.hasFullscreenEnabled() && null == d.getFullscreenElement() && this.ui.switchFullscreen(); 707 var i, 708 o, 709 a, 710 r, 711 s, 712 l, 713 c = n.target, 714 p = n.container, 715 h = n.options, 716 f = c.stage, 717 g = c.contentProvider, 718 m = g.pageRatio, 719 v = (g.zoomViewport, D(c)), 720 b = "css" !== c.mode, 721 w = (g.pageRatio, p.hasClass("pdff-sidemenu-open") ? 220 : 0), 722 y = this.target.pageMode == e.PAGE_MODE.SINGLE; 723 p.height(h.height); 724 var C = Math.min(p.height(), t(window).height()); 725 p.height(C); 726 var E = p.width(); 727 E < 400 ? n.container.addClass("pdff-xs") : n.container.removeClass("pdff-xs"); 728 var S = p.find(".pdff-ui-controls").height(), 729 k = h.paddingTop + (h.controlsPosition == e.CONTROLSPOSITION.TOP ? S : 0), 730 T = h.paddingRight, 731 L = h.paddingBottom + (h.controlsPosition == e.CONTROLSPOSITION.BOTTOM ? S : 0), 732 O = h.paddingLeft, 733 I = E - w, 734 R = C, 735 M = (k = isNaN(k) ? 0 : P(k, 0, k)) + (L = isNaN(L) ? 0 : P(L, 0, L)
735), 736 F = (O = isNaN(O) ? 0 : P(O, 0, O)) + (T = isNaN(T) ? 0 : P(T, 0, T)), 737 z = I - F, 738 N = R - M; 739 if ( 740 ((a = Math.floor(y ? z : z / 2)), 741 (i = (o = Math.floor(a / m)) > N) && (a = (o = N) * m), 742 (l = g.maxZoom = g.zoomViewport.height / o), 743 null == n.zoomValue && (n.zoomValue = 1), 744 null == g.zoomScale && (g.zoomScale = 1), 745 1 == n.pendingZoom && null != n.zoomDelta) 746 ) { 747 n.zoomDelta; 748 var A, 749 B = Math.max(o, a); 750 (n.zoomValue = n.zoomDelta > 0 ? n.zoomValue * n.options.zoomRatio : n.zoomValue / n.options.zoomRatio), 751 (n.zoomValue = P(n.zoomValue, 1, l)), 752 1 == n.zoomValue ? (g.zoomScale = 1) : ((A = o * n.zoomValue), (A = d.zoomStops(A, n.options.zoomRatio, n.zoomDelta > 0, Math.max(a, o))), (g.zoomScale = P(A / B, 1, l))); 753 } 754 (s = g.zoomScale), 755 g.checkViewportSize(a, o, s), 756 g.contentSourceType == u.PDF && ((a = g.imageViewport.width / s), (o = g.imageViewport.height / s)), 757 1 != g.zoomScale && this.target.container.addClass("pdff-zoom-enabled"); 758 var j = (c.zoomWidth = Math.floor(a * s)), 759 _ = (c.zoomHeight = Math.floor(o * s)), 760 U = 2 * j; 761 if (b) { 762 var H = _ / c.height, 763 W = i ? (s * (o + M)) / H : (s * (a * (y ? 1 : 2) + F)) / H / (I / R); 764 f.resizeCanvas(I, R), (r = 1 / ((2 * Math.tan((Math.PI * f.camera.fov * 0.5) / 180)) / (W / s)) + 2.2), f.camera.updateProjectionMatrix(), (f.renderRequestPending = !0); 765 var G = ((k - L) * (c.height / o)) / s / 2, 766 V = 1 == g.zoomScale; 767 f.camera.position.z !== r && 1 == n.pendingZoom 768 ? (null != n.zoomTween && n.zoomTween.stop(), 769 (n.zoomTween = new TWEEN.Tween({ campos: f.camera.position.z, otx: f.orbitControl.target.x, oty: f.orbitControl.target.y, otz: f.orbitControl.target.z }) 770 .delay(0) 771 .to({ campos: r, otx: 0, oty: G, otz: 0 }, 100) 772 .onUpdate(function () { 773 (f.camera.position.z = this.campos), V && ((f.camera.position.y = this.oty), (f.orbitControl.target = new THREE.Vector3(this.otx, this.oty, this.otz))), f.orbitControl.update(); 774 }) 775 .easing(TWEEN.Easing.Linear.None) 776 .onComplete(function () { 777 (f.camera.position.z = r), 1 == g.zoomScale && (f.camera.position.set(0, G, r), (f.orbitControl.target = new THREE.Vector3(0, G, 0))), f.orbitControl.update(); 778 }) 779 .start())) 780 : (1 == g.zoomScale && (f.camera.position.set(0, G, r), (f.orbitControl.target = new THREE.Vector3(0, G, 0))), f.orbitControl.update()), 781 f.orbitControl.update(), 782 (f.orbitControl.mouseButtons.ORBIT = 1 != s ? -1 : THREE.MOUSE.RIGHT), 783 (f.orbitControl.mouseButtons.PAN = 1 != s ? THREE.MOUSE.LEFT : -1); 784 } else { 785 (c.pageWidth = Math.round(a)), (c.fullWidth = 2 * c.pageWidth), (c.height = Math.round(o)); 786 var q = (c.shiftHeight = Math.round(P((_ - R + M) / 2, 0, _))), 787 Z = (c.shiftWidth = Math.round(P((U - I + F) / 2, 0, U))); 788 1 == s && ((c.left = 0), (c.top = 0)), 789 c.stage.css({ 790 top: -q, 791 bottom: -q, 792 right: -Z + (v ? w : 0), 793 left: -Z + (v ? 0 : w), 794 paddingTop: k, 795 paddingRight: T, 796 paddingBottom: L, 797 paddingLeft: O, 798 transform: "translate3d(" + c.left + "px," + c.top + "px,0)", 799 }),
800 (c.stageHeight = f.height()), 801 c.wrapper.css({ width: U, height: _, marginTop: C - _ - M > 0 ? (C - M - _) / 2 : 0 }); 802 var Y = Math.floor(x(a, o) * s); 803 c.stage.find(".pdff-page-wrapper").width(Y).height(Y), c.stage.find(".ppdff-flipbook-page, .pdff-page-front , .pdff-page-back, .pdff-page-fold-inner-shadow").height(_).width(j); 804 } 805 n.checkCenter({ type: "resize" }), 1 == g.zoomScale && this.target.container.removeClass("pdff-zoom-enabled"), c.thumblist && c.thumblist.reset(t(c.thumblist.container).height()), (n.pendingZoom = !1); 806 } 807 }, 808 playSound: function () { 809 try { 810 this.options && 1 == this.options.enableSound && ((this.sound.currentTime = 0), this.sound.play()); 811 } catch (e) {} 812 }, 813 setPageMode: function (t) { 814 1 == t 815 ? (this.ui.pageMode.addClass(this.options.icons.doublepage), 816 this.ui.pageMode.html("<span>" + this.options.text.doublePageMode + "</span>"), 817 this.ui.pageMode.attr("title", this.options.text.doublePageMode), 818 (this.target.pageMode = e.PAGE_MODE.SINGLE)) 819 : (this.ui.pageMode.removeClass(this.options.icons.doublepage), 820 this.ui.pageMode.html("<span>" + this.options.text.singlePageMode + "</span>"), 821 this.ui.pageMode.attr("title", this.options.text.singlePageMode), 822 (this.target.pageMode = e.PAGE_MODE.DOUBLE)), 823 this.target && this.target.singlePageMode == e.SINGLE_PAGE_MODE.BOOKLET && this.target.reset(), 824 this.resize(); 825 }, 826 setAutoPlay: function (e) { 827 if (this.options.autoPlay) { 828 var t = (e = 1 == e) ? this.options.text.pause : this.options.text.play; 829 this.ui.play.toggleClass(this.options.icons.pause, e), 830 this.ui.play.html("<span>" + t + "</span>"), 831 this.ui.play.attr("title", t), 832 clearInterval(this.autoPlayTimer), 833 e && (this.autoPlayTimer = setInterval(this.autoPlayFunction, this.options.autoPlayDuration)), 834 (this.target.autoPlay = e); 835 } 836 }, 837 height: function (e) { 838 if (null == e) return this.container.height(); 839 (this.options.height = e), this.container.height(e), this.resize(); 840 }, 841 checkCenter: function (t) { 842 (t = null == t ? {} : t), (this.centerType = this.centerType || "start"); 843 var n, 844 i = this.target, 845 o = 0, 846 a = 0, 847 r = 0, 848 s = d.getBasePage(i._activePage), 849 l = i._activePage % 2 == 0, 850 c = i.direction == e.DIRECTION.RTL, 851 u = i.pageMode == e.PAGE_MODE.SINGLE, 852 p = u && i.singlePageMode == e.SINGLE_PAGE_MODE.BOOKLET, 853 h = i.stage.width(); 854 if ("css" == i.mode) 855 (n = i.wrapper.width()), 856 (o = Math.max((n - h) / 2, 0)), 857 (a = -n / 4), 858 (r = n / 4), 859 0 == s || p 860 ? (i.wrapper.css({ left: u ? (c ? r - o : a - o) : c ? r : a }), i.shadow.css({ width: "50%", left: c ? 0 : "50%", transitionDelay: "" })) 861 : s == i.pageCount 862 ? (i.wrapper.css({ left: u ? (c ? a - o : r - o) : c ? a : r }), i.shadow.css({ width: "50%", left: c ? "50%" : 0, transitionDelay: "" })) 863 : (i.wrapper.css({ left: u ? (c ? (l ? a - o : r - o) : l ? r - o : a - o) : 0 }), i.shadow.css({ width: "100%", left: 0, transitionDelay: parseInt(i.duration, 10) + 50 + "ms" })), 864 i.wrapper.css({ transition: "resize" == t.type ? "none" : "" }); 865 else if (null != i.stage) { 866 var f, 867 g = i.position.x; 868 (o = i.width / 4), 869 (a = -(n = i.width) / 2), 870 (r = n / 2), 871 (f = 0 == s || p ? (c ? r : a) : s == i.pageCount ? (c ? a : r) : u ? (c ? (l ? a : r) : l ? r : a) : 0) !== this.centerEnd && 872 ((this.centerTween = new TWEEN.Tween({ x: g }) 873 .delay(0) 874 .to({ x: f }, i.duration) 875 .onUpdate(function () { 876 (i.position.x = this.x), (i.stage.cssScene.position.x = this.x); 877 }) 878 .easing(i.ease) 879 .start()), 880 (this.centerEnd = f)); 881 } 882 }, 883 width: function (e) { 884 if (null == e) return this.container.width(); 885 (this.options.width = e), this.container.width(e), this.resize(); 886 }, 887 }), 888 i 889 ); 890 })(); 891 e.PreviewObject = U; 892 var H = (function (n) { 893 function i(n, i, o, a) { 894 o = o || {}; 895 var s = this; 896 if ( 897 ((s.contentRawSource = n || [r.textureLoadFallback]), 898 (s.contentSource = s.contentRawSource), 899 (s.contentSourceType = null), 900 (s.minDimension = o.minTextureSize || 256), 901 (s.maxDimension = o.maxTextureSize || 2048), 902 (s.pdfRenderQuality = o.pdfRenderQuality || e.defaults.pdfRenderQuality), 903 (s.flipbook = a),
904 (s.waitPeriod = 50), 905 (s.maxLength = 297), 906 (s.enableDebug = !1), 907 (s.zoomScale = 1), 908 (s.maxZoom = 2), 909 (s.options = o), 910 (s.outline = o.outline), 911 (s.links = o.links), 912 (s.html = o.html), 913 (s.isCrossOrigin = o.isCrossOrigin), 914 (s.normalViewport = { height: 297, width: 210, scale: 1 }), 915 (s.viewport = { height: 297, width: 210, scale: 1 }), 916 (s.imageViewport = { height: 297, width: 210, scale: 1 }), 917 (s.bookSize = { height: 297, width: 210 }), 918 (s.zoomViewport = { height: 297, width: 210 }), 919 (s.thumbsize = 128), 920 (s.cacheIndex = 256), 921 (s.cache = []), 922 (s.pageRatio = o.pageRatio || s.viewport.width / s.viewport.height), 923 (s.textureLoadTimeOut = null), 924 (s.type = "TextureLibrary"), 925 Array === s.contentSource.constructor || Array.isArray(s.contentSource) || s.contentSource instanceof Array) 926 ) 927 (s.contentSourceType = u.IMAGE), 928 (s.pageCount = s.contentSource.length), 929 t("<img/>") 930 .attr("src", s.contentSource[0]) 931 .on("load", function () { 932 (s.viewport.height = this.height), 933 (s.viewport.width = this.width), 934 (s.pageRatio = s.viewport.width / s.viewport.height), 935 (s.bookSize = { width: (s.pageRatio > 1 ? 1 : s.pageRatio) * s.maxLength, height: s.maxLength / (s.pageRatio < 1 ? 1 : s.pageRatio) }), 936 (s.zoomViewport = { width: (s.pageRatio > 1 ? 1 : s.pageRatio) * s.maxDimension, height: s.maxDimension / (s.pageRatio < 1 ? 1 : s.pageRatio) }), 937 (s.linkService = new PDFLinkService()), 938 t(this).off(), 939 s.options.pageSize == e.PAGE_SIZE.DOUBLEINTERNAL && ((s.pageCount = 2 * s.contentSource.length - 2), 1 == s.options.webgl && (s.requiresImageTextureScaling = !0)), 940 null != i && (i(s), (i = null)), 941 S(this.height + ":" + this.width); 942 }); 943 else if ("string" == typeof s.contentSource || s.contentSource instanceof String) { 944 var l = function () { 945 if (s) { 946 (PDFJS.workerSrc = r.pdfjsWorkerSrc), 947 (s.contentSourceType = u.PDF), 948 (PDFJS.disableAutoFetch = !0), 949 (PDFJS.disableStream = !0), 950 (N || A || 1 == s.options.disableFontFace) && (PDFJS.disableFontFace = N || A || 1 == s.options.disableFontFace), 951 (PDFJS.imageResourcesPath = r.imageResourcesPath), 952 (PDFJS.cMapUrl = r.cMapUrl), 953 (PDFJS.cMapPacked = !0), 954 (PDFJS.externalLinkTarget = PDFJS.LinkTarget.BLANK); 955 var t = (s.loading = PDFJS.getDocument( 956 s.options.docParameters ? s.options.docParameters : { url: d.httpsCorrection(n), rangeChunkSize: isNaN(e.defaults.rangeChunkSize) ? 524288 : e.defaults.rangeChunkSize } 957 )); 958 t.then( 959 function (t) { 960 (s.pdfDocument = t), 961 t.getPage(1).then(function (n) { 962 (s.normalViewport = n.getViewport(1)), 963 (s.viewport = n.getViewport(1)), 964 (s.viewport.height = s.viewport.height / 10), 965 (s.viewport.width = s.viewport.width / 10), 966 (s.pageRatio = s.viewport.width / s.viewport.height), 967 (s.bookSize = { width: (s.pageRatio > 1 ? 1 : s.pageRatio) * s.maxLength, height: s.maxLength / (s.pageRatio < 1 ? 1 : s.pageRatio) }), 968 (s.zoomViewport = { width: (s.pageRatio > 1 ? 1 : s.pageRatio) * s.maxDimension, height: s.maxDimension / (s.pageRatio < 1 ? 1 : s.pageRatio) }), 969 (s.refPage = n), 970 t.numPages > 1 971 ? t.getPage(2).then(function (n) { 972 if (s.options.pageSize == e.PAGE_SIZE.AUTO) { 973 var o = n.getViewport(1); 974 o.width / o.height > 1.5 * s.pageRatio ? ((s.options.pageSize = e.PAGE_SIZE.DOUBLEINTERNAL), (s.pageCount = 2 * t.numPages - 2)) : (s.options.pageSize = e.PAGE_SIZE.SINGLE); 975 } 976 null != i && (i(s), (i = null)); 977 }) 978 : null != i && (i(s), (i = null)); 979 }), 980 (s.linkService = new PDFLinkService()), 981 s.linkService.setDocument(t, null), 982 (s.pageCount = t.numPages), 983 (s.contentSource = t); 984 }, 985 function (e) { 986 if (s) { 987 var t = "", 988 n = document.createElement("a"); 989 (n.href = s.contentSource), n.hostname !== window.location.hostname && (t = "CROSS ORIGIN!! "), s.updateInfo(t + "Error Loading File - " + s.contentSource); 990 } 991 } 992 ), 993 (t.onProgress = function (e) { 994 if (s) { 995 var t = (100 * e.loaded) / e.total; 996 isNaN(t) 997 ? e && e.loaded 998 ? s.updateInfo("Lo
998ading Pages " + (Math.ceil(e.loaded / 1e4) / 100).toString() + "MB ...") 999 : s.updateInfo("Loading Pages ...") 1000 : s.updateInfo("Loading Pages " + t.toString().split(".")[0] + "% ..."); 1001 } 1002 }); 1003 } 1004 }, 1005 c = function () { 1006 if (s) { 1007 (r.pdfjsWorkerSrc += "?ver=" + e.version), s.updateInfo("Loading Interface ..."); 1008 var n = document.createElement("a"); 1009 (n.href = r.pdfjsWorkerSrc), 1010 n.hostname !== window.location.hostname 1011 ? (s.updateInfo("Loading Interface ..."), 1012 t.ajax({ 1013 url: r.pdfjsWorkerSrc, 1014 cache: !0, 1015 success: function (t) { 1016 (r.pdfjsWorkerSrc = e.createObjectURL(t, "text/javascript")), l(); 1017 }, 1018 })) 1019 : l(); 1020 } 1021 }; 1022 null == window.PDFJS 1023 ? s && 1024 (s.updateInfo("Loading Interface ..."), 1025 O( 1026 r.pdfjsSrc + "?ver=" + e.version, 1027 function () { 1028 "function" == typeof define && define.amd 1029 ? (s.updateInfo("Loading Interface ..."), 1030 require.config({ paths: { "pdfjs-dist/build/pdf.worker": r.pdfjsWorkerSrc.replace(".js", "") } }), 1031 require(["pdfjs-dist/build/pdf"], function (e) { 1032 c(); 1033 })) 1034 : c(); 1035 }, 1036 function () { 1037 s.updateInfo("Unable to load Interface .."); 1038 } 1039 )) 1040 : l(); 1041 } else console.error("Unsupported source type. Please load a valid PDF file."); 1042 return ( 1043 (this.dispose = function () { 1044 s.loading && s.loading.destroy && s.loading.destroy(), 1045 (s.loading = null), 1046 s.textureLoadTimeOut && (clearTimeout(s.textureLoadTimeOut), (s.textureLoadTimeOut = null)), 1047 this.targetObject && 1048 (this.targetObject.thumbContainer && this.targetObject.thumbContainer.remove && this.targetObject.thumbContainer.remove(), 1049 this.targetObject.outlineContainer && this.targetObject.outlineContainer.remove && this.targetObject.outlineContainer.remove(), 1050 this.targetObject.dispose && this.targetObject.dispose(), 1051 (this.targetObject.processPage = null), 1052 (this.targetObject.requestPage = null), 1053 this.targetObject.container && this.targetObject.container.off && this.targetObject.container.off()), 1054 this.pdfDocument && this.pdfDocument.destroy && this.pdfDocument.destroy(), 1055 this.linkService && this.linkService.dispose && this.linkService.dispose(), 1056 this.outlineViewer && this.outlineViewer.dispose && this.outlineViewer.dispose(), 1057 this.thumblist && this.thumblist.dispose && ((this.thumblist.review = null), this.thumblist.dispose()), 1058 (this.activeThumb = null), 1059 (this.targetObject = null), 1060 (this.pdfDocument = null), 1061 (this.linkService = null), 1062 (this.outlineViewer = null), 1063 (this.thumblist = null), 1064 (s = null); 1065 }), 1066 this 1067 ); 1068 } 1069 return ( 1070 B(i, {}), 1071 (i.prototype.updateInfo = function (e) { 1072 this.flipbook && this.flipbook.updateInfo && this.flipbook.updateInfo(e); 1073 }), 1074 (i.prototype.initThumbs = function () { 1075 var e, 1076 n = this; 1077 null == n.cache[n.thumbsize] && (n.cache[n.thumbsize]
1077= []); 1078 var i = function () { 1079 clearTimeout(e), 1080 (e = setTimeout(function () { 1081 e = setTimeout(o, n.waitPeriod / 2); 1082 }, n.waitPeriod)); 1083 }, 1084 o = function () { 1085 var o = 0; 1086 if ( 1087 (Date.now() - n.thumblist.lastScrolled < 100 1088 ? (o = 1) 1089 : (n.targetObject.container.find(".pdff-thumb-container .pdff-vrow").each(function () { 1090 var e = t(this); 1091 if (!e.hasClass("pdff-thumb-loaded")) { 1092 o++; 1093 var a = t(this).attr("id").replace("pdff-thumb", ""); 1094 return n.getPage(a, i, !0), e.addClass("pdff-thumb-loaded"), !1; 1095 } 1096 }), 1097 0 == o && clearTimeout(e)), 1098 o > 0 && i(), 1099 n.activeThumb != n.targetObject._activePage && null != n.targetObject.thumbContainer && n.targetObject.thumbContainer.hasClass("pdff-sidemenu-visible")) 1100 ) { 1101 var a = n.thumblist.container, 1102 r = a.scrollTop, 1103 s = a.getBoundingClientRect().height, 1104 l = n.targetObject.thumbContainer.find("#pdff-thumb" + n.targetObject._activePage); 1105 l.length > 0 1106 ? (n.targetObject.thumbContainer.find(".pdff-selected").removeClass("pdff-selected"), 1107 l.addClass("pdff-selected"), 1108 r + s < (l = l[0]).offsetTop + l.scrollHeight ? l.scrollIntoView(!1) : r > l.offsetTop && l.scrollIntoView(), 1109 (n.activeThumb = n.targetObject._activePage)) 1110 : (t(a).scrollTop(124 * n.targetObject._activePage), i()); 1111 } 1112 }; 1113 (n.thumblist = n.targetObject.thumblist = new ThumbList({ 1114 h: 500, 1115 addFn: function (e) {}, 1116 scrollFn: i, 1117 itemHeight: 128, 1118 totalRows: n.pageCount, 1119 generatorFn: function (e) { 1120 var t = document.createElement("div"), 1121 n = e + 1; 1122 t.id = "pdff-thumb" + n; 1123 var i = document.createElement("div"); 1124 return (i.innerHTML = n), t.appendChild(i), t; 1125 }, 1126 })), 1127 (n.thumblist.lastScrolled = Date.now()), 1128 (n.thumblist.review = i), 1129 i(); 1130 var a = t("<div>").addClass("pdff-thumb-container pdff-sidemenu-visible pdff-sidemenu"); 1131 a.append(t(n.thumblist.container).addClass("pdff-thumb-wrapper")), (n.targetObject.thumbContainer = a), n.targetObject.container.append(a); 1132 var r = t(f.div, { class: "pdff-ui-btn pdff-ui-sidemenu-close ti-close" }); 1133 a.append(r), 1134 n.thumblist.reset(t(n.thumblist.container).height()), 1135 n.targetObject.container.on("click", ".pdff-thumb-container .pdff-vrow", function (e) { 1136 e.stopPropagation(); 1137 var i = t(this).attr("id").replace("pdff-thumb", ""); 1138 n.targetObject.gotoPage(parseInt(i, 10)); 1139 }); 1140 }), 1141 (i.prototype.initOutline = function () { 1142 var e = this, 1143 n = t("<div>").addClass("pdff-outline-container pdff-sidemenu"), 1144 i = t("<div>").addClass("pdff-outline-wrapper"), 1145 o = t(f.div, { class: "pdff-ui-btn pdff-ui-sidemenu-close ti-close" }); 1146 function a(t) { 1147 if ((1 == e.options.overwritePDFOutline && (t = []), (t = t || []), e.outline)) for (var n = 0; n < e.outline.length; n++) (e.outline[n].custom = !0), t && t.push(e.outline[n]); 1148 e.outlineViewer.render({ outline: t }); 1149 } 1150 n.append(o).append(i), 1151 e.targetObject.container.append(n), 1152 (e.targetObject.outlineContainer = n), 1153 (e.outlineViewer = new BookMarkViewer({ 1154 container: i[0], 1155 linkService: e.linkService, 1156 outlineItemClass: "pdff-outline-item", 1157 outlineToggleClass: "pdff-outline-toggle", 1158 outlineToggleHiddenClass: "pdff-outlines-hidden", 1159 })), 1160 e.pdfDocument 1161 ? e.pdfDocument.getOutline().then(function (e) { 1162 a(e); 1163 }) 1164 : a([]), 1165 1 == e.options.autoEnableOutline && e.targetObject.ui.outline.trigger("click"), 1166 1 == e.options.autoEnableThumbnail && e.targetObject.ui.thumbnail.trigger("click"); 1167 }), 1168 (i.prototype.checkViewportSize = function (e, t, n) { 1169 var i = this, 1170 o = i.targetObject, 1171 a = e * n, 1172 s = t * n, 1173 l = i.cacheIndex; 1174 if (i.contentSourceType == u.PDF) { 1175 if ( 1176 ((i.cacheIndex = Math.ceil(Math.max(a, s))), 1177 (i.cacheIndex = Math.floor(Math.max(a, s))), 1178 (i.cacheIndex = P(i.cacheIndex * r.pixelRatio, i.minDimension, i.maxDimension)),
1179 null == i.cache[i.cacheIndex] && (i.cache[i.cacheIndex] = []), 1180 l !== i.cacheIndex) 1181 ) { 1182 for (var c = 0; c < o.children.length; c++) o.children[c]; 1183 o.refresh(); 1184 } 1185 (i.imageViewport = i.refPage.getViewport(s / i.normalViewport.height)), (i.viewport = "css" == o.mode ? i.imageViewport : i.refPage.getViewport(i.bookSize.height / i.normalViewport.height)), S(i.cacheIndex); 1186 var d = o.container.find(".linkAnnotation"), 1187 p = i.viewport.clone({ dontFlip: !0 }); 1188 d.css({ transform: "matrix(" + p.transform.join(",") + ")" }); 1189 } else null == i.cache[i.cacheIndex] && (i.cache[i.cacheIndex] = []); 1190 }), 1191 (i.prototype.getCache = function (e, t) { 1192 return 1 == t ? (null == this.cache[this.thumbsize] ? null : this.cache[this.thumbsize][e]) : null == this.cache[this.cacheIndex] ? null : this.cache[this.cacheIndex][e]; 1193 }), 1194 (i.prototype.setCache = function (e, t, n, i) { 1195 if (1 == n) null != this.cache[this.thumbsize] && (this.cache[this.thumbsize][e] = t); 1196 else { 1197 var o = null == i ? this.cacheIndex : i; 1198 null != this.cache[o] && (this.cache[o][e] = t); 1199 } 1200 }), 1201 (i.prototype.setTarget = function (e) { 1202 var t = this; 1203 if (null == e) return this.targetObject; 1204 (this.targetObject = e), 1205 (e.contentProvider = this), 1206 e.container.removeClass("pdff-loading pdff-init"), 1207 null != t.linkService && (t.linkService.setViewer(e), t.initOutline()), 1208 (e.processPage = function (e, n) { 1209 e > 0 && e <= t.pageCount ? t.getPage(e, n) : t.setPage(e, r.textureLoadFallback, n); 1210 }), 1211 (e.requestPage = function () { 1212 t.review("Request"); 1213 }), 1214 null != e.resize && e.resize(); 1215 }), 1216 (i.prototype.review = function (e) { 1217 var t = this; 1218 (e = e || "timer review"), 1219 clearTimeout(t.textureLoadTimeOut), 1220 (t.textureLoadTimeOut = setTimeout(function () { 1221 t.textureLoadTimeOut = setTimeout(t.reviewPages, t.waitPeriod / 2, t, e); 1222 }, t.waitPeriod)); 1223 }), 1224 (i.prototype.reviewPages = function (e, n) { 1225 var i = (e = e || this).targetObject; 1226 if (null != i) { 1227 var o = M(i); 1228 null != n && S(n); 1229 var a, 1230 r = !1; 1231 for (a = 0; a < e.targetObject.children.length; a++) 1232 if (1 == i.children[a].isFlipping) { 1233 r = !0; 1234 break; 1235 } 1236 if (0 == r) { 1237 var s = i.children.length > 3 ? 3 : i.children.length, 1238 l = o ? i._activePage : L(i._activePage); 1239 for (e.baseNumber = l, e.zoomScale > 1 && (s = 1), a = 0; a < s; a++) { 1240 var c = Math.floor(a / 2), 1241 d = a % 2 == 0 ? -c * (o ? 1 : 2) : (0 == c ? 1 : c) * (o ? 1 : 2), 1242 u = l + d, 1243 p = l + d + 1, 1244 h = i.getPageByNumber(u), 1245 f = i.getPageByNumber(p), 1246 g = u + "|" + e.cacheIndex, 1247 m = p + "|" + e.cacheIndex, 1248 v = 0; 1249 if ( 1250 (null != h && 1251 h.frontPageStamp != g && 1252 1 == h.visible && 1253 ((h.frontTextureLoaded = !1), 1254 i.processPage(u, function () { 1255 e.review("Batch Call"); 1256 }), 1257 (h.frontPageStamp = g), 1258 v++), 1259 null == f || 1260 f.backPageStamp == m || 1261 1 != f.visible || 1262 o || 1263 ((f.backTextureLoaded = !1), 1264 i.processPage(p, function () { 1265 e.review("Batch Call"); 1266 }), 1267 (f.backPageStamp = m), 1268 v++), 1269 0 == d && e.annotedPage !== l && (e.getAnnotations(u), o || e.getAnnotations(p), (e.annotedPage = l)), 1270 v > 0) 1271 ) 1272 break; 1273 } 1274 0 == v && "css" !== i.mode && e.setLoading(l); 1275 } else if ((e.review("Revisit request"), null != e.annotedPage && "css" !== i.mode)) { 1276 var b = L(i._activePage); 1277 t(i.getContentLayer(b)).html(""), t(i.getContentLayer(b + 1)).html(""), (e.annotedPage = null); 1278 } 1279 } 1280 }), 1281 (i.prototype.getPage = function (t, n, i) { 1282 var o, 1283 a, 1284 s, 1285 l, 1286 c = this, 1287 d = (t = parseInt(t, 10)), 1288 p = c.contentSource; 1289 t <= 0 && t >= c.pageCount 1290 ? c.setPage(t, r.textureLoadFallback, n, i) 1291 : c.contentSourceType == u.PDF 1292 ? null != c.getCache(t, i) 1293 ? (c.setPage(t, c.getCache(t, i), n, i), S("Page " + t + " loaded from cache"))
1294 : (!0 !== i && c.setLoading(t, !0), 1295 c.options.pageSize == e.PAGE_SIZE.DOUBLEINTERNAL && t > 2 && (d = Math.ceil((t - 1) / 2) + 1), 1296 p.getPage(d, i).then(function (o) { 1297 !(function (t, n, i, o) { 1298 var a = c.options.forceFit, 1299 r = c.options.pageSize == e.PAGE_SIZE.DOUBLEINTERNAL && n > 1 && n < c.pageCount, 1300 s = r && a ? 2 : 1, 1301 l = a ? t.getViewport(1) : c.normalViewport, 1302 d = c.cacheIndex / Math.max(l.width / s, l.height); 1303 1 == c.webgl && (d = k(c.cacheIndex) / (c.pageRatio > 1 ? l.width / s : l.height)); 1304 var u = document.createElement("canvas"), 1305 p = performance.now(), 1306 h = c.cacheIndex, 1307 f = u.getContext("2d"); 1308 1 == o && (d = c.thumbsize / c.normalViewport.height), 1309 (u.height = Math.round(l.height * d)), 1310 (u.width = Math.round((l.width / s) * d)), 1311 "css" == c.targetObject.mode && Math.abs(c.targetObject.zoomHeight - u.height) < 2 && ((u.height = c.targetObject.zoomHeight + 0), (u.width = c.targetObject.zoomWidth + 0)), 1312 (l = t.getViewport(d)), 1313 S("rendering " + n + " at " + u.width + "x" + u.height), 1314 r && (D(c.targetObject) ? n % 2 == 0 && (l.transform[4] = -u.width) : n % 2 == 1 && (l.transform[4] = -u.width)); 1315 var g = { canvasContext: f, viewport: l }; 1316 (t.cleanupAfterRender = !0), 1317 t.render(g).promise.then(function () { 1318 S(performance.now() - p), 1319 (p = performance.now()), 1320 1 == o || (1 == c.options.canvasToBlob && !0 !== c.webgl) 1321 ? u.toBlob( 1322 function (t) { 1323 var a = e.createObjectURL(t, "image/jpeg"); 1324 S(performance.now() - p), c.setCache(n, a, o, h), c.setPage(n, a, i, o); 1325 }, 1326 "image/jpeg", 1327 c.pdfRenderQuality 1328 ) 1329 : (S("Setting Page " + n), c.setPage(n, u, i, o)), 1330 (g = null); 1331 }); 1332 })(o, t, n, i); 1333 })) 1334 : (c.contentSourceType != u.IMAGE && c.contentSourceType != u.HTML) || 1335 (null != c.getCache(t, i) 1336 ? (c.setPage(t, c.getCache(t, i), n, i), S("Page " + t + " loaded from cache")) 1337 : (!0 !== i && c.setLoading(t, !0), 1338 c.options.pageSize == e.PAGE_SIZE.DOUBLEINTERNAL && t > 2 && (d = Math.ceil((t - 1) / 2) + 1), 1339 (o = p[d - 1]), 1340 (a = function (e) { 1341 c.setCache(t, e, i, c.cacheIndex), c.setPage(t, e, n, i), null != n && n(); 1342 }), 1343 (s = c.isCrossOrigin), 1344 ((l = new Image()).crossOrigin = "Anonymous"), 1345 (l.onload = function () { 1346 if (1 == s) { 1347 var t = document.createElement("canvas"), 1348 n = t.getContext("2d"); 1349 (t.width = l.width), 1350 (t.height = l.height), 1351 n.drawImage(l, 0, 0), 1352 1 == r.canvasToBlob 1353 ? t.toBlob( 1354 function (t) { 1355 var n = e.createObjectURL(t, "image/jpeg"); 1356 null != a && a(n); 1357 }, 1358 "image/jpeg", 1359 0.85 1360 ) 1361 : null != a && a(t); 1362 } else null != a && a(o); 1363 (l.onload = null), (l = null); 1364 }), 1365 (l.src = o), 1366 (l.complete || void 0 === l.complete) && ((l.src = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw=="), (l.src = o)))); 1367 }), 1368 (i.prototype.getTargetPage = function (e) {}), 1369 (i.prototype.setLoading = function (e, n) { 1370 if (null != this.targetObject) 1371 if (1 == this.webgl) { 1372 var i = this.targetObject.container; 1373 1 == n 1374 ? !0 !== i.isLoading && (i.addClass("pdff-loading"), (i.isLoading = !0), S("Loading icon at " + e + " as " + n)) 1375 : null != i.isLoading && (i.removeClass("pdff-loading"), (i.isLoading = null), S("Loading icon at " + e + " as " + n)); 1376 } else { 1377 var o = t(this.targetObject.getContentLayer(e)); 1378 null != o && (1 == n ? o.addClass("pdff-page-loading") : o.removeClass("pdff-page-loading"), S("Loading icon at " + e + " as " + n)); 1379 } 1380 }), 1381 (i.prototype.getAnnotations = function (n) { 1382 var i = this; 1383 if (0 != i.options.enableAnnotation) { 1384 var o = i.targetObject; 1385 n = parseInt(n, 10); 1386 var a = i.contentSource, 1387 r = t(o.getContentLayer(n)); 1388 if ((r.empty(), n > 0 && n <= i.pageCount)) { 1389 if (i.contentSourceType == u.PDF) { 1390 L(n); 1391 var s = n; 1392 i.options.pageSize == e.PAGE_SIZE.DOUBLEINTERNAL && n > 2 && (s = Math.ceil((n - 1) / 2) + 1), 1393 a.getPage(s).then(function (e) { 1394 null != r && r.length > 0 && i.setupAnnotations(e, i.viewport, r, n); 1395 }); 1396 } 1397 if (null != i.links && null != i.links[n]) 1398 for (var l = i.links[n], c = 0; c < l.length; c++) { 1399 var d, 1400 p = l[c]; 1401 p.dest && p.dest.indexOf && 0 == p.dest.indexOf("[html]") 1402 ? (((d = document.createElement("div")).innerHTML = p.dest.substr(6)), (d.className = "customHtmlAnnotation")) 1403 : ((d = document.createElement("a")).setAttribute("dest", p.dest), 1404 (d.className = "customLinkAnnotation"), 1405 (d.href = "#" + p.dest), 1406 (d.onclick = function () { 1407 var e = this.getAttribute("dest"); 1408 return e && i.linkService.customNavigateTo(e), !1; 1409 })), 1410 (d.style.left = p.x + "%"), 1411 (d.style.top = p.y + "%"), 1412 (d.style.width = p.w + "%"), 1413 (d.style.height = p.h + "%"), 1414 r[0].appendChild(d); 1415 } 1416 if (null != i.html && null != i.html[n]) { 1417 var h = i.html[n]; 1418 r.append(t("<div class='customHTMLAnnotation'>").html(h)); 1419 } 1420 } 1421 } 1422 }), 1423 (i.prototype.setPage = function (e, t, n, i) { 1424 var o = this, 1425 a = o.targetObject, 1426 s = D(a), 1427 l = M(a); 1428 if (1 == i) o.targetObject.container.find("#pdff-thumb" + e).css({ backgroundImage: y(t) }); 1429 else { 1430 t == r.textureLoadFallback && S("Fallback on " + e); 1431 var c = a.getPageByNumber(e); 1432 null != c 1433 ? (e % 2 != 0 && !s) || (e % 2 != 1 && s && !l) || (l && !s) 1434 ? (S(e + "rendered to back of " + c.c
1434olor), 1435 c.backImage(t, function (t, i) { 1436 (c.backTextureLoaded = !0), o.setLoading(e), o.requiresImageTextureScaling && i && 1 != e && e != o.pageCount && ((i.repeat.x = 0.5), (i.offset.x = 0.5)), null != n && n(); 1437 })) 1438 : (S(e + "rendered to front of " + c.color), 1439 c.frontImage(t, function (t, i) { 1440 (c.frontTextureLoaded = !0), o.setLoading(e), o.requiresImageTextureScaling && i && 1 != e && e != o.pageCount && (i.repeat.x = 0.5), null != n && n(); 1441 })) 1442 : S("Invalid set request on Page " + e); 1443 } 1444 }), 1445 (i.prototype.setupAnnotations = function (n, i, o, a) { 1446 if (null != o && 0 != t(o).length) { 1447 var r = this; 1448 return n.getAnnotations().then(function (s) { 1449 if (((i = i.clone({ dontFlip: !0 })), r.options.pageSize, e.PAGE_SIZE.DOUBLEINTERNAL, null != o)) { 1450 0 == (o = t(o)).find(".annotationDiv").length && o.append(t("<div class='annotationDiv'>")); 1451 var l = o.find(".annotationDiv"); 1452 l.empty(), 1453 r.options.pageSize == e.PAGE_SIZE.DOUBLEINTERNAL && a > 2 && a % 2 == 1 ? l.css({ left: "-100%" }) : 1 == a && l.css({ left: "" }), 1454 PDFJS.AnnotationLayer.render({ annotations: s, div: l[0], page: n, viewport: i, linkService: r.linkService }), 1455 r.options.annotationClass && "" !== r.options.annotationClass && l.find(" > section").addClass(r.options.annotationClass); 1456 } 1457 }); 1458 } 1459 }), 1460 i 1461 ); 1462 })(), 1463 W = (function () { 1464 function n(e) { 1465 (this.angles = e.angles || [0, 0, 0, 0, 0, 0]), (this.stiffness = e.angles || 0.1), (this.segments = e.segments || 1), (this.canvasMode = e.contentSourceType !== u.IMAGE && 0 == e.canvasToBlob), this.initDOM(); 1466 } 1467 function i(e) { 1468 var n = (e.contentLayer = t(f.div, { class: "pdff-page-content" })); 1469 e.append(n); 1470 } 1471 return ( 1472 (n.prototype = { 1473 initDOM: function () { 1474 var e = (this.element = t(f.div, { class: "ppdff-flipbook-page" })), 1475 n = (this.wrapper = t(f.div, { class: "pdff-page-wrapper" })), 1476 o = (this.front = t(f.div, { class: "pdff-page-front" })), 1477 a = (this.back = t(f.div, { class: "pdff-page-back" })), 1478 r = (this.foldInnerShadow = t(f.div, { class: "pdff-page-fold-inner-shadow" })), 1479 s = (this.foldOuterShadow = t(f.div, { class: "pdff-page-fold-outer-shadow" })); 1480 (this.frontIMG = new Image()), (this.backIMG = new Image()), i(o, this.segments), i(a, this.segments), e.append(n).append(s), n.append(o).append(a).append(r); 1481 }, 1482 updatePoint: function (t) { 1483 if (null != t) { 1484 var n = null != this.parent.dragPage ? this.parent.dragPage : null != t.page ? t.page : this, 1485 i = n.element.width(), 1486 o = n.element.height(), 1487 a = null != this.parent.corner ? this.parent.corner : t.corner, 1488 r = e.CORNERS, 1489 s = n.side == p.right, 1490 l = a == r.BL || a == r.BR; 1491 (t.rx = 1 == s ? 2 * i - t.x : t.x), (t.ry = 1 == l ? o - t.y : t.y); 1492 var c = Math.atan2(t.ry, t.rx); 1493 c = Math.PI / 2 - P(c, 0, m(90)); 1494 var d = s ? t.x / 2 : i - t.x / 2, 1495 u = t.ry / 2, 1496 h = Math.max(0, Math.sin(c - Math.atan2(u, d)) * x(d, u)), 1497 f = 0.5 * x(t.rx, t.ry), 1498 g = Math.round(i - h * Math.sin(c)), 1499 y = Math.round(h * Math.cos(c)), 1500 C = v(c), 1501 E = l ? (s ? 90 - C + 180 : 180 + C) : s ? C : 90 - C, 1502 S = l ? (s ? 90 - C + 180 : C) : s ? C + 180 : E, 1503 k = l ? (s ? 90 - C : C + 90) : s ? E - 90 : E + 180, 1504 T = s ? i - g : g, 1505 L = l ? o + y : -y, 1506 O = s ? -g : g - i, 1507 I = l ? -o - y : y, 1508 M = P((0.5 * t.distance) / i, 0, 0.5), 1509 D = P((0.5 * (2 * i - t.rx)) / i, 0.05, 0.3); 1510 n.element.addClass("pdff-folding"); 1511 var F = s ? n.back : n.front, 1512 z = s ? n.front : n.back, 1513 N = n.foldOuterShadow, 1514 A = n.foldInnerShadow; 1515 n.wrapper.css({ transform: b(T, L) + w(E) }), 1516 F.css({ transform: w(-E) + b(-T, -L) }), 1517 z.css({ transform: w(S) + b(O, I), boxShadow: "rgba(0, 0, 0, " + M + ") 0px 0px 20px" }), 1518 A.css({ transform: w(S) + b(O, I), opacity: D / 2, backgroundImage: R.css + "linear-gradient( " + k + "deg, rgba(0, 0, 0, 0.25) , rgb(0, 0, 0) " + 0.7 * f + "px, rgb(255, 255, 255) " + f + "px)" }), 1519 N.css({ opacity: D / 2, left: s ? "auto" : 0, right: s ? 0 : "auto", backgroundImage: R.css + "linear-gradient( " + (180 - k) + "deg, rgba(0, 0, 0,0) " + f / 3 + "px, rgb(0, 0, 0) " + f + "px)" }); 1520 } 1521 }, 1522 updateAngle: function (e, t) { 1523 var n = 5 * this.element.width(); 1524 this.wrapper.css({ perspective: n, perspectiveOrigin: 1 == t ? "0% 50%" : "100% 50%" }), 1525 this.front.css({ 1526 display: 1 == t ? (e <= -90 ? "block" : "none") : e < 90 ? "block" : "none", 1527 transform: ("MfS" !== R.dom ? "" : "perspective(" + n + "px) ") + (1 == t ? "translateX(-100%) " : "") + "rotateY(" + ((1 == t ? 180 : 0) + e) + "deg)", 1528 }), 1529 this.back.css({ 1530 display: 1 == t ? (e > -90 ? "block" : "none") : e >= 90 ? "block" : "none", 1531 transform: ("MSd" !== R.dom ? "" : "perspective(" + n + "px) ") + (0 == t ? "translateX(100%) " : "") + "rotateY(" + ((0 == t ? -180 : 0) + e) + "deg)", 1532 }); 1533 }, 1534 tween: function (t) { 1535 var n = this; 1536 if (null != n && null != n.parent) { 1537 var i, 1538 o = M(n.parent),
1539 a = n.side == p.right, 1540 r = n.parent.direction == e.DIRECTION.RTL, 1541 s = n.parent.corner == e.CORNERS.BL || n.parent.corner == e.CORNERS.BR, 1542 l = 1 == n.magnetic, 1543 c = s ? n.parent.height : 0, 1544 d = 0, 1545 u = (n.end = n && 1 == n.animateToReset ? { x: a ? n.parent.fullWidth : 0, y: c } : { x: a ? 0 : n.parent.fullWidth, y: c }); 1546 n.ease = n.isHard ? TWEEN.Easing.Quadratic.InOut : TWEEN.Easing.Linear.None; 1547 var h = n.parent.duration; 1548 1 == n.isHard 1549 ? (null != t && (d = E(t.distance, t.fullWidth)), (i = n.init = { angle: d * (a ? -1 : 1) }), (u = n.end = n && 1 == n.animateToReset ? { angle: a ? 0 : -0 } : { angle: a ? -180 : 180 })) 1550 : null == t 1551 ? ((i = n.init = n && 1 == n.animateToReset ? { x: a ? 0 : n.parent.fullWidth, y: 0 } : { x: a ? n.parent.fullWidth : 0, y: 0 }), 1552 (n.first = { x: ((a ? 3 : 1) * n.parent.fullWidth) / 4, y: 0 }), 1553 (n.mid = { x: ((a ? 1 : 3) * n.parent.fullWidth) / 4, y: 0 })) 1554 : ((i = n.init = { x: t.x, y: t.y, opacity: 1 }), 1555 (n.first = { x: (3 * t.x) / 4, y: (3 * t.y) / 4, opacity: 1 }), 1556 (n.mid = { x: t.x / 4, y: t.y / 4, opacity: 1 }), 1557 (h = (n.parent.duration * C(i.x, i.y, u.x, u.y)) / n.parent.fullWidth), 1558 (h = P(h, n.parent.duration / 3, n.parent.duration))), 1559 (i.index = 0), 1560 (u.index = 1), 1561 (n.isFlipping = !0); 1562 var f = function (e) { 1563 1 == n.isHard ? (n.updateAngle(e.angle, a), (n.angle = e.angle)) : (n.updatePoint({ x: e.x, y: e.y }), (n.x = e.x), (n.y = e.y)), 1564 o && !l && (n.element[0].style.opacity = (a && !r) || (!a && r) ? (e.index > 0.5 ? 2 * (1 - e.index) : 1) : e.index < 0.5 ? 2 * e.index : 1); 1565 }; 1566 o && ((!a && !r) || (a && r)) && (n.element[0].style.opacity = 0), 1567 (n.completeTween = 1568 n.completeTween || 1569 function (t) { 1570 (n.isFlipping = !1), 1571 1 == n.isHard ? (n.updateAngle(n.end.angle), n.back.css({ display: "block" }), n.front.css({ display: "block" })) : n.updatePoint({ x: n.end.x, y: n.end.y }), 1572 (n.element[0].style.opacity = 1), 1573 !0 !== n.animateToReset ? (n.side = n.side == p.right ? p.left : p.right) : (n.animateToReset = null), 1574 (n.currentTween = null), 1575 (n.pendingPoint = null), 1576 (n.magnetic = !1), 1577 (n.parent.dragPage = null), 1578 (n.parent.corner = e.CORNERS.NONE), 1579 1 != t && n.parent.refresh(); 1580 }), 1581 1 == n.isHard 1582 ? (n.currentTween = new TWEEN.Tween(i) 1583 .delay(0) 1584 .to(u, n.parent.duration) 1585 .onUpdate(function () { 1586 f(this); 1587 }) 1588 .easing(n.ease) 1589 .onComplete(n.completeTween) 1590 .start()) 1591 : null == t 1592 ? (n.currentTween = new TWEEN.Tween(i) 1593 .delay(0) 1594 .to(u, n.parent.duration) 1595 .onUpdate(function () { 1596 f(this); 1597 }) 1598 .easing(TWEEN.Easing.Sinusoidal.Out) 1599 .onComplete(n.completeTween) 1600 .start()) 1601 : ((n.currentTween = new TWEEN.Tween(i) 1602 .delay(0) 1603 .to(u, h) 1604 .onUpdate(function () { 1605 f(this); 1606 }) 1607 .easing(TWEEN.Easing.Sinusoidal.Out) 1608 .onComplete(n.completeTween)), 1609 n.currentTween.start()); 1610 } 1611 }, 1612 frontImage: function (e, n) { 1613 var i = this; 1614 function o() { 1615 i.front.css({ backgroundImage: y(e) }), null != n && n(); 1616 } 1617 1 == i.canvasMode ? (i.front.find(">canvas").remove(), e !== r.textureLoadFallback && i.front.append(t(e)), null != n && n()) : e == r.textureLoadFallback ? o() : ((i.frontIMG.onload = o), (i.frontIMG.src = e)); 1618 }, 1619 backImage: function (e, n) { 1620 var i = this; 1621 function o() { 1622 i.back.css({ backgroundImage: y(e) }), null != n && n(); 1623 } 1624 1 == i.canvasMode ? (i.back.find(">canvas").remove(), e !== r.textureLoadFallback && i.back.append(t(e)), null != n && n()) : e == r.textureLoadFallback ? o() : ((i.backIMG.onload = o), (i.backIMG.src = e)); 1625 }, 1626 updateCSS: function (e) { 1627 this.element.css(e); 1628 }, 1629 resetCSS: function () { 1630 this.wrapper.css({ transform: "" }), this.front.css({ transform: "", boxShadow: "" }), this.back.css({ transform: "", boxShadow: "" }); 1631 }, 1632 clearTween: function (e) { 1633 this.currentTween.stop(), this.completeTween(1 == e), this.resetCSS(); 1634 }, 1635 }), 1636 n 1637 ); 1638 })(), 1639 G = (function (n) { 1640 function i(e) { 1641 for (var t = !1, n = 0; n < e.pages.length; n++) 1642 if (1 == e.pages[n].isFlipping) { 1643 t = !0; 1644 break; 1645 } 1646 return t; 1647 } 1648 function o(n, o) { 1649 var a = this; 1650 function r(e) { 1651 a.dragPage != e.page && 1 == e.page.visible && (a.dragPage.clearTween(!0), (a.dragPage = e.page), (a.corner = e.corner), (a.dragPage.pendingPoint = e)); 1652 } 1653 (a.type = "BookCSS"), 1654 (a.images = n.images || []), 1655 (a.pageCount = n.pageCount || 2), 1656 (a.foldSense = 50), 1657 (a.stackCount = 4), 1658 (a.mode = "css"), 1659 (a.pages = []), 1660 (a.duration = n.duration), 1661 (a.container = t(o)), 1662 (a.options = n), 1663 (a.drag = p.none), 1664 (a.pageCount = 1 == a.pageCount ? a.pageCount : 2 * Math.ceil(a.pageCount / 2)), 1665 (a.pageMode = n.pageMode || (F || a.pageCount <= 2 ? e.PAGE_MODE.SINGLE : e.PAGE_MODE.DOUBLE)), 1666 (a.singlePageMode = n.singlePageMode || (F ? e.SINGLE_PAGE_MODE.BOOKLET : e.SINGLE_PAGE_MODE.ZOOM)), 1667 (a.swipe_threshold = F ? 15 : 50), 1668 (a.direction = n.direction || e.DIRECTION.LTR), 1669 (a.startPage = 1), 1670 (a.endPage = a.pageCount), 1671 (a._activePage = n.openPage || a.startPage), 1672 (a.hardConfig = n.hard), 1673 (s = "WebKitCSSMatrix" in window || (document.body && "MozPerspective" in document.body.style)), 1674 (a.animateF = function () { 1675 TWEEN.getAll().length > 0 ? TWEEN.update() : clearInterval(a.animate); 1676 }), 1677 a.init(n), 1678 (a.skipDrag = !1);
1679 var l = function (t) { 1680 var n = a.eventToPoint(t); 1681 if (null != t.touches && 2 == t.touches.length && null != a.startTouches) { 1682 a.zoomDirty = !0; 1683 var o = d.getVectorAvg(d.getTouches(t, a.container.offset())), 1684 r = d.calculateScale(a.startTouches, d.getTouches(t)); 1685 a.lastScale, 1686 a.contentProvider.zoomScale, 1687 o.x, 1688 o.y, 1689 a.stage.css({ transform: "translate3d(" + a.left + "px," + a.top + "px,0) scale3d(" + r + "," + r + ",1)" }), 1690 (a.lastScale = r), 1691 (a.lastZoomCenter = o), 1692 t.preventDefault(); 1693 } 1694 if (!((null != t.touches && t.touches.length > 1) || null == a.startPoint || null != a.startTouches)) { 1695 var s = a.dragPage || n.page; 1696 if (1 !== a.contentProvider.zoomScale) (null == t.touches && 1 != a.isPanning) || (a.pan(n), t.preventDefault()); 1697 else if (!0 !== a.skipDrag && (n.distance, !i(a))) { 1698 if (null != a.dragPage || 1 == n.isInside) { 1699 null != a.dragPage ? S("set mouse down move") : ((n.y = P(n.y, 1, a.height - 1)), (n.x = P(n.x, 1, n.fullWidth - 1))); 1700 var l = a.corner || n.corner; 1701 if (s.isHard) { 1702 var c = l == e.CORNERS.BR || l == e.CORNERS.TR, 1703 u = E(n.distance, n.fullWidth); 1704 s.updateAngle(u * (c ? -1 : 1), c); 1705 } else s.updatePoint(n, a); 1706 (s.magnetic = !0), (s.magneticCorner = n.corner), t.preventDefault(); 1707 } 1708 if ( 1709 (null == a.dragPage && 1710 null != s && 1711 0 == n.isInside && 1712 1 == s.magnetic && 1713 ((s.pendingPoint = n), (s.animateToReset = !0), (a.corner = s.magneticCorner), a.animatePage(s), (s.pendingPoint = null), (s.magnetic = !1), (s.magneticCorner = null)), 1714 1 == a.isPanning && null == a.dragPage && 1 == a.contentProvider.zoomScale) 1715 ) { 1716 var h = n.x - a.lastPos; 1717 performance.now(), 1718 a.lastTime, 1719 Math.abs(h) > a.swipe_threshold && (h < 0 ? a.next() : a.prev(), (a.drag = p.none), (a.isPanning = !1), t.preventDefault()), 1720 (a.lastPos = n.x), 1721 (a.lastTime = performance.now()); 1722 } 1723 } 1724 } 1725 }, 1726 c = function (t) { 1727 if ( 1728 (null != t.touches && 1729 0 == t.touches.length && 1730 (a.contentProvider.zoomScale, 1731 1 == a.zoomDirty && 1732 ((a.previewObject.contentProvider.zoomScale = d.limitAt(a.previewObject.contentProvider.zoomScale * a.lastScale, 1, a.previewObject.contentProvider.maxZoom)), 1733 (a.previewObject.zoomValue = 1 * a.previewObject.contentProvider.zoomScale), 1734 a.previewObject.resize(), 1735 (a.zoomDirty = !1)), 1736 a.wrapper.css({ transform: "" }), 1737 (a.lastScale = null), 1738 (a.startTouches = null)), 1739 (a.isPanning = !1), 1740 !(null != t.touches && t.touches.length > 1) && !0 !== a.skipDrag) 1741 ) { 1742 var n = a.eventToPoint(t); 1743 a.dragPage && 1744 (t.preventDefault(), 1745 (a.dragPage.pendingPoint = n), 1746 n.x == a.startPoint.x && n.y == a.startPoint.y && 1 == n.isInside 1747 ? a.corner == e.CORNERS.BR || a.corner == e.CORNERS.TR 1748 ? (r(n), !0 !== a.dragPage.isFlipping && a.next()) 1749 : (a.corner != e.CORNERS.BL && a.corner != e.CORNERS.TL) || (r(n), !0 !== a.dragPage.isFlipping && a.prev()) 1750 : !0 !== a.dragPage.isFlipping && (n.distance > n.fullWidth / 2 ? (n.x > n.fullWidth / 2 ? a.prev() : a.next()) : ((a.dragPage.animateToReset = !0), a.animatePage(a.dragPage))), 1751 a.dragPage && ((a.dragPage.pendingPoint = null), (a.dragPage.magnetic = !1))), 1752 (a.drag = p.none); 1753 } 1754 }, 1755 u = function (t) { 1756 var n = a.eventToPoint(t), 1757 i = t.srcElement || t.originalTarget; 1758 (a.dragPage && a.dragPage.magnetic) || 1759 (a.wrapper[0].contains(t.target) && 1760 1 == a.contentProvider.zoomScale && 1761 n.x == a.startPoint.x && 1762 n.y == a.startPoint.y && 1763 n.isInsidePage && 1764 a.startPoint.page == n.page && 1765 !n.page.isFlipping && 1766 "A" !== i.nodeName && 1767 (0 == a.startPoint.page.side ? ((a.corner = e.CORNERS.TL), a.prev(), (a.startPoint.page = null)) : ((a.corner = e.CORNERS.TR), a.next(), (a.startPoint.page = null)), (a.isPanning = !1))); 1768 }, 1769 h = function (t) { 1770 if ( 1771 (null != t.touches && 2 == t.touches.length && null == a.startTouches && ((a.startTouches = d.getTouches(t)), (a.lastScale = 1)), 1772 !((null != t.touches && t.touches.length > 1) || (null == t.touches && 0 !== t.button))) 1773 ) { 1774 var n, 1775 o = a.eventToPoint(t); 1776 (a.startPoint = o), 1777 (a.left = a.left || 0), 1778 (a.top = a.top || 0), 1779 (a.isPanning = !0),
1780 (a.lastPos = o.x), 1781 (a.lastTime = performance.now()), 1782 !0 !== a.skipDrag && 1783 (1 != o.isInside || 1784 i(a) || 1785 ((a.startPoint = o), 1786 (a.drag = o.drag), 1787 (a.dragPage = o.page), 1788 (a.corner = o.corner), 1789 S(a.corner), 1790 (n = a.dragPage).parent.container.find(".pdff-folding").removeClass("pdff-folding"), 1791 n.element.addClass("pdff-folding"), 1792 o.page.isHard || o.page.updatePoint(o, a), 1793 "0" == o.page.name 1794 ? a.shadow.css({ width: "50%", left: a.direction == e.DIRECTION.RTL ? 0 : "50%", transitionDelay: "" }) 1795 : o.page.name == Math.ceil(a.pageCount / 2) - 1 && a.shadow.css({ width: "50%", left: a.direction == e.DIRECTION.RTL ? "50%" : 0, transitionDelay: "" }))); 1796 } 1797 }, 1798 f = function (e) { 1799 var t = 0; 1800 null != e.wheelDelta ? (t = e.wheelDelta / 120) : null != e.detail && (t = -e.detail / 3); 1801 var n = a.contentProvider.zoomScale, 1802 i = a.contentProvider.maxZoom; 1803 if (t && ((t > 0 && n < i) || (t < 0 && n > 1))) { 1804 e.stopPropagation(), e.preventDefault(); 1805 var o = a.eventToPoint(e), 1806 r = a.eventToPoint(e), 1807 s = a.container.width() / 2, 1808 l = a.container.height() / 2 - 23; 1809 a.previewObject.zoom(t); 1810 var c = a.contentProvider.zoomScale; 1811 if (n !== c) { 1812 var d = c / n; 1813 1 == c ? ((a.left = 0), (a.top = 0)) : ((a.left *= d), (a.top *= d)); 1814 var u = (o.raw.x - s) * d, 1815 p = (o.raw.y - l) * d; 1816 (r.raw.x = s + u), (r.raw.y = l + p), (a.startPoint = r), a.pan(o); 1817 var h = a.dragPage || o.page; 1818 null == a.dragPage && 1819 null != h && 1820 1 == o.isInside && 1821 1 == h.magnetic && 1822 ((h.pendingPoint = o), (h.animateToReset = !0), (a.corner = h.magneticCorner), a.animatePage(h), (h.pendingPoint = null), (h.magnetic = !1), (h.magneticCorner = null)); 1823 } 1824 } 1825 }, 1826 g = a.container[0], 1827 m = a.stage[0]; 1828 g && 1829 (m.addEventListener("mousemove", l, !1), 1830 m.addEventListener("touchmove", l, !1), 1831 m.addEventListener("mousedown", h, !1), 1832 m.addEventListener("click", u, !1), 1833 m.addEventListener("mouseup", c, !1), 1834 m.addEventListener("touchend", c, !1), 1835 m.addEventListener("touchstart", h, !1), 1836 1 == a.options.scrollWheel && (m.addEventListener("mousewheel", f, !1), m.addEventListener("DOMMouseScroll", f, !1))), 1837 (this.dispose = function () { 1838 m.removeEventListener("mousemove", l, !1), 1839 m.removeEventListener("touchmove", l, !1), 1840 m.removeEventListener("mousedown", h, !1), 1841 m.removeEventListener("click", u, !1), 1842 m.removeEventListener("mouseup", c, !1), 1843 m.removeEventListener("touchend", c, !1), 1844 m.removeEventListener("touchstart", h, !1), 1845 1 == a.options.scrollWheel && (m.removeEventListener("mousewheel", f, !1), m.removeEventListener("DOMMouseScroll", f, !1)), 1846 (a.updatePageCallback = null), 1847 (a.flipCallback = null), 1848 (a.animateF = null), 1849 a.stage.remove(); 1850 }); 1851 } 1852 return ( 1853 B(o, {}), 1854 (o.prototype = { 1855 add: function (e) { 1856 e instanceof W ? this.container.append(t(e.element)) : this.container.append(t(e));
1857 }, 1858 pan: function (e) { 1859 var t = this.startPoint, 1860 n = this.contentProvider.zoomScale, 1861 i = this.left + (e.raw.x - t.raw.x), 1862 o = this.top + (e.raw.y - t.raw.y); 1863 (this.left = Math.round(P(i, -this.shiftWidth, this.shiftWidth))), 1864 (this.top = Math.round(P(o, -this.shiftHeight, this.shiftHeight))), 1865 1 == n && ((this.left = 0), (this.top = 0)), 1866 (this.startPoint = e), 1867 this.stage.css({ transform: "translate3d(" + this.left + "px," + this.top + "px,0)" }); 1868 }, 1869 getPageByNumber: function (e) { 1870 for (var t, n = M(this) ? (D(this) ? e + 1 : e) : Math.floor((e - 1) / 2), i = 0; i < this.pages.length; i++) n == parseInt(this.pages[i].name, 10) && (t = this.pages[i]); 1871 return t; 1872 }, 1873 getPageSide: function (t) { 1874 var n = this.direction == e.DIRECTION.RTL, 1875 i = this.getPageByNumber(t); 1876 if (null != i) return M(this) ? (n ? i.front : i.back) : t % 2 == 0 ? (n ? i.back : i.front) : n ? i.front : i.back; 1877 }, 1878 getContentLayer: function (e) { 1879 var t = this.getPageSide(e); 1880 return null == t ? null : t.contentLayer; 1881 }, 1882 }), 1883 (o.prototype.init = function (e) { 1884 var n = this; 1885 (n.stage = t(f.div, { class: "ppdff-flipbook-stage" })), 1886 (n.wrapper = t(f.div, { class: "ppdff-flipbook-wrapper" })), 1887 (n.shadow = t(f.div, { class: "ppdff-flipbook-shadow" })), 1888 n.container.append(n.stage), 1889 n.stage.append(n.wrapper), 1890 n.wrapper.append(n.shadow), 1891 n.createStack(e); 1892 }), 1893 (o.prototype.createStack = function (e) { 1894 for (var t = "red,green,blue,yellow,orange,black".split(","), n = 0; n < this.stackCount; n++) { 1895 (e.angles = [, this.stackCount - n]), (e.stiffness = (this.stackCount - n) / 100); 1896 var i = new W(e); 1897 (i.angles[1] = 180), (i.index = n), (i.parent = this), (i.textureReady = !1), (i.textureRequested = !1), this.wrapper.append(i.element), (i.isFlipping = !1), this.pages.push(i), (i.color = t[n]); 1898 } 1899 this.children = this.pages; 1900 }), 1901 (o.prototype.isPageHard = function (e) { 1902 return d.isHardPage(this.hardConfig, e, this.pageCount, M(this)); 1903 }), 1904 (o.prototype.setDuration = function (e) { 1905 this.duration = e; 1906 }), 1907 (o.prototype.moveBy = function (e) { 1908 var t = this._activePage + e; 1909 (t = P(t, this.startPage, this.endPage)), this.gotoPage(t); 1910 }), 1911 (o.prototype.next = function (t) { 1912 null == t && (t = this.direction == e.DIRECTION.RTL ? -this.pageMode : this.pageMode), this.moveBy(t); 1913 }), 1914 (o.prototype.prev = function (t) { 1915 null == t && (t = this.direction == e.DIRECTION.RTL ? this.pageMode : -this.pageMode), this.moveBy(t); 1916 }), 1917 (o.prototype.eventToPoint = function (n) { 1918 n = I(n); 1919 var i = this.wrapper, 1920 o = this.pages, 1921 a = this.pageWidth, 1922 r = this.fullWidth, 1923 s = this.height, 1924 l = (t(window), { x: n.clientX, y: n.clientY }), 1925 c = l.x - i[0].getBoundingClientRect().left, 1926 d = l.y - i[0].getBoundingClientRect().top; 1927 (l.x = l.x - this.container[0].getBoundingClientRect().left), (l.y = l.y - this.container[0].getBoundingClientRect().top); 1928 var u, 1929 h = this.drag == p.none ? (c < a ? c : r - c) : this.drag == p.left ? c : r - c, 1930 f = c < a ? o[this.stackCount / 2 - 1] : o[this.stackCount / 2], 1931 g = c < this.foldSense ? p.left : c > r - this.foldSense ? p.right : p.none, 1932 m = c, 1933 v = d, 1934 b = s, 1935 w = r, 1936 y = this.foldSense, 1937 P = e.CORNERS; 1938 return ( 1939 (u = 1940 m >= 0 && m < y 1941 ? v >= 0 && v <= y 1942 ? P.TL 1943 : v >= b - y && v <= b 1944 ? P.BL 1945 : v > y && v < b - y 1946 ? P.L 1947 : P.NONE 1948 : m >= w - y && m <= w 1949 ? v >= 0 && v <= y 1950 ? P.TR 1951 : v >= b - y && v <= b 1952 ? P.BR 1953 : v > y && v < b - y 1954 ? P.R 1955 : P.NONE 1956 : P.NONE), 1957 { 1958 isInsidePage: m >= 0 && m <= w && v >= 0 && v <= b, 1959 isInside: u !== P.NONE && u !== P.L && u !== P.R, 1960 x: c, 1961 y: d, 1962 fullWidth: r,
1963 rawDistance: r - c, 1964 distance: h, 1965 page: f, 1966 drag: g, 1967 foldSense: this.foldSense, 1968 event: n, 1969 raw: l, 1970 corner: u, 1971 } 1972 ); 1973 }), 1974 (o.prototype.gotoPage = function (e) { 1975 (e = parseInt(e, 10)), (this._activePage = e), 1 == this.autoPlay && this.previewObject.setAutoPlay(this.autoPlay), this.updatePage(e), this && this.thumblist && this.thumblist.review && this.thumblist.review(); 1976 }), 1977 (o.prototype.refresh = function () { 1978 this.updatePage(this._activePage), null != this.flipCallback && this.flipCallback(); 1979 }), 1980 (o.prototype.updatePage = function (n) { 1981 var i = this.direction == e.DIRECTION.RTL, 1982 o = M(this), 1983 a = (L(n), o ? 1 : 2); 1984 (n = Math.floor(n / a)), i && (n = this.pageCount / a - n); 1985 var s = this.oldBaseNumber || 0, 1986 l = this.pageCount / a, 1987 c = this.stackCount, 1988 d = Math.floor(c / 2); 1989 s > n ? ((this.children[c - 1].skipFlip = !0), this.children.unshift(this.children.pop())) : s < n && ((this.children[0].skipFlip = !0), this.children.push(this.children.shift())); 1990 for (var u = 0; u < c; u++) { 1991 var h = this.children[u]; 1992 s !== n && null != h.currentTween && h.clearTween(!0); 1993 var f, 1994 g = h.side, 1995 m = n - d + u; 1996 i && (m = o ? this.pageCount - m : Math.floor(this.pageCount / 2) - m - 1); 1997 var v = h.name; 1998 (h.isHard = this.isPageHard(m)), 1999 h.isHard ? h.element.addClass("pdff-hard-page") : (h.element.removeClass("pdff-hard-page"), h.front.css({ display: "block" }), h.back.css({ display: "block" })), 2000 0 == m || m == l ? h.element.addClass("pdff-cover-page") : h.element.removeClass("pdff-cover-page"), 2001 t(h.element).attr("pageNumber") != m && (h.front.contentLayer.empty(), h.back.contentLayer.empty()), 2002 t(h.element).attr("pageNumber", m), 2003 (h.isEdge = !1), 2004 0 == u || u == c - 1 || (h.isEdge = !1), 2005 (f = u < d ? p.left : p.right), 2006 0 == h.isFlipping && 2007 (f !== g && 0 == h.skipFlip 2008 ? (this.animatePage(h), null != this.preFlipCallback && this.preFlipCallback()) 2009 : ((h.skipFlip = !1), h.element.removeClass("pdff-flipping pdff-quick-turn pdff-folding pdff-left-side pdff-right-side"), h.element.addClass(u < d ? "pdff-left-side" : "pdff-right-side"), (h.side = f))), 2010 (h.visible = o ? (i ? u < d || h.isFlipping : u >= d || h.isFlipping) : (m >= 0 && m < l) || (o && m == l)), 2011 null != this.requestPage && 2012 1 == h.visible && 2013 ((h.name = m.toString()), 2014 h.name != v && 2015 ((h.backTextureLoaded = !1), 2016 (h.frontTextureLoaded = !1), 2017 (h.backPageStamp = "-1"), 2018 (h.frontPageStamp = "-1"), 2019 (h.thumbLoaded = !1), 2020 h.front.contentLayer.html(""), 2021 h.back.contentLayer.html(""), 2022 h.frontImage(r.textureLoadFallback), 2023 h.backImage(r.textureLoadFallback), 2024 this.requestPage())), 2025 (h.oldDepth = h.depth), 2026 h.updateCSS({ display: 1 == h.visible ? "block" : "none", zIndex: 6 + (u < d ? u - d : d - u), transform: "" }), 2027 null == h.pendingPoint && 0 == h.isFlipping && h.resetCSS(); 2028 } 2029 0 == TWEEN.getAll().length && clearInterval(this.animate), t(".quick-hint").html(n), (this.oldBaseNumber = n), this.updatePageCallback && this.updatePageCallback(); 2030 }), 2031 (o.prototype.animatePage = function (e) { 2032 e.element.addClass("pdff-flipping"), (e.isFlipping = !0), null != this.animate && clearInterval(this.animate), (this.animate = setInterval(this.animateF, 30)), e.tween(e.pendingPoint); 2033 }), 2034 o 2035 ); 2036 })(), 2037 V = (function (n) { 2038 function i(i, o, a) { 2039 n.call(this, a); 2040 var r = this; 2041 (r.type = "FlipBook"), 2042 (r.container = i), 2043 (r.options = a), 2044 (r.options.source = o), 2045 (r.contentSource = o), 2046 null != a.height && a.height.toString().indexOf("%") < 0 ? r.container.height(Math.min(a.height, t(window).height())) : r.container.height(a.height), 2047 r.options.isLightBox && window.dfLightBox.closeButton.addClass(r.options.icons.close), 2048 r.options.pageSize == e.PAGE_SIZE.DOUBLEINTERNAL && 2049 ((Array === r.contentSource.constructor || Array.isArray(r.contentSource) || r.contentSource instanceof Array) && (r.options.singlePageMode = e.SINGLE_PAGE_MODE.ZOOM), r.container.addClass("pdff-double-internal")), 2050 r.options.isLightBox || null == r.container.attr("id") || (r.options.id = r.container.attr("id")), 2051 !0 !== r.options.parsed && null != r.options.links && e.parseLinks(r.options.links); 2052 var s = (r.webgl = 1 == a.webgl && 1 == z); 2053 if ( 2054 (i.addClass("pdff-container pdff-loading pdff-init pdff
2054-floating pdff-controls-" + r.options.controlsPosition), 2055 1 == r.options.transparent && i.addClass("pdff-transparent"), 2056 r.options.direction == e.DIRECTION.RTL && i.addClass("pdff-rtl"), 2057 (r.container.info = t(f.div, { class: "loading-info" }).appendTo(r.container).html("Loading...")), 2058 (-1 !== c.indexOf("MSIE") || navigator.appVersion.indexOf("Trident/") > 0 || (N && !A)) && (r.options.webgl = !1), 2059 c.match(/msie\s[5-9]/i)) 2060 ) 2061 return ( 2062 r.container.info.html("Your browser (Internet Explorer) is out of date to run pdfflip Flipbook Plugin. <br><a href='http://browsehappy.com/'>Upgrade to a new one</a>").addClass("pdff-old-browser"), 2063 i.removeClass("pdff-loading"), 2064 r 2065 ); 2066 var l = null == a.backgroundImage || "" == a.backgroundImage ? "" : "url('" + a.backgroundImage + "')"; 2067 return r.container.css({ position: "relative", overflow: "hidden", backgroundColor: a.backgroundColor, backgroundImage: l }), r.init(s, o), null != r.options.onCreate && r.options.onCreate(r), r; 2068 } 2069 return ( 2070 B(i, n), 2071 (i.prototype.init = function (n) { 2072 var i, 2073 o, 2074 a = this, 2075 s = a.target, 2076 l = a.options; 2077 1 == n 2078 ? ((i = function () { 2079 a.container.css({ minHeight: 300, minWidth: 300 }), 2080 (a.stage = new _(T(a.options, { container: a.container }))), 2081 (a.stage.previewObject = a), 2082 (a.contentProvider = new H( 2083 a.contentSource, 2084 function (i) { 2085 var o = { pageCount: i.pageCount, stackCount: 6, segments: 20, width: i.bookSize.width, height: i.bookSize.height }; 2086 a.checkOpenPage(), 2087 (a.target = s = a.stage.target = new MOCKUP.Book(T(a.options, o), a.stage)), 2088 a.extendtarget(), 2089 j(a.container, a), 2090 (s.ui = a.ui), 2091 (s.container = a.container), 2092 (i.webgl = n), 2093 i.setTarget(a.target), 2094 (s.getContentLayer = function (t) { 2095 var n = s.direction == e.DIRECTION.RTL, 2096 i = a.stage.cssScene.divLeft.element, 2097 o = a.stage.cssScene.divRight.element; 2098 return L(s._activePage), M(s) ? (n ? i : o) : t % 2 == 0 ? (n ? o : i) : n ? i : o; 2099 }), 2100 (s.stage = a.stage), 2101 (s.flipCallback = function () { 2102 if (a.contentProvider) { 2103 a.contentProvider.review("flipCallback"); 2104 var n, 2105 i, 2106 o = L(s._activePage), 2107 r = s.getPageByNumber(o), 2108 l = s.getPageByNumber(o + 1), 2109 c = s.parent.cssScene.divLeft, 2110 d = s.parent.cssScene.divRight; 2111 s.pageMode, 2112 e.PAGE_MODE.SINGLE, 2113 s.direction, 2114 e.DIRECTION.RTL, 2115 null != r && 2116 null != c && 2117 ((n = Math.abs(r.geometry.boundingBox.max.x - r.geometry.boundingBox.min.x)), 2118 (i = Math.abs(r.geometry.boundingBox.max.z - r.geometry.boundingBox.min.z)), 2119 (c.rotation.y = 0.9 * -Math.atan2(i, n)), 2120 (c.position.z = 0.8 * i), 2121 (c.position.x = i / 2.5), 2122 t(c.element).css({ width: n, left: -n / 2 })), 2123 null != l && 2124 null != d && 2125 ((n = Math.abs(l.geometry.boundingBox.max.x - l.geometry.boundingBox.min.x)), 2126 (i = Math.abs(l.geometry.boundingBox.max.z - l.geometry.boundingBox.min.z)), 2127 (d.rotation.y = 0.9 * Math.atan2(i, n)), 2128 (d.position.z = 0.8 * i), 2129 (d.position.x = -i / 2.5), 2130 t(d.element).css({ width: n, left: n / 2 })), 2131 null != a.options.onFlip && a.options.onFlip(a); 2132 } 2133 }), 2134 (s.resize = void a.resize()), 2135 (s.updatePageCallback = function () { 2136 a.ui.update(), a.checkCenter(), (a.stage.renderRequestPending = !0); 2137 }); 2138 var r = t(a.stage.cssScene.divLeft.element), 2139 l = t(a.stage.cssScene.divRight.element); 2140 (s.preFlipCallback = function () { 2141 r.empty(), l.empty(), null != a.options.beforeFlip && a.options.beforeFlip(a), a.playSound(); 2142 }), 2143 t(window).trigger("resize"), 2144 r.css({ width: i.bookSize.width, height: i.bookSize.height, left: -i.bookSize.width / 2 }), 2145 l.css({ width: i.bookSize.width, height: i.bookSize.height, left: i.bookSize.width / 2 }), 2146 (s.ease = TWEEN.Easing.Cubic.InOut), 2147 (s.contentProvider = i), 2148 (s.duration = a.options.duration), 2149 s.gotoPage(s._activePage), 2150 s.flipCallback(), 2151 null != a.options.onReady && a.options.onReady(a); 2152 }, 2153 l, 2154 a 2155 )); 2156 }), 2157 (o = function () { 2158 (MOCKUP.defaults.anisotropy = 0), 2159 (MOCKUP.defaults.groundTexture = "blank"), 2160 (THREE.skipPowerOfTwo = !0), 2161 (function () { 2162 (_ = (function (e) { 2163 function n(n) { 2164 n = n || {}; 2165 var i = this; 2166 e.call(this, n), 2167 (i.options = n), 2168 (i.canvas = t(i.renderer.domElement).addClass("pdff-3dcanvas")), 2169 (i.container = n.container), 2170 i.container.append(i.canvas), 2171 (i.type = "PreviewStage"), 2172 (i.mouse = new THREE.Vector2()), 2173 (i.raycaster = new THREE.Raycaster()
2173), 2174 i.camera.position.set(0, 20, 600), 2175 i.camera.lookAt(new THREE.Vector3(0, 0, 0)), 2176 i.spotLight.position.set(-220, 330, 550), 2177 (i.spotLight.castShadow = !F && n.webglShadow), 2178 i.spotLight.shadow && (i.spotLight.shadow.bias = -8e-4), 2179 (i.spotLight.intensity = g(n.spotLightIntensity, r.spotLightIntensity)), 2180 (i.ambientLight.color = new THREE.Color(g(n.ambientLightColor, r.ambientLightColor))), 2181 (i.ambientLight.intensity = g(n.ambientLightIntensity, r.ambientLightIntensity)); 2182 var o = new THREE.ShadowMaterial(); 2183 (o.opacity = g(n.shadowOpacity, r.shadowOpacity)), 2184 (i.ground.material = o), 2185 (i.ground.position.z = -2), 2186 (i.orbitControl.maxAzimuthAngle = 0), 2187 (i.orbitControl.minAzimuthAngle = 0), 2188 (i.orbitControl.minPolarAngle = 1.57), 2189 (i.orbitControl.maxPolarAngle = 1.57), 2190 (i.orbitControl.mouseButtons.ORBIT = THREE.MOUSE.RIGHT), 2191 (i.orbitControl.mouseButtons.PAN = -1), 2192 (i.orbitControl.maxDistance = 5e3), 2193 (i.orbitControl.minDistance = 50), 2194 (i.orbitControl.noZoom = !0), 2195 (i.selectiveRendering = !0), 2196 (i.orbitControl.zoomSpeed = 5), 2197 (i.orbitControl.keyPanSpeed = 0), 2198 i.orbitControl.center.set(0, 0, 0), 2199 i.orbitControl.update(), 2200 (i.swipe_threshold = F ? 15 : 20); 2201 var a = (i.cssRenderer = new THREE.CSS3DRenderer()); 2202 t(a.domElement).css({ position: "absolute", top: 0, pointerEvents: "none" }).addClass("pdff-3dcanvas pdff-csscanvas"), i.container[0].appendChild(a.domElement); 2203 var s = (i.cssScene = new THREE.Scene()), 2204 l = document.createElement("div"); 2205 l.className = "pdff-page-content pdff-page-content-left"; 2206 var c = document.createElement("div"); 2207 c.className = "pdff-page-content pdff-page-content-right"; 2208 var u = (s.divLeft = new THREE.CSS3DObject(l)), 2209 p = (s.divRight = new THREE.CSS3DObject(c)); 2210 function f() { 2211 i.renderRequestPending = !0; 2212 } 2213 s.add(u), 2214 s.add(p), 2215 (i.resizeCallback = function () { 2216 a.setSize(i.canvas.width(), i.canvas.height()); 2217 }), 2218 window.addEventListener(h.move, f, !1), 2219 window.addEventListener("keyup", f, !1), 2220 (i.dispose = function () { 2221 i.clearChild(), 2222 i.render(), 2223 window.removeEventListener(h.move, f, !1), 2224 1 == i.options.scrollWheel && (i.renderer.domElement.removeEventListener("mousewheel", m, !1), i.renderer.domElement.removeEventListener("DOMMouseScroll", m, !1)), 2225 window.removeEventListener("keyup", f, !1), 2226 i.renderer.domElement.removeEventListener("mousemove", v, !1), 2227 i.renderer.domElement.removeEventListener("touchmove", v, !1), 2228 i.renderer.domElement.removeEventListener("mousedown", b, !1), 2229 i.renderer.domElement.removeEventListener("touchstart", b, !1), 2230 i.renderer.domElement.removeEventListener("mouseup", w, !1), 2231 i.renderer.domElement.removeEventListener("touchend", w, !1), 2232 i.canvas.remove(), 2233 a.domElement.parentNode.removeChild(a.domElement), 2234 (a = null), 2235 (i.renderCallback = null), 2236 (i.renderCallback = null), 2237 i.orbitControl.dispose(), 2238 (i.orbitControl = null), 2239 i.renderer.dispose(), 2240 i.cancelRAF(); 2241 }), 2242 (i.renderCallback = function () { 2243 TWEEN.getAll().length > 0 && (i.renderRequestPending = !0), TWEEN.update(), a.render(s, i.camera); 2244 }); 2245 var m = function (e) { 2246 var t = 0; 2247 if ((null != e.wheelDelta ? (t = e.wheelDelta) : null != e.detail && (t = -e.detail), t)) { 2248 var n = i.previewObject.contentProvider.zoomScale; 2249 ((t > 0 && 1 == n) || (t < 0 && n > 1)) && e.preventDefault(), i.previewObject.zoom(t > 0 ? 1 : -1); 2250 } 2251 f(); 2252 }, 2253 v = function (e) { 2254 if ( 2255 ((i.renderRequestPending = !0), 2256 (e = I(e)), 2257 i.isMouseDown && 0 != e.movementX && 0 != e.movementY && (i.isMouseMoving = !0), 2258 null != e.touches && 2 == e.touches.length && null != i.startTouches) 2259 ) { 2260 i.zoomDirty = !0; 2261 var t = d.getVectorAvg(d.getTouches(e, i.container.offset())), 2262 n = d.calculateScale(i.startTouches, d.getTouches(e)); 2263 return i.lastScale, i.previewObject.contentProvider.zoomScale, t.x, t.y, (i.camera.position.z = i.originalZ / n), (i.lastScale = n), (i.lastZoomCenter = t), void e.preventDefault(); 2264 } 2265 if (1 == i.isMouseDown && 1 == i.previewObject.contentProvider.zoomScale) { 2266 var o = e.pageX - i.lastPos; 2267 performance.now(), 2268 i.lastTime, 2269 Math.abs(o) > i.swipe_threshold && (o < 0 ? i.target.next() : i.target.prev(), e.preventDefault(), (i.isMouseDown = !1)), 2270 (i.lastPos
2270= e.pageX), 2271 (i.lastTime = performance.now()); 2272 } 2273 }, 2274 b = function (e) { 2275 null != (e = I(e)).touches && 2 == e.touches.length && null == i.startTouches && ((i.startTouches = d.getTouches(e)), (i.lastScale = 1), (i.originalZ = 1 * i.camera.position.z)), 2276 document.activeElement.blur(), 2277 (i.mouseValue = e.pageX + "," + e.pageY), 2278 (i.isMouseMoving = !1), 2279 (i.isMouseDown = !0), 2280 (i.lastPos = e.pageX), 2281 (i.lastTime = performance.now()); 2282 }, 2283 w = function (e) { 2284 null != (e = I(e)).touches && 2285 0 == e.touches.length && 2286 (i.previewObject.contentProvider.zoomScale, 2287 1 == i.zoomDirty && 2288 ((i.previewObject.contentProvider.zoomScale = d.limitAt(i.previewObject.contentProvider.zoomScale * i.lastScale, 1, i.previewObject.contentProvider.maxZoom)), 2289 (i.previewObject.zoomValue = 1 * i.previewObject.contentProvider.zoomScale), 2290 i.previewObject.resize(), 2291 (i.zoomDirty = !1)), 2292 (i.lastScale = null), 2293 (i.startTouches = null)), 2294 (null != e.touches && e.touches.length > 1) || 2295 (function (e) { 2296 if (((i.isMouseDown = !1), 0 !== e.button)) return this; 2297 var n = e.pageX + "," + e.pageY; 2298 if (i.isMouseMoving); 2299 else if (n == i.mouseValue) { 2300 (e = e || window.event), (e = t.event.fix(e)); 2301 var o = i.mouse, 2302 a = i.raycaster; 2303 (o.x = (e.offsetX / i.canvas.innerWidth()) * 2 - 1), (o.y = 1 - (e.offsetY / i.canvas.innerHeight()) * 2), a.setFromCamera(o, i.camera); 2304 var r = a.intersectObjects(i.target instanceof MOCKUP.Bundle ? i.target.children : [i.target], !0); 2305 if (r.length > 0) { 2306 var s, 2307 l = 0; 2308 do { 2309 (s = null != r[l] ? r[l].object : null), l++; 2310 } while ((s instanceof THREE.BoxHelper || !(s instanceof MOCKUP.Paper) || 1 == s.isFlipping) && l < r.length); 2311 null != s.userData.object || (s.angles[1] > 90 ? 1 != s.isEdge && i.target.next() : 1 != s.isEdge && i.target.prev()); 2312 } 2313 } 2314 })(e); 2315 }; 2316 return ( 2317 i.renderer.domElement.addEventListener("mousemove", v, !1), 2318 i.renderer.domElement.addEventListener("touchmove", v, !1), 2319 i.renderer.domElement.addEventListener("mousedown", b, !1), 2320 i.renderer.domElement.addEventListener("touchstart", b, !1), 2321 i.renderer.domElement.addEventListener("mouseup", w, !1), 2322 i.renderer.domElement.addEventListener("touchend", w, !1), 2323 1 == i.options.scrollWheel && (i.renderer.domElement.addEventListener("mousewheel", m, !1), i.renderer.domElement.addEventListener("DOMMouseScroll", m, !1)), 2324 t(i.renderer.domElement).css({ display: "block" }), 2325 t(window).trigger("resize"), 2326 this 2327 ); 2328 } 2329 return ( 2330 B(n, e), 2331 (n.prototype.width = function () { 2332 return this.container.width(); 2333 }), 2334 (n.prototype.height = function () { 2335 return this.container.height(); 2336 }), 2337 n 2338 ); 2339 })(MOCKUP.Stage)), 2340 (MOCKUP.PreviewStage = _); 2341 var n = (function (t) { 2342 function n(e, n) { 2343 ((e = e || {}).folds = 1), 2344 t.call(this, e, n), 2345 (this.angle = 0), 2346 (this.isFlipping = !1), 2347 (this.material.materials[5].transparent = !0), 2348 (this.material.materials[4].transparent = !0),
2349 (this.type = "BookPaper"); 2350 } 2351 return ( 2352 B(n, t), 2353 (n.prototype.tween = function (t, n) { 2354 var i = this; 2355 i.originalStiff = i.stiffness; 2356 var o = i.newStiffness, 2357 a = M(i.parent), 2358 r = n - t, 2359 s = t > 90, 2360 l = i.parent.direction == e.DIRECTION.RTL; 2361 (i.init = { angle: t, angle2: t < 90 ? 0 : 180, stiff: i.originalStiff, index: (s && !l) || (!s && l) ? 1 : 0 }), 2362 (i.first = { angle: t + r / 4, angle2: 90, stiff: i.originalStiff, index: (s && !l) || (!s && l) ? 1 : 0.25 }), 2363 (i.mid = { angle: t + (2 * r) / 4, angle2: t < 90 ? 135 : 45, stiff: i.newStiffness, index: 0.5 }), 2364 (i.mid2 = { angle: t + (3 * r) / 4, angle2: t < 90 ? 180 : 0, stiff: i.newStiffness, index: (s && !l) || (!s && l) ? 0.25 : 1 }), 2365 (i.end = { angle: n, angle2: t < 90 ? 180 : 0, stiff: i.newStiffness, index: (s && !l) || (!s && l) ? 0 : 1 }), 2366 (i.isFlipping = !0), 2367 a && ((!s && !l) || (s && l)) && ((i.material.materials[5].opacity = i.material.materials[4].opacity = 0), (i.castShadow = !1)), 2368 (i.currentTween = new TWEEN.Tween(i.init) 2369 .to( 2370 { 2371 angle: [i.first.angle, i.mid.angle, i.mid2.angle, i.end.angle], 2372 angle2: [i.first.angle2, i.mid.angle2, i.mid2.angle2, i.end.angle2], 2373 stiff: [i.first.stiff, i.mid.stiff, i.mid2.stiff, i.end.stiff], 2374 index: [i.first.index, i.mid.index, i.mid2.index, i.end.index], 2375 }, 2376 i.parent.duration 2377 ) 2378 .onUpdate(function (e) { 2379 var t; 2380 (t = this), 2381 (i.angles[1] = t.angle), 2382 (i.angles[4] = i.isHard ? t.angle : t.angle2), 2383 1 == i.isHard ? (i.stiffness = 0) : ((i.stiffness = (t.stiff / (o + 1e-5)) * (i.newStiffness + 1e-5)), (i.stiffness = isNaN(i.stiffness) ? 0 : t.stiff)), 2384 a && ((i.material.materials[5].opacity = i.material.materials[4].opacity = t.index), (i.castShadow = t.index > 0.5)), 2385 i.updateAngle(!0); 2386 }) 2387 .easing(TWEEN.Easing.Sinusoidal.Out) 2388 .onComplete(function (e) { 2389 (i.stiffness = i.newStiffness), 2390 i.updateAngle(), 2391 (i.material.materials[5].opacity = i.material.materials[4].opacity = 1), 2392 (i.castShadow = !0), 2393 (i.isFlipping = !1), 2394 i.parent && i.parent.refresh && i.parent.refresh();
2395 }) 2396 .start()); 2397 }), 2398 n 2399 ); 2400 })(MOCKUP.FlexBoxPaper); 2401 MOCKUP.BookPaper = n; 2402 var i = (function (t) { 2403 function n(n, i) { 2404 ((n = n || {}).segments = n.segments || 50), 2405 (this.pageCount = n.pageCount), 2406 (this.height = n.height), 2407 (this.width = n.width), 2408 (this.pageCount = 1 == this.pageCount ? this.pageCount : 2 * Math.ceil(this.pageCount / 2)), 2409 (this.direction = n.direction || e.DIRECTION.LTR), 2410 (this.startPage = 1), 2411 (this.endPage = this.pageCount), 2412 (this.stackCount = n.stackCount || 6), 2413 (this.materials = []), 2414 t.call(this, n, i), 2415 (this.angles = [0, 0, 0, 0, 0, 0]), 2416 (this.stiffness = null == n.stiffness ? 1.5 : n.stiffness), 2417 (this.hardConfig = n.hard), 2418 (this._activePage = n.openPage || this.startPage), 2419 this.createStack(n), 2420 (this.pageMode = n.pageMode || (F || this.pageCount <= 2 ? e.PAGE_MODE.SINGLE : e.PAGE_MODE.DOUBLE)), 2421 (this.singlePageMode = n.singlePageMode || (F ? e.SINGLE_PAGE_MODE.BOOKLET : e.SINGLE_PAGE_MODE.ZOOM)), 2422 (this.type = "Book"); 2423 } 2424 return ( 2425 B(n, t), 2426 (n.prototype.getPageByNumber = function (e) { 2427 var t = M(this) ? (D(this) ? e + 1 : e) : Math.floor((e - 1) / 2); 2428 return this.getObjectByName(t.toString()); 2429 }), 2430 (n.prototype.isPageHard = function (e) { 2431 return d.isHardPage(this.hardConfig, e, this.pageCount); 2432 }), 2433 (n.prototype.activePage = function (e) { 2434 if (null == e) return this._activePage; 2435 this.gotoPage(e); 2436 }), 2437 (n.prototype.gotoPage = function (e) { 2438 (e = parseInt(e, 10)), 2439 (this._activePage = e), 2440 1 == this.autoPlay && this.previewObject.setAutoPlay(this.autoPlay), 2441 this.updatePage(e), 2442 this && this.thumblist && this.thumblist.review && this.thumblist.review(); 2443 }), 2444 (n.prototype.moveBy = function (e) { 2445 var t = this._activePage
2445+ e; 2446 (t = P(t, this.startPage, this.endPage)), this.gotoPage(t); 2447 }), 2448 (n.prototype.next = function (t) { 2449 null == t && (t = this.direction == e.DIRECTION.RTL ? -this.pageMode : this.pageMode), this.moveBy(t); 2450 }), 2451 (n.prototype.prev = function (t) { 2452 null == t && (t = this.direction == e.DIRECTION.RTL ? this.pageMode : -this.pageMode), this.moveBy(t); 2453 }), 2454 (n.prototype.updateAngle = function () { 2455 for (var e = this.angles[1], t = this.angles[4] - e, n = this.stackCount, i = 0; i < n; i++) { 2456 var o = this.children[i]; 2457 (o.angles[1] = e + (i * t) / (100 * n)), (o.stiffness = this.stiffness), o.updateAngle(); 2458 } 2459 }), 2460 (n.prototype.refresh = function () { 2461 this.updatePage(this._activePage), null != this.flipCallback && this.flipCallback(); 2462 }), 2463 (n.prototype.updatePage = function (t) { 2464 var n = this.direction == e.DIRECTION.RTL, 2465 i = M(this), 2466 o = (L(t), i ? 1 : 2); 2467 (t = Math.floor(t / o)), n && (t = this.pageCount / o - t); 2468 var a = this.oldBaseNumber || 0, 2469 s = this.pageCount / o, 2470 l = this.stackCount, 2471 c = i ? 0 : (0.5 - Math.abs(s / 2 - t) / s) / this.stiffness, 2472 d = Math.floor(l / 2), 2473 u = !1; 2474 a > t ? ((u = !0), (this.children[l - 1].skipFlip = !0), this.children.unshift(this.children.pop())) : a < t && ((this.children[0].skipFlip = !0), this.children.push(this.children.shift())); 2475 for (var p = 5 / s, h = (p * t) / 2, f = (p * (s - t)) / 2, g = h < f ? f : h, m = 0; m < l; m++) { 2476 var v, 2477 b = this.children[m], 2478 w = (b.color, b.angles[1]), 2479 y = t - d + m; 2480 n && (y = i ? this.pageCount - y : Math.floor(this.pageCount / 2) - y - 1); 2481 var P = (b.isHard = this.isPageHard(y)), 2482 x = b.name; 2483 (b.isEdge = !1), 2484 0 == m ? (b.depth = h < 0.4 ? 0.4 : h) : m == l - 1 ? (b.depth = f < 0.4 ? 0.4 : f) : ((b.depth = 0.4), (b.isEdge = !1)), 2485 1 == b.isFlipping && (b.depth = 0.4), 2486 (b.position.x = 0); 2487 var C = 0.02 * m, 2488 E = 180 - 0.02 * (m - d) + 0.02 * m; 2489 if ( 2490 (m < d 2491 ? ((b.newStiffness = P || 0 == this.stiffness ? 0 : c / (t / s) / 4), (v = C), (b.position.z = g - 0.4 * (-m + d)), 1 == u && (b.position.z -= 0.4)) 2492 : ((v = E), (b.newStiffness = P || 0 == this.stiffness ? 0 : c / (Math.abs(s - t) / s) / 4), (b.position.z = g - 0.4 * (-l + m + d + 1)
2492- b.depth)), 2493 0 == b.isFlipping) 2494 ) 2495 if (Math.abs(w - v) > 20 && 0 == b.skipFlip) { 2496 b.depth = 0.4; 2497 var S = b.stiffness; 2498 (S = w > v ? c / (Math.abs(s - t) / s) / 4 : c / (t / s) / 4), 2499 (b.position.z += 0.4), 2500 (b.stiffness = isNaN(S) ? b.stiffness : S), 2501 b.updateAngle(!0), 2502 (b.targetStiffness = P ? 0 : m < t ? c / (Math.abs(s - t) / s) / 4 : c / (t / s) / 4), 2503 (b.targetStiffness = P ? 0 : isNaN(b.targetStiffness) ? b.stiffness : b.targetStiffness), 2504 (b.isFlipping = !0), 2505 b.tween(w, v), 2506 null != this.preFlipCallback && this.preFlipCallback(); 2507 } else 2508 (b.skipFlip = !1), 2509 (b.newStiffness = isNaN(b.newStiffness) ? 0 : b.newStiffness), 2510 (b.angles[1] == v && b.stiffness == b.newStiffness && b.depth == b.oldDepth) || ((b.angles[1] = b.angles[4] = v), (b.stiffness = b.newStiffness), b.updateAngle(!0)); 2511 (b.visible = i ? (n ? m < d || b.isFlipping : m >= d || b.isFlipping) : (y >= 0 && y < s) || (i && y == s)), 2512 null != this.requestPage && 2513 1 == b.visible && 2514 ((b.name = y.toString()), 2515 b.name != x && 2516 ((b.textureLoaded = !1), 2517 b.frontImage(r.textureLoadFallback), 2518 (b.frontPageStamp = "-1"), 2519 (b.frontTextureLoaded = !1), 2520 (b.thumbLoaded = !1), 2521 b.backImage(r.textureLoadFallback), 2522 (b.backPageStamp = "-1"), 2523 (b.backTextureLoaded = !1), 2524 this.requestPage())), 2525 (b.oldDepth = b.depth); 2526 var k = Math.abs(b.geometry.boundingBox.max.x) < Math.abs(b.geometry.boundingBox.min.x) ? b.geometry.boundingBox.max.x : b.geometry.boundingBox.min.x; 2527 b.position.x = 1 == b.isEdge && 0 == b.isFlipping ? (m < d ? k : -k) : 0; 2528 } 2529 (this.oldBaseNumber = t), null != this.updatePageCallback && this.updatePageCallback(); 2530 }), 2531 (n.prototype.createCover = function (e) { 2532 (e.width = 2 * e.width), (this.cover = new MOCKUP.BiFold(e)), this.add(this.cover); 2533 }), 2534 (n.prototype.createStack = function (e) { 2535 for (var t = "red,green,blue,yellow,orange,black".split(","), n = 0; n < this.stackCount; n++) { 2536 (e.angles = [, this.stackCount - n]), (e.stiffness = (this.stackCount - n) / 100); 2537 var i = new MOCKUP.BookPaper(e); 2538 (i.angles[1] = 180), (i.index = n), i.updateAngle(), (i.textureReady = !1), (i.textureRequested = !1), this.add(i), (i.color = t[n]), (i.position.z = -1 * n); 2539 } 2540 }), 2541 (n.prototype.shininess = function (e) { 2542 if (null == e) return this.mainObject.
2542shininess(); 2543 this.mainObject.shininess(e); 2544 }), 2545 (n.prototype.bumpScale = function (e) { 2546 if (null == e) return this.mainObject.bumpScale(); 2547 this.mainObject.bumpScale(e); 2548 }), 2549 (n.prototype.frontImage = function (e) { 2550 if (null == e) return this.mainObject.frontImage(); 2551 this.mainObject.frontImage(e); 2552 }), 2553 (n.prototype.backImage = function (e) { 2554 if (null == e) return this.mainObject.backImage(); 2555 this.mainObject.backImage(e); 2556 }), 2557 n 2558 ); 2559 })(MOCKUP.Bundle); 2560 MOCKUP.Book = i; 2561 })(), 2562 null != i && i(); 2563 }), 2564 null == window.MOCKUP 2565 ? (a.updateInfo("Loading Interface ..."), 2566 "function" == typeof define && define.amd 2567 ? (requirejs.config({ paths: { three: r.threejsSrc.replace(".js", "") }, shim: { three: { exports: "THREE" } } }), 2568 require(["three"], function (t) { 2569 return ( 2570 (window.THREE = t), 2571 O(r.utilsSrc + "?ver=" + e.version, function () { 2572 o(); 2573 }), 2574 t 2575 ); 2576 })) 2577 : O(r.threejsSrc + "?ver=" + e.version, function () { 2578 O(r.utilsSrc + "?ver=" + e.version, function () { 2579 o(); 2580 }); 2581 })) 2582 : o()) 2583 : (a.contentProvider = new H( 2584 a.contentSource, 2585 function (e) { 2586 var i = { pageCount: e.pageCount, contentSourceType: e.contentSourceType }; 2587 a.checkOpenPage(), 2588 (a.target = s = new G(T(a.options, i), a.container)), 2589 (a.target.previewObject = a), 2590 a.extendtarget(), 2591 j(a.container, a), 2592 (e.webgl = n), 2593 e.setTarget(a.target), 2594 (e.waitPeriod = 2), 2595 (s.ease = TWEEN.Easing.Quadratic.InOut), 2596 (s.duration = a.options.duration), 2597 (s.container = a.container), 2598 (s.updatePageCallback = function () { 2599 a.ui.update(), a.checkCenter(); 2600 }), 2601 (s.resize = void a.resize()), 2602 t(window).trigger("resize"), 2603 (s.flipCallback = function () { 2604 a.contentProvider && (a.contentProvider.review("flipCallback"), null != a.options.onFlip && a.options.onFlip(a)); 2605 }), 2606 (s.preFlipCallback = function () { 2607 null != a.options.beforeFlip && a.options.beforeFlip(a), a.playSound(); 2608 }), 2609 s.gotoPage(s._activePage), 2610 s.flipCallback(), 2611 null != a.options.onReady && a.options.onReady(a); 2612 }, 2613 l, 2614 a 2615 )); 2616 }), 2617 (i.prototype.extendtarget = function () { 2618 var e = this; 2619 (e.target.previewObject = e), 2620 (e.target.reset = function () { 2621 for (var t = 0; t < e.target.children.length; t++) { 2622 var n = e.target.children[t]; 2623 (n.skipFlip = !0), (n.name = "-2"); 2624 } 2625 (e.contentProvider.annotedPage = "-2"), e.target.refresh();
2626 }); 2627 }), 2628 (i.prototype.getURLHash = function () { 2629 if (null != this.options.id) { 2630 var e = "pdfflip-" + (null != this.options.slug ? this.options.slug : this.options.id) + "/"; 2631 null != this.target && null != this.target._activePage && (e += this.target._activePage + "/"), (window.location.hash = e); 2632 } 2633 return window.location.href; 2634 }), 2635 (i.prototype.checkOpenPage = function () { 2636 if (null != this.options.id) { 2637 var e = t("#" + this.options.id); 2638 if (e.length > 0 && null != e.data("page")) { 2639 var n = parseInt(e.data("page"), 10); 2640 isNaN(n) || (this.options.openPage = n); 2641 } 2642 } 2643 }), 2644 (i.prototype.end = function () { 2645 this.target.gotoPage(this.target.endPage); 2646 }), 2647 (i.prototype.gotoPage = function (e) { 2648 this.target.gotoPage(e), null != this.ui && this.ui.update(); 2649 }), 2650 (i.prototype.prev = function () { 2651 this.target.prev(); 2652 }), 2653 (i.prototype.next = function () { 2654 this.target.next(); 2655 }), 2656 (i.prototype.updateInfo = function (e) { 2657 this.container && this.container.info && this.container.info.html && this.container.info.html(e); 2658 }), 2659 i 2660 ); 2661 })(U); 2662 t.fn.extend({ 2663 shelf: function () {}, 2664 flipBook: function (e, n) { 2665 return new V(t(this), e, ((i = n), t.extend(!0, {}, r, i))); 2666 var i; 2667 }, 2668 }); 2669})(pdfflip, jQuery), 2670 (function (e) { 2671 if (((e.URL = e.URL || e.webkitURL), e.Blob && e.URL)) 2672 try { 2673 return void new Blob(); 2674 } catch (e) {} 2675 var t = 2676 e.BlobBuilder || 2677 e.WebKitBlobBuilder || 2678 e.MozBlobBuilder || 2679 (function (e) { 2680 var t = function (e) { 2681 return Object.prototype.toString.call(e).match(/^\[object\s(.*)\]$/)[1]; 2682 }, 2683 n = function () { 2684 this.data = []; 2685 }, 2686 i = function (e, t, n) { 2687 (this.data = e), (this.size = e.length), (this.type = t), (this.encoding = n); 2688 }, 2689 o = n.prototype, 2690 a = i.prototype, 2691 r = e.FileReaderSync, 2692 s = function (e) { 2693 this.code = this[(this.name = e)]; 2694 }, 2695 l = "NOT_FOUND_ERR SECURITY_ERR ABORT_ERR NOT_READABLE_ERR ENCODING_ERR NO_MODIFICATION_ALLOWED_ERR INVALID_STATE_ERR SYNTAX_ERR".split(" "), 2696 c = l.length, 2697 d = e.URL || e.webkitURL || e, 2698 u = d.createObjectURL, 2699 p = d.revokeObjectURL, 2700 h = d, 2701 f = e.btoa, 2702 g = e.atob, 2703 m = e.ArrayBuffer, 2704 v = e.Uint8Array, 2705 b = /^[\w-]+:\/*\[?[\w\.:-]+\]?(?::[0-9]+)?/; 2706 for (i.fake = a.fake = !0; c--; ) s.prototype[l[c]] = c + 1; 2707 return ( 2708 d.createObjectURL || 2709 (h = e.URL = function (e) { 2710 var t, 2711 n = document.createElementNS("http://www.w3.org/1999/xhtml", "a"); 2712 return (n.href = e), "origin" in n || ("data:" === n.protocol.toLowerCase() ? (n.origin = null) : ((t = e.match(b)), (n.origin = t && t[1]))), n; 2713 }), 2714 (h.createObjectURL = function (e) { 2715 var t, 2716 n = e.type; 2717 return (
2718 null === n && (n = "application/octet-stream"), 2719 e instanceof i 2720 ? ((t = "data:" + n), "base64" === e.encoding ? t + ";base64," + e.data : "URI" === e.encoding ? t + "," + decodeURIComponent(e.data) : f ? t + ";base64," + f(e.data) : t + "," + encodeURIComponent(e.data)) 2721 : u 2722 ? u.call(d, e) 2723 : void 0 2724 ); 2725 }), 2726 (h.revokeObjectURL = function (e) { 2727 "data:" !== e.substring(0, 5) && p && p.call(d, e); 2728 }), 2729 (o.append = function (e) { 2730 var n = this.data; 2731 if (v && (e instanceof m || e instanceof v)) { 2732 for (var o = "", a = new v(e), l = 0, c = a.length; l < c; l++) o += String.fromCharCode(a[l]); 2733 n.push(o); 2734 } else if ("Blob" === t(e) || "File" === t(e)) { 2735 if (!r) throw new s("NOT_READABLE_ERR"); 2736 var d = new r(); 2737 n.push(d.readAsBinaryString(e)); 2738 } else 2739 e instanceof i 2740 ? "base64" === e.encoding && g 2741 ? n.push(g(e.data)) 2742 : "URI" === e.encoding 2743 ? n.push(decodeURIComponent(e.data)) 2744 : "raw" === e.encoding && n.push(e.data) 2745 : ("string" != typeof e && (e += ""), n.push(unescape(encodeURIComponent(e)))); 2746 }), 2747 (o.getBlob = function (e) { 2748 return arguments.length || (e = null), new i(this.data.join(""), e, "raw"); 2749 }), 2750 (o.toString = function () { 2751 return "[object BlobBuilder]"; 2752 }), 2753 (a.slice = function (e, t, n) { 2754 var o = arguments.length; 2755 return o < 3 && (n = null), new i(this.data.slice(e, o > 1 ? t : this.data.length), n, this.encoding); 2756 }), 2757 (a.toString = function () { 2758 return "[object Blob]"; 2759 }), 2760 (a.close = function () { 2761 (this.size = 0), delete this.data; 2762 }), 2763 n 2764 ); 2765 })(e); 2766 e.Blob = function (e, n) { 2767 var i = (n && n.type) || "", 2768 o = new t(); 2769 if (e) for (var a = 0, r = e.length; a < r; a++) Uint8Array && e[a] instanceof Uint8Array ? o.append(e[a].buffer) : o.append(e[a]); 2770 var s = o.getBlob(i); 2771 return !s.slice && s.webkitSlice && (s.slice = s.webkitSlice), s; 2772 }; 2773 var n = 2774 Object.getPrototypeOf || 2775 function (e) { 2776 return e.__proto__; 2777 }; 2778 e.Blob.prototype = n(new e.Blob()); 2779 })(window), 2780 (function (e) { 2781 var t, 2782 n = e.Uint8Array, 2783 i = e.HTMLCanvasElement, 2784 o = i && i.prototype, 2785 a = /\s*;\s*base64\s*(?:;|$)/i, 2786 r = "toDataURL"; 2787 n && 2788 (t = new n([ 2789 62, 2790 -1, 2791 -1, 2792 -1, 2793 63, 2794 52, 2795 53, 2796 54, 2797 55, 2798 56, 2799 57, 2800 58, 2801 59, 2802 60, 2803 61, 2804 -1, 2805 -1, 2806 -1, 2807 0, 2808 -1, 2809 -1, 2810 -1, 2811 0, 2812 1, 2813 2, 2814 3, 2815 4, 2816 5, 2817 6, 2818 7, 2819 8, 2820 9, 2821 10, 2822 11, 2823 12, 2824 13, 2825 14, 2826 15, 2827 16, 2828 17, 2829 18, 2830 19, 2831 20, 2832 21, 2833 22, 2834 23, 2835 24, 2836 25, 2837 -1, 2838 -1, 2839 -1, 2840 -1, 2841 -1, 2842 -1, 2843 26, 2844 27, 2845 28, 2846 29, 2847 30, 2848 31, 2849 32, 2850 33, 2851 34, 2852 35, 2853 36, 2854 37, 2855 38, 2856 39, 2857 40, 2858 41, 2859 42, 2860 43, 2861 44, 2862 45, 2863 46, 2864 47, 2865 48, 2866 49, 2867 50, 2868 51, 2869 ])), 2870 i && 2871 !o.toBlob && 2872 ((o.toBlob = function (e, i) { 2873 if ((i || (i = "image/png"), this.mozGetAsFile)) e(this.mozGetAsFile("canvas", i)); 2874 else if (this.msToBlob && /^\s*image\/png\s*(?:$|;)/i.test(i)) e(this.msToBlob()); 2875 else { 2876 var o, 2877 s = Array.prototype.slice.call(arguments, 1), 2878 l = this[r].apply(this, s), 2879 c = l.indexOf(","), 2880 d = l.substring(c + 1), 2881 u = a.test(l.substring(0, c)); 2882 Blob.fake 2883 ? (((o = new Blob()).encoding = u ? "base64" : "URI"), (o.data = d), (o.size = d.length)) 2884 : n && 2885 (o = u 2886 ? new Blob( 2887 [ 2888 (function (e) { 2889 for (var i, o, a = e.length, r = new n(((a / 4) * 3) | 0), s = 0, l = 0, c = [0, 0], d = 0, u = 0; a--; ) 2890 (o = e.charCodeAt(s++)), 2891 255 !== (i = t[o - 43]) && 2892 null != i && 2893 ((c[1] = c[0]), (c[0] = o), (u = (u << 6) | i), 4 == ++d && ((r[l++] = u >>> 16), 61 !== c[1] && (r[l++] = u >>> 8), 61 !== c[0] && (r[l++] = u), (d = 0))); 2894 return r; 2895 })(d), 2896 ], 2897 { type: i } 2898 ) 2899 : new Blob([decodeURIComponent(d)], { type: i })), 2900 e(o); 2901 } 2902 }), 2903 o.toDataURLHD 2904 ? (o.toBlobHD = function () { 2905 r = "toDataURLHD"; 2906 var e = this.toBlob(); 2907 return (r = "toDataURL"), e; 2908 }) 2909 : (o.toBlobHD = o.toBlob)); 2910 })(window), 2911 (function () { 2912 if ( 2913 ("performance" in window == 0 && (window.performance = {}), 2914 (Date.now = 2915 Date.now || 2916 function () { 2917 return new Date().getTime(); 2918 }), 2919 "now" in window.performance == 0) 2920 ) { 2921 var e = window.performance.timing && window.performance.timing.navigationStart ? window.performance.timing.navigationStart : Date.now(); 2922 window.performance.now = function () { 2923 return Date.now() - e; 2924 }; 2925 } 2926 })(), 2927 (function () { 2928 var e, 2929 t, 2930 n = 2931 n || 2932 ((e = []), 2933 { 2934 getAll: function () { 2935 return e; 2936 }, 2937 removeAll: function () { 2938 e = []; 2939 }, 2940 add: function (t) { 2941 e.push(t); 2942 }, 2943 remove: function (t) { 2944 var n = e.indexOf(t); 2945 -1 !== n && e.splice(n, 1); 2946 }, 2947 update: function (t) { 2948 if (0 === e.length) return !1; 2949 var n = 0; 2950 for (t = null != t ? t : window.performance.now(); n < e.length; ) e[n].update(t) ? n++ : e.splice(n, 1); 2951 return !0; 2952 }, 2953 }); 2954 (n.Tween = function (e) { 2955 var t = e, 2956 i = {}, 2957 o = {}, 2958 a = {}, 2959 r = 1e3, 2960 s = 0, 2961 l = !1, 2962 c = !1, 2963 d = !1, 2964 u = 0, 2965 p = null, 2966 h = n.Easing.Linear.None, 2967 f = n.Interpolation.Linear, 2968 g = [], 2969 m = null, 2970 v = !1, 2971 b = null, 2972 w = null, 2973 y = null; 2974 for (var P in e) i[P] = parseFloat(e[P], 10); 2975 (this.to = function (e, t) { 2976 return null != t && (r = t), (o = e), this; 2977 }), 2978 (this.start = function (e) { 2979 n.add(this), (c = !0), (v = !1), (p = null != e ? e : window.performance.now()), (p += u); 2980 for (var r in o) { 2981 if (o[r] instanceof Array) { 2982 if (0 === o[r].length) continue; 2983 o[r] = [t[r]].concat(o[r]); 2984 } 2985 null !== i[r] && ((i[r] = t[r]), i[r] instanceof Array == 0 && (i[r] *= 1), (a[r] = i[r] || 0)); 2986 } 2987 return this; 2988 }), 2989 (this.stop = function () { 2990 return c ? (n.remove(this), (c = !1), null !== y && y.call(t), this.stopChainedTweens(), this) : this; 2991 }), 2992 (this.stopChainedTweens = function () { 2993 for (var e = 0, t = g.length; e < t; e++) g[e].stop(); 2994 }), 2995 (this.complete = function () { 2996 return c ? (n.remove(this), (c = !1), null !== w && w.call(t), this.completeChainedTweens(), this) : this; 2997 }), 2998 (this.completeChainedTweens = function () { 2999 for (var e = 0, t = g.length; e < t; e++) g[e].complete(); 3000 }), 3001 (this.delay = function (e) { 3002 return (u = e), this; 3003 }), 3004 (this.repeat = function (e) { 3005 return (s = e), this; 3006 }), 3007 (this.yoyo = function (e) { 3008 return (l = e), this; 3009 }), 3010 (this.easing = function (e) { 3011 return (h = null == e ? h : e), this; 3012 }), 3013 (this.interpolation = function (e) { 3014 return (f = e), this; 3015 }), 3016 (this.chain = function () { 3017 return (g = arguments), this; 3018 }), 3019 (this.onStart = function (e) { 3020 return (m = e), this; 3021 }), 3022 (this.onUpdate = function (e) { 3023 return (b = e), this; 3024 }), 3025 (this.onComplete = function (e) { 3026 return (w = e), this; 3027 }), 3028 (this.onStop = function (e) { 3029 return (y = e), this; 3030 }), 3031 (this.update = function (e) { 3032 var n, c, y; 3033 if (e < p) return !0; 3034 !1 === v && (null !== m && m.call(t), (v = !0)), (y = h((c = (c = (e - p) / r) > 1 ? 1 : c))); 3035 for (n in o) 3036 if (null !== i[n]) { 3037 var P = i[n] || 0, 3038 x = o[n]; 3039 x instanceof Array ? (t[n] = f(x, y)) : ("string" == typeof x && (x = x.startsWith("+") || x.startsWith("-") ? P + parseFloat(x, 10) : parseFloat(x, 10)), "number" == typeof x && (t[n] = P + (x - P) * y)); 3040 } 3041 if ((null !== b && b.call(t, y), 1 === c)) { 3042 if (s > 0) { 3043 isFinite(s) && s--; 3044 for (n in a) {
3045 if (("string" == typeof o[n] && (a[n] = a[n] + parseFloat(o[n], 10)), l)) { 3046 var C = a[n]; 3047 (a[n] = o[n]), (o[n] = C); 3048 } 3049 i[n] = a[n]; 3050 } 3051 return l && (d = !d), (p = e + u), !0; 3052 } 3053 null !== w && w.call(t); 3054 for (var E = 0, S = g.length; E < S; E++) g[E].start(p + r); 3055 return !1; 3056 } 3057 return !0; 3058 }); 3059 }), 3060 (n.Easing = { 3061 Linear: { 3062 None: function (e) { 3063 return e; 3064 }, 3065 }, 3066 Quadratic: { 3067 In: function (e) { 3068 return e * e; 3069 }, 3070 Out: function (e) { 3071 return e * (2 - e); 3072 }, 3073 InOut: function (e) { 3074 return (e *= 2) < 1 ? 0.5 * e * e : -0.5 * (--e * (e - 2) - 1); 3075 }, 3076 }, 3077 Quartic: { 3078 In: function (e) { 3079 return e * e * e * e; 3080 }, 3081 Out: function (e) { 3082 return 1 - --e * e * e * e; 3083 }, 3084 InOut: function (e) { 3085 return (e *= 2) < 1 ? 0.5 * e * e * e * e : -0.5 * ((e -= 2) * e * e * e - 2); 3086 }, 3087 }, 3088 Sinusoidal: { 3089 In: function (e) { 3090 return 1 - Math.cos((e * Math.PI) / 2); 3091 }, 3092 Out: function (e) { 3093 return Math.sin((e * Math.PI) / 2); 3094 }, 3095 InOut: function (e) { 3096 return 0.5 * (1 - Math.cos(Math.PI * e)); 3097 }, 3098 }, 3099 Cubic: { 3100 In: function (e) { 3101 return e * e * e; 3102 }, 3103 Out: function (e) { 3104 return --e * e * e + 1; 3105 }, 3106 InOut: function (e) { 3107 return (e *= 2) < 1 ? 0.5 * e * e * e : 0.5 * ((e -= 2) * e * e + 2); 3108 }, 3109 }, 3110 }), 3111 (n.Interpolation = { 3112 Linear: function (e, t) { 3113 var i = e.length - 1, 3114 o = i * t, 3115 a = Math.floor(o), 3116 r = n.Interpolation.Utils.Linear; 3117 return t < 0 ? r(e[0], e[1], o) : t > 1 ? r(e[i], e[i - 1], i - o) : r(e[a], e[a + 1 > i ? i : a + 1], o - a); 3118 }, 3119 Bezier: function (e, t) { 3120 for (var i = 0, o = e.length - 1, a = Math.pow, r = n.Interpolation.Utils.Bernstein, s = 0; s <= o; s++) i += a(1 - t, o - s) * a(t, s) * e[s] * r(o, s); 3121 return i; 3122 }, 3123 Utils: { 3124 Linear: function (e, t, n) { 3125 return (t - e) * n + e; 3126 }, 3127 Bernstein: function (e, t) { 3128 var i = n.Interpolation.Utils.Factorial; 3129 return i(e) / i(t) / i(e - t); 3130 }, 3131 Factorial: 3132 ((t = [1]), 3133 function (e) { 3134 var n = 1; 3135 if (t[e]) return t[e]; 3136 for (var i = e; i > 1; i--) n *= i; 3137 return (t[e] = n), n; 3138 }), 3139 CatmullRom: function (e, t, n, i, o) { 3140 var a = 0.5 * (n - e), 3141 r = 0.5 * (i - t), 3142 s = o * o; 3143 return (2 * t - 2 * n + a + r) * (o * s) + (-3 * t + 3 * n - 2 * a - r) * s + a * o + t; 3144 }, 3145 }, 3146 }), 3147 (window.TWEEN = n); 3148 })(), 3149 (pdfflip.createBlob = function (e, t) { 3150 if ("undefined" != typeof Blob) return new Blob([e], { type: t }); 3151 var n = new MozBlobBuilder(); 3152 return n.append(e), n.getBlob(t); 3153 }), 3154 (pdfflip.createObjectURL = (function () { 3155 var e = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
3155+/="; 3156 return function (t, n) { 3157 if ("undefined" != typeof URL && URL.createObjectURL) { 3158 var i = pdfflip.createBlob(t, n); 3159 return URL.createObjectURL(i); 3160 } 3161 for (var o = "data:" + n + ";base64,", a = 0, r = t.length; a < r; a += 3) { 3162 var s = 255 & t[a], 3163 l = 255 & t[a + 1], 3164 c = 255 & t[a + 2]; 3165 o += e[s >> 2] + e[((3 & s) << 4) | (l >> 4)] + e[a + 1 < r ? ((15 & l) << 2) | (c >> 6) : 64] + e[a + 2 < r ? 63 & c : 64]; 3166 } 3167 return o; 3168 }; 3169 })()); 3170var ThumbList = (function () { 3171 function e(t) { 3172 var n = (t && t.w + "px") || "100%", 3173 i = (t && t.h + "px") || "100%", 3174 o = (this.itemHeight = t.itemHeight); 3175 (this.items = t.items), (this.generatorFn = t.generatorFn), (this.totalRows = t.totalRows || (t.items && t.items.length)), (this.addFn = t.addFn), (this.scrollFn = t.scrollFn); 3176 var a = e.createScroller(o * this.totalRows); 3177 (this.container = e.createContainer(n, i)), 3178 this.container.appendChild(a), 3179 (this.screenItemsLen = Math.ceil(t.h / o)), 3180 (this.offsetItems = this.screenItemsLen), 3181 (this.cachedItemsLen = this.screenItemsLen + 2 * this.offsetItems), 3182 this._renderChunk(this.container, 0); 3183 var r = this; 3184 function s(e) { 3185 var t = e.target.scrollTop; 3186 if (!r.lastRepaintY || Math.abs(t - r.lastRepaintY) >= r.offsetItems * r.itemHeight) { 3187 var n = parseInt(t / o, 10) - r.offsetItems; 3188 r._renderChunk(r.container, n < 0 ? 0 : n), (r.lastRepaintY = t); 3189 } 3190 (r.lastScrolled = Date.now()), null != r.scrollFn && r.scrollFn(), e.preventDefault && e.preventDefault(); 3191 } 3192 (r.lastRepaintY = 0), 3193 this.screenItemsLen, 3194 (r.dispose = function () { 3195 r.container && r.container.parentNode && r.container.parentNode.removeChild(r.container), r.container.removeEventListener("scroll", s); 3196 }), 3197 r.container.addEventListener("scroll", s); 3198 } 3199 return ( 3200 (e.prototype.reset = function (e) { 3201 (this.screenItemsLen = Math.ceil(e / this.itemHeight)), (this.cachedItemsLen = this.screenItemsLen + 2 * this.offsetItems); 3202 var t = parseInt(this.lastRepaintY / this.itemHeight, 10) - this.offsetItems; 3203 (this.needReset = !0), this._renderChunk(this.container, Math.max(t, 0)); 3204 }), 3205 (e.prototype.createRow = function (e) { 3206 var t; 3207 return this.generatorFn && ((t = this.generatorFn(e)).classList.add("pdff-vrow"), (t.style.position = "absolute"), (t.style.top = e * this.itemHeight + "px"), t.setAttribute("index", e)), t; 3208 }), 3209 (e.prototype._renderChunk = function (e, t) { 3210 var n = null == this.range; 3211 this.range = this.range || { min: 0, max: this.cachedItemsLen }; 3212 var i = this.range, 3213 o = i.min, 3214 a = i.max, 3215 r = !!n || t >= o; 3216 if (n || t != o || 0 != this.needReset) { 3217 var s, 3218 l = n ? o : r ? a : t; 3219 l = l > this.totalRows ? this.totalRows : l < 0 ? 0 : l; 3220 var c = t + this.cachedItemsLen; 3221 for (c = c > this.totalRows ? this.totalRows : c, s = l; s < c; s++) r ? e.appendChild(this.createRow(s)) : e.insertBefore(this.createRow(s), e.childNodes[1 + s - l]), null != this.addFn && this.addFn(s); 3222 if ((Math.abs(t - o), (this.needReset = !1), !n && e.childNodes.length > this.cachedItemsLen + 1)) 3223 for (var d = r ? 1 : 1 + this.cachedItemsLen, u = d + (c - l); u > d; u--) e.childNodes[d] && this.container.removeChild(e.childNodes[d]); 3224 (this.range.min = t), (this.range.max = c); 3225 } 3226 }), 3227 (e.createContainer = function (e, t) { 3228 var n = document.createElement("div"); 3229 return (n.style.width = e), (n.style.height = t), (n.style.overflow = "auto"), (n.style.position = "relative"), (n.style.padding = 0), n; 3230 }), 3231 (e.createScroller = function (e) { 3232 var t = document.createElement("div"); 3233 return (t.style.opacity = 0), (t.style.position = "absolute"), (t.style.top = 0), (t.style.left = 0), (t.style.width = "1px"), (t.style.height = e + "px"), t; 3234 }), 3235 e 3236 ); 3237 })(), 3238 BookMarkViewer = (function () { 3239 function e(e) { 3240 (this.outline = null), 3241 (this.lastToggleIsShow = !0), 3242 (this.container = e.container), 3243 (this.linkService = e.linkService), 3244 (this.outlineItemClass = e.outlineItemClass || "outlineItem"), 3245 (this.outlineToggleClass = e.outlineToggleClass || "outlineItemToggler"), 3246 (this.outlineToggleHiddenClass = e.outlineToggleHiddenClass || "outlineItemsHidden"); 3247 } 3248 return ( 3249 (e.prototype = { 3250 dispose: function () { 3251 this.container && this.container.parentNode && this.container.parentNode.removeChild(this.container), (this.linkService = null); 3252 }, 3253 reset: function () { 3254 (this.outline = null), (this.lastToggleIsShow = !0);
3255 for (var e = this.container; e.firstChild; ) e.removeChild(e.firstChild); 3256 }, 3257 _dispatchEvent: function (e) { 3258 var t = document.createEvent("CustomEvent"); 3259 t.initCustomEvent("outlineloaded", !0, !0, { outlineCount: e }), this.container.dispatchEvent(t); 3260 }, 3261 _bindLink: function (e, t) { 3262 var n = this.linkService; 3263 if (1 == t.custom) 3264 (e.href = n.getCustomDestinationHash(t.dest)), 3265 (e.onclick = function (e) { 3266 return n.customNavigateTo(t.dest), !1; 3267 }); 3268 else { 3269 if (t.url) return void PDFJS.addLinkAttributes(e, { url: t.url }); 3270 (e.href = n.getDestinationHash(t.dest)), 3271 (e.onclick = function (e) { 3272 return n.navigateTo(t.dest), !1; 3273 }); 3274 } 3275 }, 3276 _addToggleButton: function (e) { 3277 var t = document.createElement("div"); 3278 (t.className = this.outlineToggleClass + " " + this.outlineToggleHiddenClass), 3279 (t.onclick = function (n) { 3280 if ((n.stopPropagation(), t.classList.toggle(this.outlineToggleHiddenClass), n.shiftKey)) { 3281 var i = !t.classList.contains(this.outlineToggleHiddenClass); 3282 this._toggleOutlineItem(e, i); 3283 } 3284 }.bind(this)), 3285 e.insertBefore(t, e.firstChild); 3286 }, 3287 _toggleOutlineItem: function (e, t) { 3288 this.lastToggleIsShow = t; 3289 for (var n = e.querySelectorAll("." + this.outlineToggleClass), i = 0, o = n.length; i < o; ++i) n[i].classList[t ? "remove" : "add"](this.outlineToggleHiddenClass); 3290 }, 3291 toggleOutlineTree: function () { 3292 this.outline && this._toggleOutlineItem(this.container, !this.lastToggleIsShow); 3293 }, 3294 render: function (e) { 3295 var t = (e && e.outline) || null, 3296 n = 0; 3297 if ((this.outline && this.reset(), (this.outline = t), t)) { 3298 for (var i = document.createDocumentFragment(), o = [{ parent: i, items: this.outline }], a = !1; o.length > 0; ) 3299 for (var r = o.shift(), s = r.custom, l = 0, c = r.items.length; l < c; l++) { 3300 var d = r.items[l], 3301 u = document.createElement("div"); 3302 u.className = this.outlineItemClass; 3303 var p = document.createElement("a"); 3304 if ((null == d.custom && null != s && (d.custom = s), this._bindLink(p, d), (p.textContent = d.title.replace(/\x00/g, "")), u.appendChild(p), d.items && d.items.length > 0)) { 3305 (a = !0), this._addToggleButton(u); 3306 var h = document.createElement("div"); 3307 (h.className = this.outlineItemClass + "s"), u.appendChild(h), o.push({ parent: h, custom: d.custom, items: d.items }); 3308 } 3309 r.parent.appendChild(u), n++; 3310 } 3311 a && (null != this.container.classList ? this.container.classList.add(this.outlineItemClass + "s") : null != this.container.className && (this.container.className += " picWindow")), 3312 this.container.appendChild(i), 3313 this._dispatchEvent(n); 3314 } 3315 }, 3316 }), 3317 e 3318 ); 3319 })(), 3320 DFLightBox = (function (e) { 3321 function t(t, n) { 3322 this.duration = 300; 3323 var i = this; 3324 return ( 3325 (i.lightboxWrapper = e("<div>").addClass("pdff-lightbox-wrapper")), 3326 (i.container = e("<div>").addClass("pdff-container").appendTo(i.lightboxWrapper)), 3327 (i.controls = e("<div>").addClass("pdff-lightbox-controls").appendTo(i.lightboxWrapper)), 3328 (i.closeButton = e("<div>") 3329 .addClass("pdff-lightbox-close pdff-ui-btn") 3330 .on("click", function () { 3331 $("body").css("overflow", "visible"), i.close(t); 3332 }) 3333 .appendTo(i.controls)), 3334 i.lightboxWrapper.append(i.container), 3335 i 3336 ); 3337 } 3338 return ( 3339 (t.prototype.show = function (t) { 3340 return 0 == this.lightboxWrapper.parent().length && e("body").append(this.lightboxWrapper), this.lightboxWrapper.fadeIn(this.duration, t), this; 3341 }), 3342 (t.prototype.close = function (e) { 3343 return this.lightboxWrapper.fadeOut(this.duration), setTimeout(e, this.duration), this; 3344 }), 3345 t 3346 ); 3347 })(jQuery); 3348(pdfflip.Share = (function (e) { 3349 function t(t, n) { 3350 var i = this, 3351 o = "<div>", 3352 a = "pdff-share-button", 3353 r = "width=500,height=400"; 3354 (i.isOpen = !1), 3355 (i.shareUrl = ""), 3356 (i.wrapper = e('<div class="pdff-share-wrapper" style="display: none;">').on("click", function (e) { 3357 i.close(); 3358 })), 3359 (i.box = e('<div class="pdff-share-box">') 3360 .on("click", function (e) { 3361 e.preventDefault(), e.stopPropagation(); 3362 }) 3363 .appendTo(i.wrapper) 3364 .html('<span class="pdff-share-title">' + n.text.share + "</span>")), 3365 (i.urlInput = e('<textarea class="pdff-share-url">').on("click", function () { 3366 e(this).select(); 3367 })), 3368 (i.facebook = e(o, { class: a + " pdff-share-facebook " + n.icons.facebook }).on("click", function (e) { 3369 window.open("https://www.facebook.com/sharer/sharer.php?u=" + encodeURIComponent(i.shareUrl), "Sharer", r); 3370 })), 3371 (i.google = e(o, { class: a + " pdff-share-google " + n.icons.google }).on("click", function (e) { 3372 window.open("https://plus.google.com/share?url=" + encodeURIComponent(i.shareUrl), "Sharer", r); 3373 })), 3374 (i.twitter = e(o, { class: a + " pdff-share-twitter " + n.icons.twitter }).on("click", function (e) { 3375 window.open("http://twitter.com/share?url=" + encodeURIComponent(i.shareUrl), "Sharer", r); 3376 })), 3377 (i.linkedin = e(o, { class: a + " pdff-share-linkedin " + n.icons.linkedin }).on("click", function (e) { 3378 var wLocationHr = window.location.href; 3379 window.open("http://www.linkedin.com/shareArticle?mini=true&url=" + wLocationHr, "Sharer", r); 3380 })), 3381 (i.mail = e("<a>", { class: a + " pdff-share-mail " + n.icons.mail, href: "mailto:?subject=I wanted y
3381ou to see this FlipBook&body=Check out this site " + encodeURIComponent(i.shareUrl), target: "_blank" }).on("click", function ( 3382 t 3383 ) { 3384 e(this).attr("href", "mailto:?subject=I wanted you to see this FlipBook&body=Check out this site " + encodeURIComponent(i.shareUrl)), t.stopPropagation(); 3385 })), 3386 i.box.append(i.urlInput).append(i.facebook).append(i.google).append(i.twitter).append(i.mail).append(i.linkedin), 3387 e(t).append(i.wrapper); 3388 } 3389 return ( 3390 (t.prototype.show = function () { 3391 this.wrapper.fadeIn(300), this.urlInput.val(this.shareUrl), this.urlInput.trigger("click"), (this.isOpen = !0); 3392 }), 3393 (t.prototype.dispose = function () { 3394 var e = this; 3395 e.box.off(), e.google.off(), e.twitter.off(), e.facebook.off(), e.mail.off(), e.urlInput.off(), e.wrapper.off().remove(); 3396 }), 3397 (t.prototype.close = function () { 3398 this.wrapper.fadeOut(300), (this.isOpen = !1); 3399 }), 3400 (t.prototype.update = function (e) { 3401 this.shareUrl = e; 3402 }), 3403 t 3404 ); 3405})(jQuery)), 3406 (pdfflip.Popup = (function (e) { 3407 function t(t, n) { 3408 var i = this; 3409 (i.isOpen = !1), 3410 (i.wrapper = e('<div class="pdff-popup-wrapper" style="display: none;">').on("click", function (e) { 3411 i.close(); 3412 })), 3413 (i.box = e('<div class="pdff-popup-box">') 3414 .on("click", function (e) { 3415 e.preventDefault(), e.stopPropagation(); 3416 }) 3417 .appendTo(i.wrapper)), 3418 e(t).append(i.wrapper); 3419 } 3420 return ( 3421 (t.prototype.show = function () { 3422 this.wrapper.fadeIn(300), (this.isOpen = !0); 3423 }), 3424 (t.prototype.dispose = function () { 3425 this.box.off(), this.wrapper.off().remove(); 3426 }), 3427 (t.prototype.close = function () { 3428 this.wrapper.fadeOut(300), (this.isOpen = !1); 3429 }), 3430 t 3431 ); 3432 })(jQuery)); 3433var PDFLinkService = (function () { 3434 function e() { 3435 (this.baseUrl = null), (this.pdfDocument = null), (this.pdfViewer = null), (this.pdfHistory = null), (this._pagesRefCache = null); 3436 } 3437 return ( 3438 (e.prototype = { 3439 dispose: function () { 3440 (this.baseUrl = null), (this.pdfDocument = null), (this.pdfViewer = null), (this.pdfHistory = null), (this._pagesRefCache = null); 3441 }, 3442 setDocument: function (e, t) { 3443 (this.baseUrl = t), (this.pdfDocument = e), (this._pagesRefCache = Object.create(null)); 3444 }, 3445 setViewer: function (e) { 3446 this.pdfViewer = e; 3447 }, 3448 setHistory: function (e) { 3449 this.pdfHistory = e; 3450 }, 3451 get pagesCount() { 3452 return this.pdfDocument.numPages; 3453 }, 3454 get page() { 3455 return this.pdfViewer.currentPageNumber; 3456 }, 3457 set page(e) { 3458 this.pdfViewer.currentPageNumber = e; 3459 }, 3460 navigateTo: function (e) { 3461 var t, 3462 n = "", 3463 i = this, 3464 o = function (t) { 3465 var a = t instanceof Object ? i._pagesRefCache[t.num + " " + t.gen + " R"] : t + 1; 3466 a 3467 ? (i.pdfViewer.contentProvider.options.pageSize == pdfflip.PAGE_SIZE.DOUBLEINTERNAL && a > 2 && (a = 2 * a - 1), 3468 a > i.pdfViewer.pageCount && (a = i.pdfViewer.pageCount), 3469 i.pdfViewer.gotoPage(a), 3470 i.pdfHistory && i.pdfHistory.push({ dest: e, hash: n, page: a })) 3471 : i.pdfDocument.getPageIndex(t).then(function (e) { 3472 var n = e + 1, 3473 a = t.num + " " + t.gen + " R"; 3474 (i._pagesRefCache[a] = n), o(t); 3475 }); 3476 }; 3477 "string" == typeof e ? ((n = e), (t = this.pdfDocument.getDestination(e))) : (t = Promise.resolve(e)), 3478 t.then(function (t) { 3479 (e = t), t instanceof Array && o(t[0]); 3480 }); 3481 }, 3482 customNavigateTo: function (e) { 3483 if ("" != e && null != e && "null" != e) { 3484 var t = null; 3485 if (isNaN(Math.round(e))) { 3486 if ("string" == typeof e && ((t = parseInt(e.replace("#", ""), 10)), isNaN(t))) return void window.open(e); 3487 } else t = e; 3488 null != t && this.pdfViewer.gotoPage(t); 3489 } 3490 }, 3491 getDestinationHash: function (e) { 3492 if ("string" == typeof e) return this.getAnchorUrl("#" + escape(e)); 3493 if (e instanceof Array) { 3494 var t = e[0], 3495 n = t instanceof Object ? this._pagesRefCache[t.num + " " + t.gen + " R"] : t + 1; 3496 if (n) { 3497 var i = this.getAnchorUrl("#page=" + n), 3498 o = e[1]; 3499 if ("object" == typeof o && "name" in o && "XYZ" === o.name) { 3500 var a = e[4] || this.pdfViewer.currentScaleValue, 3501 r = parseFloat(a); 3502 r && (a = 100 * r), (i += "&zoom=" + a), (e[2] || e[3]) && (i += "," + (e[2] || 0) + "," + (e[3] || 0)); 3503 } 3504 return i; 3505 } 3506 } 3507 return this.getAnchorUrl(""); 3508 }, 3509 getCustomDestinationHash: function (e) { 3510 return "#" + escape(e); 3511 }, 3512 getAnchorUrl: function (e) { 3513 return (this.baseUrl || "") + e; 3514 }, 3515 setHash: function (e) { 3516 if (e.indexOf("=") >= 0) { 3517 var t, 3518 n, 3519 i = parseQueryString(e);
3520 if ("nameddest" in i) return this.pdfHistory && this.pdfHistory.updateNextHashParam(i.nameddest), void this.navigateTo(i.nameddest); 3521 if (("page" in i && (t = 0 | i.page || 1), "zoom" in i)) { 3522 var o = i.zoom.split(","), 3523 a = o[0], 3524 r = parseFloat(a); 3525 -1 === a.indexOf("Fit") 3526 ? (n = [null, { name: "XYZ" }, o.length > 1 ? 0 | o[1] : null, o.length > 2 ? 0 | o[2] : null, r ? r / 100 : a]) 3527 : "Fit" === a || "FitB" === a 3528 ? (n = [null, { name: a }]) 3529 : "FitH" === a || "FitBH" === a || "FitV" === a || "FitBV" === a 3530 ? (n = [null, { name: a }, o.length > 1 ? 0 | o[1] : null]) 3531 : "FitR" === a 3532 ? 5 !== o.length 3533 ? console.error("PDFLinkService_setHash: Not enough parameters for 'FitR'.") 3534 : (n = [null, { name: a }, 0 | o[1], 0 | o[2], 0 | o[3], 0 | o[4]]) 3535 : console.error("PDFLinkService_setHash: '" + a + "' is not a valid zoom value."); 3536 } 3537 if ((n ? this.pdfViewer.scrollPageIntoView(t || this.page, n) : t && (this.page = t), "pagemode" in i)) { 3538 var s = document.createEvent("CustomEvent"); 3539 s.initCustomEvent("pagemode", !0, !0, { mode: i.pagemode }), this.pdfViewer.container.dispatchEvent(s); 3540 } 3541 } else /^\d+$/.test(e) ? (this.page = e) : (this.pdfHistory && this.pdfHistory.updateNextHashParam(unescape(e)), this.navigateTo(unescape(e))); 3542 }, 3543 executeNamedAction: function (e) { 3544 switch (e) { 3545 case "GoBack": 3546 this.pdfHistory && this.pdfHistory.back(); 3547 break; 3548 case "GoForward": 3549 this.pdfHistory && this.pdfHistory.forward(); 3550 break; 3551 case "NextPage": 3552 this.page++; 3553 break; 3554 case "PrevPage": 3555 this.page--; 3556 break; 3557 case "LastPage": 3558 this.page = this.pagesCount; 3559 break; 3560 case "FirstPage": 3561 this.page = 1; 3562 } 3563 var t = document.createEvent("CustomEvent"); 3564 t.initCustomEvent("namedaction", !0, !0, { action: e }), this.pdfViewer.container.dispatchEvent(t); 3565 }, 3566 cachePageRef: function (e, t) { 3567 var n = t.num + " " + t.gen + " R"; 3568 this._pagesRefCache[n] = e; 3569 }, 3570 }), 3571 e 3572 ); 3573})(); 3574(pdfflip.TextLayerBuilder = (function () { 3575 function e(e) { 3576 (this.textLayerDiv = e.textLayerDiv), 3577 (this.renderingDone = !1), 3578 (this.divContentDone = !1), 3579 (this.pageIdx = e.pageIndex), 3580 (this.pageNumber = this.pageIdx + 1), 3581 (this.matches = []), 3582 (this.viewport = e.viewport), 3583 (this.textDivs = []), 3584 (this.findController = e.findController || null), 3585 (this.textLayerRenderTask = null), 3586 (this.enhanceTextSelection = e.enhanceTextSelection), 3587 this._bindMouse(); 3588 } 3589 return ( 3590 (e.prototype = { 3591 _finishRendering: function () { 3592 if (((this.renderingDone = !0), !this.enhanceTextSelection)) { 3593 var e = document.createElement("div"); 3594 (e.className = "endOfContent"), this.textLayerDiv.appendChild(e); 3595 } 3596 }, 3597 render: function (e) { 3598 if (this.divContentDone && !this.renderingDone) { 3599 this.textLayerRenderTask && (this.textLayerRenderTask.cancel(), (this.textLayerRenderTask = null)), (this.textDivs = []); 3600 var t = document.createDocumentFragment(); 3601 (this.textLayerRenderTask = PDFJS.renderTextLayer({ textContent: this.textContent, container: t, viewport: this.viewport, textDivs: this.textDivs, timeout: e, enhanceTextSelection: this.enhanceTextSelection })), 3602 this.textLayerRenderTask.promise.then( 3603 function () { 3604 this.textLayerDiv.appendChild(t), this._finishRendering(), this.updateMatches(); 3605 }.bind(this), 3606 function (e) {} 3607 ); 3608 } 3609 }, 3610 setTextContent: function (e) { 3611 this.textLayerRenderTask && (this.textLayerRenderTask.cancel(), (this.textLayerRenderTask = null)), (this.textContent = e), (this.divContentDone = !0); 3612 }, 3613 convertMatches: function (e, t) { 3614 var n = 0, 3615 i = 0, 3616 o = this.textContent.items, 3617 a = o.length - 1, 3618 r = null === this.findController ? 0 : this.findController.state.query.length, 3619 s = []; 3620 if (!e) return s; 3621 for (var l = 0, c = e.length; l < c; l++) { 3622 for (var d = e[l]; n !== a && d >= i + o[n].str.length; ) (i += o[n].str.length), n++; 3623 n === o.length && console.error("Could not find a matching mapping"); 3624 var u = { begin: { divIdx: n, offset: d - i } }; 3625 for (d += t ? t[l] : r; n !== a && d > i + o[n].str.length; ) (i += o[n].str.length), n++; 3626 (u.end = { divIdx: n, offset: d - i }), s.push(u); 3627 } 3628 return s; 3629 }, 3630 renderMatches: function (e) { 3631 if (0 !== e.length) { 3632 var t = this.textContent.items, 3633 n = this.textDivs, 3634 i = null, 3635 o = this.pageIdx, 3636 a = null !== this.findController && o === this.findController.selected.pageIdx, 3637 r = null === this.findController ? -1 : this.findController.selected.matchIdx, 3638 s = void 0, 3639 l = r, 3640 c = l + 1; 3641 if (null !== this.findController && this.findController.state.highlightAll) (l = 0), (c = e.length); 3642 else if (!a) return; 3643 for (var d = l; d < c; d++) { 3644 var u = e[d], 3645 p = u.begin, 3646 h = u.end, 3647 f = a && d === r ? " selected" : ""; 3648 if ( 3649 (this.findController && this.findController.updateMatchPosition(o, d, n, p.divIdx), 3650 i && p.divIdx === i.divIdx ? b(i.divIdx, i.offset, p.offset) : (null !== i && b(i.divIdx, i.offset, s), v(p)), 3651 p.divIdx === h.divIdx) 3652 ) 3653 b(p.divIdx, p.offset, h.offset, "highlight" + f); 3654 else { 3655 b(p.divIdx, p.offset, s, "highlight begin" + f); 3656 for (var g = p.divIdx + 1, m = h.divIdx; g < m; g++) n[g].className = "highlight middle" + f; 3657 v(h, "highlight end" + f); 3658 } 3659 i = h; 3660 } 3661 i && b(i.divIdx, i.offset, s); 3662 } 3663 function v(e, t) { 3664 var i = e.divIdx; 3665 (n[i].textContent = ""), b(i, 0, e.offset, t); 3666 } 3667 function b(e, i, o, a) { 3668 var r = n[e], 3669 s = t[e].str.substring(i, o), 3670 l = document.createTextNode(s); 3671 if (a) { 3672 var c = document.createElement("span"); 3673 return (c.className = a), c.appendChild(l), void r.appendChild(c); 3674 } 3675 r.appendChild(l); 3676 } 3677 }, 3678 updateMatches: function () { 3679 if (this.renderingDone) { 3680 for (var e, t, n = this.matches, i = this.textDivs, o = this.textContent.items, a = -1, r = 0, s = n.length; r < s; r++) { 3681 for (var l = n[r], c = Math.max(a, l.begin.divIdx), d = l.end.divIdx; c <= d; c++) { 3682 var u = i[c]; 3683 (u.textContent = o[c].str), (u.className = ""); 3684 } 3685 a = l.end.divIdx + 1; 3686 } 3687 null !== this.findController && 3688 this.findController.active && 3689 (null !== this.findController && ((e = this.findController.pageMatches[this.pageIdx] || null), (t = (this.findController.pageMatchesLength && this.findController.pageMatchesLength[this.pageIdx]) || null)), 3690 (this.matches = this.convertMatches(e, t)), 3691 this.renderMatches(this.matches)); 3692 } 3693 }, 3694 _bindMouse: function () { 3695 var e = this.textLayerDiv, 3696 t = this; 3697 e.addEventListener("mousedown", function (n) { 3698 if (t.enhanceTextSelection && t.textLayerRenderTask) t.textLayerRenderTask.expandTextDivs(!0); 3699 else { 3700 var i = e.querySelector(".endOfContent"); 3701 if (i) { 3702 var o = n.target !== e; 3703 if ((o = o && "none" !== window.getComputedStyle(i).getPropertyValue("-moz-user-select"))) { 3704 var a = e.getBoundingClientRect(), 3705 r = Math.max(0, (n.pageY - a.top) / a.height); 3706 i.style.top = (100 * r).toFixed(2) + "%"; 3707 } 3708 i.classList.add("active"); 3709 } 3710 } 3711 }), 3712 e.addEventListener("mouseup", function (n) { 3713 if (t.enhanceTextSelection && t.textLayerRenderTask) t.textLayerRenderTask.expandTextDivs(!1); 3714 else { 3715 var i = e.querySelector(".endOfContent"); 3716 i && ((i.style.top = ""), i.classList.remove("active"));
3717 } 3718 }); 3719 }, 3720 }), 3721 e 3722 ); 3723})()), 3724 (pdfflip.ConvertPageLinks = function () { 3725 for ( 3726 var e, 3727 t = arguments[0] / 100, 3728 n = arguments[1] / 100, 3729 i = function (e, i, o, a, r) { 3730 return { x: e / t, y: i / n, w: o / t, h: a / n, dest: r }; 3731 }, 3732 o = [], 3733 a = 2; 3734 a < arguments.length; 3735 a++ 3736 ) 3737 (e = arguments[a]), (o[a - 2] = i.apply(this, e)); 3738 return o; 3739 }), 3740 (pdfflip.parseLinks = function (e) { 3741 var t; 3742 if (null != e && e.length > 0) for (var n = 0; n < e.length; n++) null != (t = e[n]) && null != t[0] && null == t[0].dest && ((t = pdfflip.ConvertPageLinks.apply(this, t)), (e[n] = t)); 3743 return e; 3744 }), 3745 (function (e) { 3746 function t(e) { 3747 return "true" == e || 1 == e; 3748 } 3749 function n(e) { 3750 null != e.webgl && (e.webgl = t(e.webgl)), 3751 null != e.downloadEnable && (e.downloadEnable = t(e.downloadEnable)), 3752 null != e.scrollWheel && (e.scrollWheel = t(e.scrollWheel)), 3753 null != e.autoEnableOutline && (e.autoEnableOutline = t(e.autoEnableOutline)), 3754 null != e.autoEnableThumbnail && (e.autoEnableThumbnail = t(e.autoEnableThumbnail)), 3755 null != e.transparent && (e.transparent = t(e.transparent)), 3756 null != e.overwritePDFOutline && (e.overwritePDFOutline = t(e.overwritePDFOutline)), 3757 null != e.enableSound && (e.enableSound = t(e.enableSound)), 3758 null != e.forceFit && (e.forceFit = t(e.forceFit)), 3759 null != e.enableAnnotation && (e.enableAnnotation = t(e.enableAnnotation)), 3760 null != e.webglShadow && (e.webglShadow = t(e.webglShadow)), 3761 null != e.autoPlay && (e.autoPlay = t(e.autoPlay)), 3762 null != e.autoPlayStart && (e.autoPlayStart = t(e.autoPlayStart)), 3763 null != e.paddingTop && (e.paddingTop = parseInt(e.paddingTop, 10)), 3764 null != e.paddingRight && (e.paddingRight = parseInt(e.paddingRight, 10)), 3765 null != e.paddingBottom && (e.paddingBottom = parseInt(e.paddingBottom, 10)), 3766 null != e.paddingLeft && (e.paddingLeft = parseInt(e.paddingLeft, 10)), 3767 null != e.zoomRatio && (e.zoomRatio = parseFloat(e.zoomRatio, 10)), 3768 null != e.stiffness && (e.stiffness = parseFloat(e.stiffness, 10)), 3769 null != e.autoPlayDuration && (e.autoPlayDuration = parseInt(e.autoPlayDuration, 10)), 3770 (0 != e.pageMode && "0" != e.pageMode) || (e.pageMode = null), 3771 (0 != e.singlePageMode && "0" != e.singlePageMode) || (e.singlePageMode = null); 3772 } 3773 (pdfflip.getOptions = function (t) { 3774 var i = "option_" + (t = e(t)).attr("id"), 3775 o = t.attr("source") || t.attr("pdff-source"); 3776 (i = null == i || "" == i || null == window[i] ? {} : window[i]).source = null == o || "" == o ? i.source : o; 3777 var a = { 3778 webgl: t.attr("webgl"), 3779 height: t.attr("height"), 3780 enableSound: t.attr("sound"), 3781 transparent: t.attr("transparent"), 3782 downloadEnable: t.attr("download"), 3783 duration: t.attr("duration"), 3784 hard: t.attr("hard"), 3785 pageMode: t.attr("pagemode"), 3786 direction: t.attr("direction"), 3787 backgroundColor: t.attr("backgroundcolor"), 3788 scrollWheel: t.attr("scrollwheel"), 3789 backgroundImage: t.attr("backgroundimage"), 3790 paddingTop: t.attr("paddingtop"), 3791 paddingRight: t.attr("paddingright"), 3792 paddingBottom: t.attr("paddingbottom"), 3793 paddingLeft: t.attr("paddingleft"), 3794 wpOptions: t.attr("wpoptions"), 3795 }; 3796 return ( 3797 (function (e) { 3798 if (1 != e.parsed) { 3799 e.parsed = !0; 3800 var t = []; 3801 if ((n(e), "undefined" != typeof pdfflipWPGlobal && "true" == e.wpOptions)) { 3802 try { 3803 for (var i in e.links) { 3804 for (var o = e.links[i], a = [100, 100], r = 0; r < o.length; r++) { 3805 for (var s = o[r].substr(1).slice(0, -1).split(","), l = [], c = 0; c < 5; c++) l[c] = s[c]; 3806 a.push(l); 3807 } 3808 t[parseInt(i, 10) + 1] = a; 3809 } 3810 } catch (e) { 3811 console.error(e.stack); 3812 } 3813 e.links = pdfflip.parseLinks(t); 3814 } else e.links = pdfflip.parseLinks(e.links); 3815 } 3816 })((i = e.extend(!0, {}, i, a))), 3817 i 3818 ); 3819 }), 3820 (pdfflip.parseBooks = function () { 3821 e("._PDFF_btt, ._pdff_thumb, ._PDFF_link, .PDFFlip").each(function () { 3822 var t = e(this); 3823 if ("true" !== (t.attr("parsed") || t.attr("pdff-parsed"))) 3824 if ((t.attr("pdff-parsed", "true"), t.hasClass("PDFFlip"))) { 3825 var n = t.attr("id"), 3826 i = t.attr("slug"), 3827 o = pdfflip.getOptions(t); 3828 (o.id = n), null != i && (o.slug = i), n ? (window[n.toString()] = e(t).flipBook(o.source, o)) : e(t).flipBook(o.source, o); 3829 } else if (t.hasClass("_pdff_thumb")) { 3830 var a = e("<div class='PDFFlip-cover'>"), 3831 r = t.html().trim(); 3832 t.html(""), e("<span class='PDFFlip-title'>").html(r).appendTo(a); 3833 var s = t.attr("thumb") || t.attr("pdff-thumb"), 3834 l = t.attr("thumbtype") || pdfflip.defaults.thumbElement || "div", 3835 c = t.attr("tags") || t.attr("pdff-tags"); 3836 if (c && (c = c.split(",")).length > 0) for (var d = 0; d < c.length; d++) t.append("<span class='PDFFlip-tag'>" + c[d] + "</span>"); 3837 null != s && "" != s.toString().trim() 3838 ? "img" == l 3839 ? (a.append('<img src="' + s + '" alt="' + r + '"/>'), t.attr("thumb-type", "img")) 3840 : a.css({ backgroundImage: "url(" + s + ")" }) 3841 : a.addClass("_pdff_thumb-not-found"), 3842 t.append(a); 3843 } 3844 }); 3845 }), 3846 e(document).ready(function () { 3847 if ( 3848 ("undefined" == typeof pdfflipLocation && 3849 0 != pdfflip.autoDetectLocation && 3850 e("script").each(function () { 3851 var t = e(this)[0].src; 3852 if ((t.indexOf("/pdfflip.js") > -1 || t.indexOf("/pdfflip.min.js") > -1) && (t.indexOf("https://") > -1 || t.indexOf("http://") > -1) && t.indexOf("js/pdfflip.") > -1) { 3853 var n = t.split("/"); 3854 window.pdfflipLocation = n.slice(0, -2).join("/"); 3855 } 3856 }), 3857 "undefined" != typeof pdfflipLocation && 3858 (pdfflipLocation.length > 2 && "/" !== pdfflipLocation.slice(-1) && (window.pdfflipLocation += "/"), 3859 (pdfflip.defaults.utilsSrc = pdfflipLocation + "../assets/js/pflip/js/libs/utils.min.js"), 3860 (pdfflip.defaults.pdfjsSrc = pdfflipLocation + "../assets/js/pflip/js/libs/pdf.min.js"), 3861 (pdfflip.defaults.pdfjsCompatibilitySrc = pdfflipLocation + "../assets/js/pflip/js/libs/compatibility.js"), 3862 (pdfflip.defaults.threejsSrc = pdfflipLocation + "../assets/js/pflip/js/libs/three.min.js"), 3863 (pdfflip.defaults.pdfjsWorkerSrc = pdfflipLocation + "../assets/js/pflip/js/libs/pdf.worker.min.js"), 3864 (pdfflip.defaults.soundFile = pdfflipLocation + "sound/turn.mp3"), 3865 (pdfflip.defaults.imagesLocation = pdfflipLocation + "images"), 3866 (pdfflip.defaults.imageResourcesPath = pdfflipLocation + "images/pdfjs/"), 3867 (pdfflip.defaults.cMapUrl = pdfflipLocation + "js/libs/cmaps/"), 3868 "undefined" != typeof pdfflipWPGlobal && (n(pdfflipWPGlobal), e.extend(pdfflip.defaults, pdfflipWPGlobal))), 3869 (pdfflip.preParseHash = window.location.hash), 3870 pdfflip.parseBooks(), 3871 e("body").on("click", "._PDFF_btt, ._pdff_thumb, ._PDFF_link", function () { 3872 $("body").css("overflow", "hidden"); 3873 var t = e(this); 3874 window.dfLightBox || 3875 (window.dfLightBox = new DFLightBox(function () { 3876 0 == window.location.hash.indexOf("#pdfflip-") && (window.location.hash = "#_"), window.dfActiveLightBoxBook.dispose(), (window.dfActiveLightBoxBook = null); 3877 })), 3878 (window.dfLightBox.duration = 500), 3879 window.dfActiveLightBoxBook && window.dfActiveLightBoxBook.dispose 3880 ? window.dfActiveLightBoxBook.dispose() 3881 : window.dfLightBox.show(function () { 3882 var n = pdfflip.getOptions(t); 3883 (n.transparent = !1), (n.id = t.attr("id")); 3884 var i = t.attr("slug"); 3885 null != i && (n.slug = i), (n.isLightBox = !0), (window.dfActiveLightBoxBook = e(window.dfLightBox.container).flipBook(n.source, n)); 3886 }); 3887 }), 3888 (pdfflip.utils.isSafari || pdfflip.utils.isIOS) && e("body").addClass("pdff-webkit"), 3889 pdfflip.preParseHash && pdfflip.preParseHash.indexOf("pdfflip-") >= 0) 3890 ) { 3891 var t, 3892 i = pdfflip.preParseHash.split("pdfflip-")[1].split("/")[0], 3893 o = pdfflip.preParseHash.split("pdfflip-")[1].split("/")[1]; 3894 null != o && (o = o.split("/")[0]), 0 == (t = e("[slug=" + i + "]")).length && (t = e("#" + i)), t.length > 0 && (null != o && t.data("page", o), t.is("._PDFF_btt, ._pdff_thumb, ._PDFF_link") && t.trigger("click")); 3895 } 3896 e("body").on("click", ".pdff-ui-sidemenu-close", function () { 3897 e(this).closest(".pdff-container").find(".pdff-ui-outline.pdff-active , .pdff-ui-thumbn
3897ail.pdff-active").trigger("click"); 3898 }); 3899 }); 3900 })(jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.