vendor: 178,308 bytes, line 1
1"use strict";var DFLIP=DFLIP||{};var PRESENTATION=DFLIP;(function dFlip(DFLIP,$){DFLIP.version="1.7.6.1";DFLIP.PAGE_MODE={SINGLE:1,DOUBLE:2,AUTO:null};DFLIP.SINGLE_PAGE_MODE={ZOOM:1,BOOKLET:2,AUTO:null};DFLIP.CONTROLSPOSITION={HIDDEN:"hide",TOP:"top",BOTTOM:"bottom"};DFLIP.DIRECTION={LTR:1,RTL:2};DFLIP.LINK_TARGET={NONE:0,SELF:1,BLANK:2,PARENT:3,TOP:4};DFLIP.CORNERS={TL:"tl",TR:"tr",BL:"bl",BR:"br",L:"l",R:"r",NONE:null};DFLIP.SOURCE_TYPE={IMAGE:"image",PDF:"pdf",HTML:"html"};DFLIP.DISPLAY_TYPE={WEBGL:"3D",HTML:"2D"};DFLIP.PAGE_SIZE={AUTO:0,SINGLE:1,DOUBLEINTERNAL:2};var defaults=DFLIP.defaults={webgl:true,webglShadow:true,soundEnable:true,search:false,height:"auto",autoEnableOutline:false,autoEnableThumbnail:false,overwritePDFOutline:false,enableDownload:true,duration:800,direction:DFLIP.DIRECTION.LTR,pageMode:DFLIP.PAGE_MODE.AUTO,singlePageMode:DFLIP.SINGLE_PAGE_MODE.AUTO,backgroundColor:"#fff",forceFit:true,transparent:false,hard:"none",openPage:1,annotationClass:"",autoPlay:false,autoPlayDuration:5e3,autoPlayStart:false,maxTextureSize:1600,minTextureSize:256,rangeChunkSize:524288,icons:{altnext:"ti-angle-right",altprev:"ti-angle-left",next:"ti-angle-right",prev:"ti-angle-left",end:"ti-angle-double-right",start:"ti-angle-double-left",share:"ti-sharethis",help:"ti-help-alt",more:"ti-more-alt",download:"ti-download",zoomin:"ti-zoom-in",zoomout:"ti-zoom-out",fullscreen:"ti-fullscreen",fitscreen:"ti-arrows-corner",thumbnail:"ti-layout-grid2",outline:"ti-menu-alt",close:"ti-close",search:"ti-search",doublepage:"ti-book",singlepage:"ti-file",sound:"ti-volume",facebook:"ti-facebook",google:"ti-google",twitter:"ti-twitter-alt",mail:"ti-email",play:"ti-control-play",pause:"ti-control-pause"},text:{toggleSound:"Turn on/off Sound",toggleThumbnails:"Toggle Thumbnails",toggleOutline:"Toggle Outline/Bookmark",previousPage:"Previous Page",nextPage:"Next Page",toggleFullscreen:"Toggle Fullscreen",zoomIn:"Zoom In",zoomOut:"Zoom Out",toggleHelp:"Toggle Help",singlePageMode:"Single Page Mode",doublePageMode:"Double Page Mode",downloadPDFFile:"Download PDF File",gotoFirstPage:"Goto First Page",gotoLastPage:"Goto Last Page",play:"Start AutoPlay",pause:"Pause AutoPlay",share:"Share",mailSubject:"I wanted you to see this FlipBook",mailBody:"Check out this site {{url}}",loading:"Loading"},allControls:"altPrev,pageNumber,altNext,play,outline,thumbnail,zoomIn,zoomOut,fullScreen,share,download,search,more,pageMode,startPage,endPage,sound",moreControls:"download,pageMode,startPage,endPage,sound",hideControls:"",controlsPosition:DFLIP.CONTROLSPOSITION.BOTTOM,paddingTop:30,paddingLeft:20,paddingRight:20,paddingBottom:30,enableAnalytics:false,scrollWheel:true,onCreate:function(flipBook){},onCreateUI:function(flipBook){},onFlip:function(flipBook){},beforeFlip:function(flipBook){},onReady:function(flipBook){},zoomRatio:1.5,pageSize:DFLIP.PAGE_SIZE.AUTO,pdfjsSrc:"js/libs/pdf.min.js",pdfjsCompatibilitySrc:"js/libs/compatibility.js",pdfjsWorkerSrc:"js/libs/pdf.worker.min.js",threejsSrc:"js/libs/three.min.js",mockupjsSrc:"js/libs/mockup.min.js",soundFile:"sound/turn2.mp3",imagesLocation:"images",imageResourcesPath:"images/pdfjs/",cMapUrl:"cmaps/",enableDebugLog:false,canvasToBlob:false,enableAnnotation:true,pdfRenderQuality:.9,textureLoadFallback:"blank",stiffness:3,backgroundImage:"",pageRatio:null,pixelRatio:window.devicePixelRatio||1,thumbElement:"div",spotLightIntensity:.22,ambientLightColor:"#fff",ambientLightIntensity:.8,shadowOpacity:.15,linkTarget:DFLIP.LINK_TARGET.BLANK,sharePrefix:"flipbook-"};var has3d="WebKitCSSMatrix"in window||document.body&&"MozPerspective"in document.body.style,hasMouse="onmousedown"in window,hasTouch="ontouchstart"in window;var userAgent=navigator.userAgent;var utils=DFLIP.utils={drag:{left:0,right:1,none:-1},mouseEvents:hasMouse?{type:"mouse",start:"mousedown",move:"mousemove",end:"mouseup"}:{type:"touch",start:"touchstart",move:"touchmove",end:"touchend"},html:{div:"<div/>",img:"<img/>",a:"<a>",input:"<input type='text'/>"},getSharePrefix:function(){var prefixes=utils.getSharePrefixes();return prefixes[0]},getSharePrefixes:function(){var prefixes=(DFLIP.defaults.sharePrefix+",dflip-,flipbook-,dearflip-").split(",").filter(function(e){return e});return prefixes},toRad:function(deg){return deg*Math.PI/180},isset:function(check,fallback){return check==null?fallback:check},isnull:function(variable){return variable==null||variable==null},toDeg:function(rad){return rad*180/Math.PI},transition:function(hasTransition,duration){return hasTransition?duration/1e3+"s ease-out":"0s none"},hasCompatibility:function(){var compatible=false;if(window.dFlipLocation!=null){if(window.dFlipLocation.indexOf("lip-lit")>0)compatible=true}return compatible},scrollIntoView:function(element,reference,align){reference=reference||element.parentNode;reference.scrollTop=element.offsetTop-reference.offsetTop+(align===false?element.offsetHeight-reference.offsetHeight:0);reference.scrollLeft=element.offsetLeft-reference.offsetLeft},display:function(hasDisplay){return hasDisplay?"block":"none"},resetTranslate:function(){return translateStr(0,0)},translateStr:function(x,y){return has3d?" translate3d("+x+"px,"+y+"px, 0px) ":" translate("+x+"px, "+y+"px) "},httpsCorrection:function(url){var location=window.location;if(location.href.indexOf("https://")>-1&&url.indexOf(location.hostname)>-1){url=url.replace("http://","https://")}if(location.href.indexOf("http://")>-1&&url.indexOf(location.hostname)>-1){url=url.replace("https://","http://")}return url},resetBoxShadow:function(){return"rgba(0, 0, 0, 0) 0px 0px 20px"},rotateStr:function(deg){return" rotateZ("+deg+"deg) "},bg:function(src){return"#fff"+bgImage(src)},bgImage:function(src){return src==null||src=="blank"?"":" url("+src+")"},src:function(src){return src!=null?""+src+"":""},limitAt:function(x,min,max){return x<min?min:x>max?max:x},distOrigin:function(x,y){return Math.sqrt(Math.pow(x,2)+Math.pow(y,2))},distPoints:function(x1,y1,x2,y2){return Math.sqrt(Math.pow(x2-x1,2)+Math.pow(y2-y1,2))},calculateScale:function(startTouches,endTouches){var startDistance=distPoints(startTouches[0].x,startTouches[0].y,startTouches[1].x,startTouches[1].y),endDistance=distPoints(endTouches[0].x,endTouches[0].y,endTouches[1].x,endTouches[1].y);return endDistance/startDistance},getVectorAvg:function(vectors){return{x:vectors.map(function(v){return v.x}).reduce(utils.sum)/vectors.length,y:vectors.map(function(v){return v.y}).reduce(utils.sum)/vectors.length}},sum:function(a,b){return a+b},getTouches:function(event,position){position=position||{left:0,top:0};return Array.prototype.slice.call(event.touches).map(function(touch){return{x:touch.pageX-position.left,y:touch.pageY-position.top}})},angleByDistance:function(distance,fullWidth){var h=fullWidth/2;var d=limitAt(distance,0,fullWidth);return d<h?toDeg(Math.asin(d/h)):90+toDeg(Math.asin((d-h)/h))},log:function(args){if(defaults.enableDebugLog==true&&window.console)console.log(args)},lowerPowerOfTwo:function(value){return Math.pow(2,Math.floor(Math.log(value)/Math.LN2))},nearestPowerOfTwo:function(value,max){return Math.min(max||2048,Math.pow(2,Math.ceil(Math.log(value)/Math.LN2)))},zoomStops:function(value,zoomRatio,ceil,min,max){if(min==null)min=256;if(max==null)max=2048;var factor=Math.log(value/min)/Math.log(zoomRatio);return min*Math.pow(zoomRatio,ceil==null?Math.round(factor):ceil==true?Math.ceil(factor):Math.floor(factor))},extendOptions:function(defaults,options){return $.extend(true,{},defaults,options)},getFullscreenElement:function(){return document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement},hasFullscreenEnabled:function(){return document.fullscreenEnabled||document.mozFullScreenEnabled||document.webkitFullscreenEnabled||document.msFullscreenEnabled},getBasePage:function(pageNumber){return Math.floor(pageNumber/2)*2},loadResources:function loadResources(resourceTag,src,callback){var doc=document,element=doc.createElement(resourceTag),refElement=doc.getElementsByTagName(resourceTag)[0];element.async=true;if(callback){element.addEventListener("load",function(e){callback(null,e)},false)}element.src=src;refElement.parentNode.insertBefore(element,refElement)},getScriptCallbacks:[],getScript:function(source,callback,errorCallback){var _callbacks=utils.getScriptCallbacks[source],script;function load(_,isAbort){if(script!=null){if(isAbort||!script.readyState||/loaded|complete/.test(script.readyState)){script.onload=script.onreadystatechange=null;script=null;script=null;if(!isAbort){for(var i=0;i<_callbacks.length;i++){if(_callbacks[i])_callbacks[i]();_callbacks[i]=null}errorCallback=null}}}}if($("script[src='"+source+"']").length===0){_callbacks=utils.getScriptCallbacks[source]=[];_callbacks.push(callback);script=document.createElement("script");var prior=document.body.getElementsByTagName("script")[0];script.async=1;script.setAttribute("data-cfasync",false);if(prior!=null){prior.parentNode.insertBefore(script,prior);prior=null}else{document.body.appendChild(script)}script.addEventListener("load",load,false);script.addEventListener("readystatechange",load,false);script.addEventListener("complete",load,false);if(errorCallback){script.addEventListener("error",errorCallback,false)}script.src=source+(prefix.dom=="MS"?"?"+Math.random(1):"")}else{_callbacks.push(callback)}},isHardPage:function(config,pageNumber,pageCount,isBooklet){if(config!=null){if(config=="cover"){return pageNumber==0||isBooklet&&pageNumber==1||pageNumber==Math.ceil(pageCount/(isBooklet?1:2))-(isBooklet?0:1)}else if(config=="all"){return true}else{var baseTest=(","+config+",").indexOf(","+(pageNumber*2+1)+",")>-1;var nextTest=(","+config+",").indexOf(","+(pageNumber*2+2)+",")>-1;return baseTest||nextTest}}return false},fixMouseEvent:function(event){if(event){var originalEvent=event.originalEvent||event;if(originalEvent.changedTouches&&originalEvent.changedTouches.length>0){var _event=$.event.fix(event);var touch=originalEvent.changedTouches[0];_event.clientX=touch.clientX;_event.clientY=touch.clientY;_event.pageX=touch.pageX;_event.touches=originalEvent.touches;_event.pageY=touch.pageY;_event.movementX=touch.movementX;_event.movementY=touch.movementY;return _event}else{return event}}else{return event}},hasWebgl:function(){try{var canvas=document.createElement("canvas");return!!(window.WebGLRenderingContext&&(canvas.getContext("webgl")||canvas.getContext("experimental-webgl")))}catch(e){return false}}(),isBookletMode:function(book){return book.pageMode==DFLIP.PAGE_MODE.SINGLE&&book.singlePageMode==DFLIP.SINGLE_PAGE_MODE.BOOKLET},isRTLMode:function(book){return book.direction==DFLIP.DIRECTION.RTL},isMobile:function(){var check=false;(function(a){if(/(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(a)||/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 )|sy(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(a.substr(0,4)))check=true})(userAgent||navigator.vendor||window.opera);return check}(),isIOS:/(iPad|iPhone|iPod)/g.test(userAgent),isSafari:/constructor/i.test(window.HTMLElement)||function(p){return p.toString()==="[object SafariRemoteNotification]"}(!window["safari"]||safari.pushNotification),prefix:function(){var styles=window.getComputedStyle(document.documentElement,""),pre=Array.prototype.slice.call(styles).join("").match(/-(moz|webkit|ms)-/)[1],dom="WebKit|Moz|MS".match(new RegExp("("+pre+")","i"))[1];return{dom:dom,lowercase:pre,css:"-"+pre+"-",js:pre[0].toUpperCase()+pre.substr(1)}}(),canSupport3D:function(){var canSupport=true;try{if(userAgent.indexOf("MSIE")!==-1||navigator.appVersion.indexOf("Trident/")>0){canSupport=false;console.log("Proper Support for 3D not detected for IE!")}else if(isSafari&&!isIOS){canSupport=false;console.log("Proper Support for 3D not detected for IOS!")}else{var android=userAgent.toString().toLowerCase().match(/android\s([0-9\.]*)/i);android=android?android[1]:undefined;if(android){android=parseInt(android,10);if(!isNaN(android)&&android<8){canSupport=false;console.log("Proper Support for 3D not detected for Android below 8.0!")}}}}catch(error){}return canSupport},__extends:function(child,parent){for(var key in parent)if(parent.hasOwnProperty(key))child[key]=parent[key];function Ctor(){this.constructor=child}Ctor.prototype=parent.prototype;child.prototype=new Ctor;child.__super=parent.prototype;return child}};var SOURCE_TYPE=DFLIP.SOURCE_TYPE,DISPLAY_TYPE=DFLIP.DISPLAY_TYPE,drag=utils.drag,mouseEvents=utils.mouseEvents,html=utils.html,isset=utils.isset,isnull=utils.isnull,toRad=utils.toRad,toDeg=utils.toDeg,transition=utils.transition,translateStr=utils.translateStr,resetBoxShadow=utils.resetBoxShadow,rotateStr=utils.rotateStr,bg=utils.bg,bgImage=utils.bgImage,src=utils.src,limitAt=utils.limitAt,distOrigin=utils.distOrigin,distPoints=utils.distPoints,angleByDistance=utils.angleByDistance,log=utils.log,nearestPowerOfTwo=utils.nearestPowerOfTwo,extendOptions=utils.extendOptions,getBasePage=utils.getBasePage,getScript=utils.getScript,fixMouseEvent=utils.fixMouseEvent,prefix=utils.prefix,isBookletMode=utils.isBookletMode,isRTLMode=utils.isRTLMode,isMobile=utils.isMobile,hasWebgl=utils.hasWebgl,isSafari=utils.isSafari,isIOS=utils.isIOS,__extends=utils.__extends;(function checkSetPresenceInImageData(){if(window.CanvasPixelArray){if(typeof window.CanvasPixelArray.prototype.set!=="function"){window.CanvasPixelArray.prototype.set=function(arr){for(var i=0,ii=this.length;i<ii;i++){this[i]=arr[i]}}}}else{var polyfill=false,versionMatch;if(isSafari){versionMatch=userAgent.match(/Version\/([0-9]+)\.([0-9]+)\.([0-9]+) Safari\//);polyfill=versionMatch&&parseInt(versionMatch[1])<6}if(polyfill){var contextPrototype=window.CanvasRenderingContext2D.prototype;var createImageData=contextPrototype.createImageData;contextPrototype.createImageData=function(w,h){var imageData=createImageData.call(this,w,h);imageData.data.set=function(arr){for(var i=0,ii=this.length;i<ii;i++){this[i]=arr[i]}};return imageData};contextPrototype=null}}})();(function checkRequestAnimationFrame(){function fakeRequestAnimationFrame(callback){window.setTimeout(callback,20)}if("requestAnimationFrame"in window){return}window.requestAnimationFrame=window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||fakeRequestAnimationFrame})();(function checkTypedArrayCompatibility(){if(typeof Uint8Array!=="undefined"){if(typeof Uint8Array.prototype.subarray==="undefined"){Uint8Array.prototype.subarray=function subarray(start,end){return new Uint8Array(this.slice(start,end))};Float32Array.prototype.subarray=function subarray(start,end){return new Float32Array(this.slice(start,end))}}if(typeof Float64Array==="undefined"){window.Float64Array=Float32Array}return}function subarray(start,end){return new TypedArray(this.slice(start,end))}function setArrayOffset(array,offset){if(arguments.length<2){offset=0}for(var i=0,n=array.length;i<n;++i,++offset){this[offset]=array[i]&255}}function TypedArray(arg1){var result,i,n;if(typeof arg1==="number"){result=[];for(i=0;i<arg1;++i){result[i]=0}}else if("slice"in arg1){result=arg1.slice(0)}else{result=[];for(i=0,n=arg1.length;i<n;++i){result[i]=arg1[i]}}result.subarray=subarray;result.buffer=result;result.byteLength=result.length;result.set=setArrayOffset;if(typeof arg1==="object"&&arg1.buffer){result.buffer=arg1.buffer}return result}window.Uint8Array=TypedArray;window.Int8Array=TypedArray;window.Uint32Array=TypedArray;window.Int32Array=TypedArray;window.Uint16Array=TypedArray;window.Float32Array=TypedArray;window.Float64Array=TypedArray})();var extendDFlipOptions=function(options){return $.extend(true,{},defaults,options)};var createUI=function(container,object){var uiClass="df-ui";var wrapperClass="df-ui-wrapper";var buttonClass=uiClass+"-"+"btn";var isRTL=isRTLMode(object.target);var ui=object.ui=$(html.div,{class:uiClass});var options=object.options;ui.dispose=function(){container.find("."+buttonClass).each(function(){$(this).off()});help.off();next.off();prev.off();play.off();zoom.off();zoomIn.off();zoomOut.off();page.off();sound.off();more.off();fullScreen.off();fit.off();share.off();start.off();end.off();pageModeButton.off();altPrev.off();altNext.off();thumbnail.off();outline.off();controls.remove();sizeControls.remove();prev.remove();next.remove();zoom.remove();if(ui.shareBox){if(ui.shareBox.dispose)ui.shareBox.dispose();ui.shareBox=null}document.removeEventListener("keyup",onKeyUp,false);window.removeEventListener("click",closeMoreOptions,false);ui.update=null;object=null};var validPage=function(pageNumber){if(isNaN(pageNumber))pageNumber=object.target._activePage;else if(pageNumber<1)pageNumber=1;else if(pageNumber>object.target.pageCount)pageNumber=object.target.pageCount;return pageNumber};var next=ui.next=$(html.div,{class:buttonClass+" "+uiClass+"-next "+options.icons["next"],title:isRTL?options.text.previousPage:options.text.nextPage,html:"<span>"+options.text.nextPage+"</span>"}).on("click",function(){object.next()});var prev=ui.prev=$(html.div,{class:buttonClass+" "+uiClass+"-prev "+options.icons["prev"],title:isRTL?options.text.nextPage:options.text.previousPage,html:"<span>"+options.text.previousPage+"</span>"}).on("click",function(){object.prev()});var play=$(html.div,{class:buttonClass+" "+uiClass+"-play "+options.icons["play"],title:options.text.play,html:"<span>"+options.text.play+"</span>"}).on("click",function(){var el=$(this);object.setAutoPlay(!el.hasClass(options.icons["pause"]))});if(options.autoPlay==true){ui.play=play;object.setAutoPlay(options.autoPlayStart)}var zoom=$(html.div,{class:wrapperClass+" "+uiClass+"-zoom"});var zoomIn=ui.zoomIn=$(html.div,{class:buttonClass+" "+uiClass+"-zoomin "+options.icons["zoomin"],title:options.text.zoomIn,html:"<span>"+options.text.zoomIn+"</span>"}).on("click",function(){object.zoom(1);ui.update();if(object.target.startPoint&&object.target.pan)object.target.pan(object.target.startPoint)});var zoomOut=ui.zoomOut=$(html.div,{class:buttonClass+" "+uiClass+"-zoomout "+options.icons["zoomout"],title:options.text.zoomOut,html:"<span>"+options.text.zoomOut+"</span>"}).on("click",function(){object.zoom(-1);ui.update();if(object.target.startPoint&&object.target.pan)object.target.pan(object.target.startPoint)});zoom.append(zoomIn).append(zoomOut);var page=ui.pageNumber=$(html.div,{class:buttonClass+" "+uiClass+"-page"}).on("change",function(){var pageNumber=parseInt(ui.pageInput.val(),10);pageNumber=validPage(pageNumber);object.gotoPage(pageNumber)}).on("keyup",function(event){if(event.keyCode==13){var pageNumber=parseInt(ui.pageInput.val(),10);pageNumber=validPage(pageNumber);if(pageNumber!==validPage(object.target._activePage||object._activePage))object.gotoPage(pageNumber)}});ui.pageInput=$('<input id="df_book_page_number" type="text"/>').appendTo(page);ui.pageLabel=$('<label for="df_book_page_number"/>').appendTo(page);var sizeControls=$(html.div,{class:wrapperClass+" "+uiClass+"-size"});var help=$(html.div,{class:buttonClass+" "+uiClass+"-help "+options.icons["help"],title:options.text.toggleHelp,html:"<span>"+options.text.toggleHelp+"</span>"}).on("click",function(){});var sound=ui.sound=$(html.div,{class:buttonClass+" "+uiClass+"-sound "+options.icons["sound"],title:options.text.toggleSound,html:"<span>"+options.text.toggleSound+"</span>"}).on("click",function(){options.soundEnable=!options.soundEnable;ui.updateSound()});ui.updateSound=function(){if(options.soundEnable==false||options.soundEnable=="false")sound.addClass("disabled");else sound.removeClass("disabled")};ui.updateSound();function closeSearchOptions(event){ui.search.removeClass("df-active")}if(typeof options.source=="string"&&options.search==true){var search=ui.search=$(html.div,{class:buttonClass+" "+uiClass+"-search "+options.icons["search"]}).on("click",function(event){if(!search.hasClass("df-active")){$(this).addClass("df-active");event.stopPropagation()}});window.addEventListener("click",closeSearchOptions,false);var searchContainer=$(html.div,{class:"search-container"});search.append(searchContainer)}var more=ui.more=$(html.div,{class:buttonClass+" "+uiClass+"-more "+options.icons["more"]}).on("click",function(event){if(!more.hasClass("df-active")){$(this).addClass("df-active");event.stopPropagation()}});function closeMoreOptions(event){more.removeClass("df-active")}window.addEventListener("click",closeMoreOptions,false);var moreContainer=$(html.div,{class:"more-container"});more.append(moreContainer);if(typeof options.source=="string"&&options.enableDownload==true){var downloadClass=buttonClass+" "+uiClass+"-download "+options.icons["download"];var download=ui.download=$('<a download target="_blank" class="'+downloadClass+'"><span>'+options.text.downloadPDFFile+"</span></a>");download.attr("href",options.source).attr("title",options.text.downloadPDFFile)}var fullscreenEnabled=utils.hasFullscreenEnabled();if(!fullscreenEnabled){container.addClass("df-custom-fullscreen")}ui.switchFullscreen=function(){var fullscreenElement=utils.getFullscreenElement();var container=object.container[0];if(ui.isFullscreen!=true){object.container.addClass("df-fullscreen");if(container.requestFullscreen){container.requestFullscreen()}else if(container.msRequestFullscreen){container.msRequestFullscreen()}else if(container.mozRequestFullScreen){container.mozRequestFullScreen()}else if(container.webkitRequestFullscreen){container.webkitRequestFullscreen()}ui.isFullscreen=true}else{object.container.removeClass("df-fullscreen");ui.isFullscreen=false;if(document.exitFullscreen){if(document.fullscreenElement)document.exitFullscreen()}else if(document.msExitFullscreen){document.msExitFullscreen()}else if(document.mozCancelFullScreen){if(document.fullscreenElement)document.mozCancelFullScreen()}else if(document.webkitExitFullscreen){document.webkitExitFullscreen()}}if(!utils.hasFullscreenEnabled()){setTimeout(function(){object.resize()},50)}};var fullScreen=ui.fullScreen=$(html.div,{class:buttonClass+" "+uiClass+"-fullscreen "+options.icons["fullscreen"],title:options.text.toggleFullscreen,html:"<span>"+options.text.toggleFullscreen+"</span>"}).on("click",ui.switchFullscreen);var fit=ui.fit=$(html.div,{class:buttonClass+" "+uiClass+"-fit "+options.icons["fitscreen"]}).on("click",function(){$(this).toggleClass("df-button-fit-active")});sizeControls.append(fullScreen);var controls=$(html.div,{class:wrapperClass+" "+uiClass+"-controls"});var shareBox=ui.shareBox=new DFLIP.Share(container,options);var share=ui.share=$(html.div,{class:buttonClass+" "+uiClass+"-share "+options.icons["share"],title:options.text.share,html:"<span>"+options.text.share+"</span>"}).on("click",function(event){if(ui.shareBox.isOpen==true)ui.shareBox.close();else{ui.shareBox.update(object.getURLHash());ui.shareBox.show()}});var start=ui.startPage=$(html.div,{class:buttonClass+" "+uiClass+"-start "+(isRTL?options.icons["end"]:options.icons["start"]),title:options.text.gotoFirstPage,html:"<span>"+options.text.gotoFirstPage+"</span>"}).on("click",function(){object.start()});var end=ui.endPage=$(html.div,{class:buttonClass+" "+uiClass+"-end "+(isRTL?options.icons["start"]:options.icons["end"]),title:options.text.gotoLastPage,html:"<span>"+options.text.gotoLastPage+"</span>"}).on("click",function(){object.end()});var pageModeButton=ui.pageMode=$(html.div,{class:buttonClass+" "+uiClass+"-pagemode "+options.icons["singlepage"],html:"<span>"+options.text.singlePageMode+"</span>"}).on("click",function(){var el=$(this);object.setPageMode(!el.hasClass(options.icons["doublepage"]))});object.setPageMode(object.target.pageMode==DFLIP.PAGE_MODE.SINGLE);var altPrev=ui.altPrev=$(html.div,{class:buttonClass+" "+uiClass+"-prev"+" "+uiClass+"-alt "+options.icons["prev"],title:isRTL?options.text.nextPage:options.text.previousPage,html:"<span>"+options.text.previousPage+"</span>"}).on("click",function(){object.prev()});var altNext=ui.altNext=$(html.div,{class:buttonClass+" "+uiClass+"-next"+" "+uiClass+"-alt "+options.icons["next"],title:isRTL?options.text.previousPage:options.text.nextPage,html:"<span>"+options.text.nextPage+"</span>"}).on("click",function(){object.next()});var thumbnail=ui.thumbnail=$(html.div,{class:buttonClass+" "+uiClass+"-thumbnail "+options.icons["thumbnail"],title:options.text.toggleThumbnails,html:"<span>"+options.text.toggleThumbnails+"</span>"}).on("click",function(){var $this=$(this);if(object.target.thumbContainer){var thumbContainer=object.target.thumbContainer;thumbContainer.toggleClass("df-sidemenu-visible");$this.toggleClass("df-active")}else{object.contentProvider.initThumbs();$this.toggleClass("df-active")}if($this.hasClass("df-active")){$this.siblings(".df-active").trigger("click")}ui.update(true)});var outline=ui.outline=$(html.div,{class:buttonClass+" "+uiClass+"-outline "+options.icons["outline"],title:options.text.toggleOutline,html:"<span>"+options.text.toggleOutline+"</span>"}).on("click",function(){var $this=$(this);if(object.target.outlineContainer){var outlineContainer=object.target.outlineContainer;$this.toggleClass("df-active");outlineContainer.toggleClass("df-sidemenu-visible");if($this.hasClass("df-active")){$this.siblings(".df-active").trigger("click")}ui.update(true)}});var allControls=options.allControls.replace(/ /g,"").split(","),moreControls=","+options.moreControls.replace(/ /g,"")+",",hideControls=","+options.hideControls.replace(/ /g,"")+",";if(isIOS&&isMobile){hideControls+=",fullScreen,"}var moreControlsArray=moreControls.split(",");for(var controlCount=0;controlCount<allControls.length;controlCount++){var controlName=allControls[controlCount];if(hideControls.indexOf(","+controlName+",")<0){var control=ui[controlName];if(control!=null&&typeof control=="object"){if(moreControls.indexOf(","+controlName+",")>-1&&controlName!=="more"&&controlName!=="pageNumber"){moreContainer.append(control)}else{controls.append(control)}}}}container.append(controls).append(prev).append(next).append(zoom);var ctrlDown=false,shiftDown=false,altDown=false;var shiftKey=16,ctrlKey=17,altKey=18,sKey=83,vKey=86,cKey=67,eKey=69,gKey=71,nKey=78,oKey=79,deleteKey=46,rightKey=39,leftKey=37,escKey=27;document.addEventListener("keyup",onKeyUp,false);function onKeyUp(event){switch(event.keyCode){case escKey:if(ui.isFullscreen==true){ui.fullScreen.trigger("click")}else if(window.dfLightBox&&window.dfActiveLightBoxBook){window.dfLightBox.closeButton.trigger("click")}break;case shiftKey:shiftDown=false;break;case ctrlKey:ctrlDown=false;break;case altKey:altDown=false;break;case leftKey:object.prev();break;case rightKey:object.next();break;default:break}}ui.update=function(resize){log("ui update");var target=object.target;var pageNumber=validPage(target._activePage||object._activePage);var pageCount=target.pageCount||object.pageCount;var isRTL=target.direction==DFLIP.DIRECTION.RTL,isStart=pageNumber==1||pageNumber==0,isEnd=pageNumber==pageCount;ui.next.show();ui.prev.show();ui.altNext.removeClass("disabled");ui.altPrev.removeClass("disabled");if(isStart&&!isRTL||isEnd&&isRTL){ui.prev.hide();ui.altPrev.addClass("disabled")}if(isEnd&&!isRTL||isStart&&isRTL){ui.next.hide();ui.altNext.addClass("disabled")}ui.pageInput.val(pageNumber);ui.pageLabel.html(pageNumber+"/"+pageCount);if(container.find(".df-sidemenu-visible").length>0){container.addClass("df-sidemenu-open")}else{container.removeClass("df-sidemenu-open")}if(resize==true)object.resize();if(target.contentProvider.zoomScale==target.contentProvider.maxZoom){ui.zoomIn.addClass("disabled")}else{ui.zoomIn.removeClass("disabled")}if(target.contentProvider.zoomScale==1){ui.zoomOut.addClass("disabled")}else{ui.zoomOut.removeClass("disabled")}};if(object.target!=null){object.target.ui=ui}if(options.onCreateUI!=null)options.onCreateUI(object)};var PreviewStage=null;function RegisterMockupObjects(){PreviewStage=function(_super){__extends(PreviewStage,_super);function PreviewStage(parameters){parameters=parameters||{};var _this=this;_super.call(this,parameters);_this.options=parameters;_this.canvas=$(_this.renderer.domElement).addClass("df-3dcanvas");_this.container=parameters.container;_this.container.append(_this.canvas);_this.type="PreviewStage";_this.mouse=new THREE.Vector2;_this.raycaster=new THREE.Raycaster;_this.camera.position.set(0,20,600);_this.camera.lookAt(new THREE.Vector3(0,0,0));_this.spotLight.position.set(-220,330,550);_this.spotLight.castShadow=isMobile?false:parameters.webglShadow;if(_this.spotLight.shadow){_this.spotLight.shadow.bias=-8e-4}_this.spotLight.intensity=isset(parameters.spotLightIntensity,defaults.spotLightIntensity);_this.ambientLight.color=new THREE.Color(isset(parameters.ambientLightColor,defaults.ambientLightColor));_this.ambientLight.intensity=isset(parameters.ambientLightIntensity,defaults.ambientLightIntensity);var material=new THREE.ShadowMaterial;material.opacity=isset(parameters.shadowOpacity,defaults.shadowOpacity);_this.ground.material=material;_this.ground.position.z=-2;_this.orbitControl.maxAzimuthAngle=0;_this.orbitControl.minAzimuthAngle=0;_this.orbitControl.minPolarAngle=Math.PI/2;_this.orbitControl.maxPolarAngle=2.2;_this.orbitControl.mouseButtons.ORBIT=THREE.MOUSE.RIGHT;_this.orbitControl.mouseButtons.PAN=-1;_this.orbitControl.maxDistance=5e3;_this.orbitControl.minDistance=50;_this.orbitControl.noZoom=true;_this.selectiveRendering=true;_this.orbitControl.zoomSpeed=5;_this.orbitControl.keyPanSpeed=0;_this.orbitControl.center.set(0,0,0);_this.orbitControl.update();_this.swipe_threshold=isMobile?15:20;var cssRenderer=_this.cssRenderer=new THREE.CSS3DRenderer;$(cssRenderer.domElement).css({position:"absolute",top:0,pointerEvents:"none"}).addClass("df-3dcanvas df-csscanvas");_this.container[0].appendChild(cssRenderer.domElement);var cssScene=_this.cssScene=new THREE.Scene;var divLeftDOM=document.createElement("div");divLeftDOM.className="df-page-content df-page-content-left";var divRightDOM=document.createElement("div");divRightDOM.className="df-page-content df-page-content-right";var divLeft=cssScene.divLeft=new THREE.CSS3DObject(divLeftDOM);var divRight=cssScene.divRight=new THREE.CSS3DObject(divRightDOM);cssScene.add(divLeft);cssScene.add(divRight);_this.resizeCallback=function(){cssRenderer.setSize(_this.canvas.width(),_this.canvas.height())};function requestRender(){_this.renderRequestPending=true}window.addEventListener(mouseEvents.move,requestRender,false);window.addEventListener("keyup",requestRender,false);_this.dispose=function(){-_this.clearChild();_this.render();window.removeEventListener(mouseEvents.move,requestRender,false);if(_this.options.scrollWheel==true){_this.container[0].removeEventListener("mousewheel",onMouseWheel,false);_this.container[0].removeEventListener("DOMMouseScroll",onMouseWheel,false)}window.removeEventListener("keyup",requestRender,false);_this.renderer.domElement.removeEventListener("mousemove",editor_mouseMove,false);_this.renderer.domElement.removeEventListener("touchmove",editor_mouseMove,false);_this.renderer.domElement.removeEventListener("mousedown",editor_mouseDown,false);_this.renderer.domElement.removeEventListener("touchstart",editor_mouseDown,false);_this.renderer.domElement.removeEventListener("mouseup",editor_mouseUp,false);_this.renderer.domElement.removeEventListener("touchend",editor_mouseUp,false);_this.canvas.remove();cssRenderer.domElement.parentNode.removeChild(cssRenderer.domElement);cssRenderer=null;_this.renderCallback=null;_this.renderCallback=null;_this.orbitControl.dispose();_this.orbitControl=null;_this.renderer.dispose();_this.cancelRAF()};_this.renderCallback=function(){if(TWEEN.getAll().length>0)_this.renderRequestPending=true;TWEEN.update();cssRenderer.render(cssScene,_this.camera)};var onMouseWheel=function(event){var delta=0;if(event.wheelDelta!=null){delta=event.wheelDelta}else if(event.detail!=null){delta=-event.detail}if(delta){var currentZoom=_this.previewObject.contentProvider.zoomScale;if(delta>0&¤tZoom==1||delta<0&¤tZoom>1){event.preventDefault()}_this.previewObject.zoom(delta>0?1:-1)}requestRender()};var editor_mouseMove=function(event){_this.renderRequestPending=true;event=fixMouseEvent(event);if(_this.isMouseDown&&event.movementX!=0&&event.movementY!=0){_this.isMouseMoving=true}if(event.touches!=null&&event.touches.length==2&&_this.startTouches!=null){_this.zoomDirty=true;var touchCenter=utils.getVectorAvg(utils.getTouches(event,_this.container.offset())),newScale=utils.calculateScale(_this.startTouches,utils.getTouches(event)),scale=newScale/_this.lastScale;var zoom=_this.previewObject.contentProvider.zoomScale,x=touchCenter.x,y=touchCenter.y;_this.camera.position.z=_this.originalZ/newScale;_this.lastScale=newScale;_this.lastZoomCenter=touchCenter;event.preventDefault();return}if(_this.isMouseDown==true&&_this.previewObject.contentProvider.zoomScale==1){var swipe_dist=event.pageX-_this.lastPos,swipe_time=performance.now()-_this.lastTime;if(Math.abs(swipe_dist)>_this.swipe_threshold){if(swipe_dist<0){_this.target.next()}else{_this.target.prev()}event.preventDefault();_this.isMouseDown=false}_this.lastPos=event.pageX;_this.lastTime=performance.now()}};var editor_mouseDown=function(event){event=fixMouseEvent(event);if(event.touches!=null&&event.touches.length==2&&_this.startTouches==null){_this.startTouches=utils.getTouches(event);_this.lastScale=1;_this.originalZ=_this.camera.position.z*1}document.activeElement.blur();_this.mouseValue=event.pageX+","+event.pageY;_this.isMouseMoving=false;_this.isMouseDown=true;_this.lastPos=event.pageX;_this.lastTime=performance.now()};var editor_click=function(event){_this.isMouseDown=false;if(event.button!==0)return this;var mouseValue=event.pageX+","+event.pageY;if(_this.isMouseMoving){}else if(mouseValue==_this.mouseValue){event=event||window.event;event=$.event.fix(event);var mouse=_this.mouse,raycaster=_this.raycaster;mouse.x=event.offsetX/_this.canvas.innerWidth()*2-1;mouse.y=1-event.offsetY/_this.canvas.innerHeight()*2;raycaster.setFromCamera(mouse,_this.camera);var intersects=raycaster.intersectObjects(_this.target instanceof MOCKUP.Bundle?_this.target.children:[_this.target],true);if(intersects.length>0){var object,objectCount=0;do{object=intersects[objectCount]!=null?intersects[objectCount].object:null;objectCount++}while((object instanceof THREE.BoxHelper||!(object instanceof MOCKUP.Paper)||object.isFlipping==true)&&objectCount<intersects.length);if(object.userData.object!=null){}else{if(object.angles[1]>90){if(object.isEdge!=true)_this.target.next()}else{if(object.isEdge!=true)_this.target.prev()}}}else{}}};var editor_mouseUp=function(event){event=fixMouseEvent(event);if(event.touches!=null&&event.touches.length==0){var zoom=_this.previewObject.contentProvider.zoomScale;if(_this.zoomDirty==true){_this.previewObject.contentProvider.zoomScale=utils.limitAt(_this.previewObject.contentProvider.zoomScale*_this.lastScale,1,_this.previewObject.contentProvider.maxZoom);_this.previewObject.zoomValue=_this.previewObject.contentProvider.zoomScale*1;_this.previewObject.resize();_this.zoomDirty=false}_this.lastScale=null;_this.startTouches=null}if(event.touches!=null&&event.touches.length>1)return;editor_click(event)};_this.renderer.domElement.addEventListener("mousemove",editor_mouseMove,false);_this.renderer.domElement.addEventListener("touchmove",editor_mouseMove,false);_this.renderer.domElement.addEventListener("mousedown",editor_mouseDown,false);_this.renderer.domElement.addEventListener("touchstart",editor_mouseDown,false);_this.renderer.domElement.addEventListener("mouseup",editor_mouseUp,false);_this.renderer.domElement.addEventListener("touchend",editor_mouseUp,false);if(_this.options.scrollWheel==true){_this.container[0].addEventListener("mousewheel",onMouseWheel,false);_this.container[0].addEventListener("DOMMouseScroll",onMouseWheel,false)}$(_this.renderer.domElement).css({display:"block"});$(window).trigger("resize");return this}PreviewStage.prototype.width=function(){return this.container.width()};PreviewStage.prototype.height=function(){return this.container.height()};return PreviewStage}(MOCKUP.Stage);MOCKUP.PreviewStage=PreviewStage;var BookPaper=function(_super){__extends(BookPaper,_super);function BookPaper(parameters,stage){parameters=parameters||{};parameters.folds=1;_super.call(this,parameters,stage);this.angle=0;this.isFlipping=false;this.material.materials[5].transparent=true;this.material.materials[4].transparent=true;this.type="BookPaper"}BookPaper.prototype.tween=function(oldAngle,newAngle){var page=this;var epsilon=1e-5;page.originalStiff=page.stiffness;var oldTarget=page.newStiffness;var isBooklet=isBookletMode(page.parent);var diff=newAngle-oldAngle;var isRight=oldAngle>90;var isRTL=page.parent.direction==DFLIP.DIRECTION.RTL;page.init={angle:oldAngle,angle2:oldAngle<90?0:180,stiff:page.originalStiff,index:isRight&&!isRTL||!isRight&&isRTL?1:0};page.first={angle:oldAngle+diff/4,angle2:oldAngle<90?90:90,stiff:page.originalStiff,index:isRight&&!isRTL||!isRight&&isRTL?1:.25};page.mid={angle:oldAngle+diff*2/4,angle2:oldAngle<90?135:45,stiff:page.newStiffness,index:isRight&&!isRTL||!isRight&&isRTL?.5:.5};page.mid2={angle:oldAngle+diff*3/4,angle2:oldAngle<90?180:0,stiff:page.newStiffness,index:isRight&&!isRTL||!isRight&&isRTL?.25:1};page.end={angle:newAngle,angle2:oldAngle<90?180:0,stiff:page.newStiffness,index:isRight&&!isRTL||!isRight&&isRTL?0:1};page.isFlipping=true;var update=function(tween,event){page.angles[1]=tween.angle;page.angles[4]=page.isHard?tween.angle:tween.angle2;if(page.isHard==true){page.stiffness=0}else{page.stiffness=tween.stiff/(oldTarget+epsilon)*(page.newStiffness+epsilon);page.stiffness=isNaN(page.stiffness)?0:tween.stiff}if(isBooklet){page.material.materials[5].opacity=page.material.materials[4].opacity=tween.index;page.castShadow=isRight&&!isRTL||!isRight&&isRTL?tween.index>.5:tween.index>.5}page.updateAngle(true)};if(isBooklet&&(!isRight&&!isRTL||isRight&&isRTL)){page.material.materials[5].opacity=page.material.materials[4].opacity=0;page.castShadow=false}page.currentTween=new TWEEN.Tween(page.init).to({angle:[page.first.angle,page.mid.angle,page.mid2.angle,page.end.angle],angle2:[page.first.angle2,page.mid.angle2,page.mid2.angle2,page.end.angle2],stiff:[page.first.stiff,page.mid.stiff,page.mid2.stiff,page.end.stiff],index:[page.first.index,page.mid.index,page.mid2.index,page.end.index]},page.parent.duration).onUpdate(function(event){update(this,event)}).easing(TWEEN.Easing.Sinusoidal.Out).onComplete(function(event){page.stiffness=page.newStiffness;page.updateAngle();page.material.materials[5].opacity=page.material.materials[4].opacity=1;page.castShadow=true;page.isFlipping=false;if(page.parent&&page.parent.refresh)page.parent.refresh()}).start()};return BookPaper}(MOCKUP.FlexBoxPaper);MOCKUP.BookPaper=BookPaper;var Book=function(_super){__extends(Book,_super);function Book(parameters,stage){parameters=parameters||{};parameters.segments=parameters.segments||50;this.pageCount=parameters.pageCount;this.height=parameters.height;this.width=parameters.width;this.direction=parameters.direction||DFLIP.DIRECTION.LTR;this.startPage=1;this.endPage=this.pageCount;this.stackCount=parameters.stackCount||6;this.materials=[];_super.call(this,parameters,stage);this.angles=[0,0,0,0,0,0];this.stiffness=parameters.stiffness==null?1.5:parameters.stiffness;this.hardConfig=parameters.hard;this._activePage=parameters.openPage||this.startPage;this.createStack(parameters);this.pageMode=parameters.pageMode||(isMobile||this.pageCount<=2?DFLIP.PAGE_MODE.SINGLE:DFLIP.PAGE_MODE.DOUBLE);this.singlePageMode=parameters.singlePageMode||(isMobile?DFLIP.SINGLE_PAGE_MODE.BOOKLET:DFLIP.SINGLE_PAGE_MODE.ZOOM);this.type="Book"}Book.prototype.getPageByNumber=function(pageNumber){var relativePageNumber=isBookletMode(this)?isRTLMode(this)?pageNumber+1:pageNumber:Math.floor((pageNumber-1)/2);return this.getObjectByName(relativePageNumber.toString())};Book.prototype.isPageHard=function(pageNumber){return utils.isHardPage(this.hardConfig,pageNumber,this.pageCount)};Book.prototype.activePage=function(pageNumber){if(pageNumber==null)return this._activePage;this.gotoPage(pageNumber)};Book.prototype.gotoPage=function(pageNumber){pageNumber=parseInt(pageNumber,10);this._activePage=pageNumber;if(this.autoPlay==true){this.previewObject.setAutoPlay(this.autoPlay)}this.updatePage(pageNumber);if(this&&this.thumblist&&this.thumblist.review)this.thumblist.review()};Book.prototype.moveBy=function(step){var nextPage=this._activePage+step;nextPage=limitAt(nextPage,this.startPage,this.endPage);if(this.firstFlipped!=true){this.previewObject.analytics({eventAction:"First Page Flip",options:this.previewObject.options});this.firstFlipped=true}this.gotoPage(nextPage)};Book.prototype.next=function(step){if(step==null)step=this.direction==DFLIP.DIRECTION.RTL?-this.pageMode:this.pageMode;this.moveBy(step)};Book.prototype.prev=function(step){if(step==null)step=this.direction==DFLIP.DIRECTION.RTL?this.pageMode:-this.pageMode;this.moveBy(step)};Book.prototype.updateAngle=function(){var startAngle=this.angles[1];var endAngle=this.angles[4];var spreadAngle=endAngle-startAngle;var stacks=this.stackCount;for(var _stackCount=0;_stackCount<stacks;_stackCount++){var clone=this.children[_stackCount];clone.angles[1]=startAngle+_stackCount*spreadAngle/(stacks*100);clone.stiffness=this.stiffness;clone.updateAngle()}};Book.prototype.refresh=function(){this.updatePage(this._activePage);if(this.flipCallback!=null)this.flipCallback()};Book.prototype.updatePage=function(pageNumber){var isRTL=this.direction==DFLIP.DIRECTION.RTL,isBooklet=isBookletMode(this),newBaseNumber=getBasePage(pageNumber);var pageDivisor=isBooklet?1:2;pageNumber=Math.floor(pageNumber/pageDivisor);if(isRTL)pageNumber=Math.ceil(this.pageCount/pageDivisor)-pageNumber;var oldBaseNumber=this.oldBaseNumber||0;var pageCount=this.pageCount/pageDivisor;var stackCount=this.stackCount;var angleShift=.02;var depth=.4;var stiffFactor=isBooklet?0:(.5-Math.abs(pageCount/2-pageNumber)/pageCount)/this.stiffness;var positionFactor=1;var midPoint=Math.floor(stackCount/2);var isLeft=false;if(oldBaseNumber>pageNumber){isLeft=true;this.children[stackCount-1].skipFlip=true;this.children.unshift(this.children.pop())}else if(oldBaseNumber<pageNumber){this.children[0].skipFlip=true;this.children.push(this.children.shift())}var remainingPages=pageCount-pageNumber;var stackDepth=5/pageCount;var leftDepth=stackDepth*pageNumber/2;var rightDepth=stackDepth*remainingPages/2;var maxDepth=leftDepth<rightDepth?rightDepth:leftDepth;for(var _pageCount=0;_pageCount<stackCount;_pageCount++){var page=this.children[_pageCount];var color=page.color;var oldAngle=page.angles[1];var newAngle;var relativePageNumber=pageNumber-midPoint+_pageCount;if(isRTL)relativePageNumber=isBooklet?this.pageCount-relativePageNumber:Math.ceil(this.pageCount/2)-relativePageNumber-1;var isHard=page.isHard=this.isPageHard(relativePageNumber);var oldName=page.name;page.isEdge=false;if(_pageCount==0){page.depth=leftDepth<depth?depth:leftDepth}else if(_pageCount==stackCount-1){page.depth=rightDepth<depth?depth:rightDepth}else{page.depth=depth;page.isEdge=false}if(page.isFlipping==true){page.depth=depth}page.position.x=0;var leftAngle=angleShift*_pageCount,rightAngle=180-angleShift*(_pageCount-midPoint)+angleShift*_pageCount;if(_pageCount<midPoint){page.newStiffness=isHard||this.stiffness==0?0:stiffFactor/(pageNumber/pageCount)/4;newAngle=leftAngle;page.position.z=maxDepth-(-_pageCount+midPoint)*depth;if(isLeft==true)page.position.z-=depth}else{newAngle=rightAngle;page.newStiffness=isHard||this.stiffness==0?0:stiffFactor/(Math.abs(pageCount-pageNumber)/pageCount)/4;page.position.z=maxDepth-(-stackCount+_pageCount+midPoint+1)*depth-page.depth}if(page.isFlipping==false){if(Math.abs(oldAngle-newAngle)>20&&page.skipFlip==false){page.depth=depth;var predicted=page.stiffness;if(oldAngle>newAngle){predicted=stiffFactor/(Math.abs(pageCount-pageNumber)/pageCount)/4}else{predicted=stiffFactor/(pageNumber/pageCount)/4}page.position.z+=depth;page.stiffness=isNaN(predicted)?page.stiffness:predicted;page.updateAngle(true);page.targetStiffness=isHard?0:_pageCount<pageNumber?stiffFactor/(Math.abs(pageCount-pageNumber)/pageCount)/4:stiffFactor/(pageNumber/pageCount)/4;page.targetStiffness=isHard?0:isNaN(page.targetStiffness)?page.stiffness:page.targetStiffness;page.isFlipping=true;page.tween(oldAngle,newAngle);if(this.preFlipCallback!=null)this.preFlipCallback()}else{page.skipFlip=false;page.newStiffness=isNaN(page.newStiffness)?0:page.newStiffness;if(page.angles[1]!=newAngle||page.stiffness!=page.newStiffness||page.depth!=page.oldDepth){page.angles[1]=page.angles[4]=newAngle;page.stiffness=page.newStiffness;page.updateAngle(true)}else{}}}page.visible=isBooklet?isRTL?_pageCount<midPoint||page.isFlipping:_pageCount>=midPoint||page.isFlipping:relativePageNumber>=0&&relativePageNumber<pageCount||isBooklet&&relativePageNumber==pageCount;if(this.requestPage!=null){page.name=relativePageNumber.toString();if(page.name!=oldName){page.textureLoaded=false;page.frontImage(defaults.textureLoadFallback);page.frontPageStamp="-1";page.frontTextureLoaded=false;page.thumbLoaded=false;page.backImage(defaults.textureLoadFallback);page.backPageStamp="-1";page.backTextureLoaded=false;this.requestPage()}}page.oldDepth=page.depth;var xPos=Math.abs(page.geometry.boundingBox.max.x)<Math.abs(page.geometry.boundingBox.min.x)?page.geometry.boundingBox.max.x:page.geometry.boundingBox.min.x;page.position.x=page.isEdge==true&&page.isFlipping==false?_pageCount<midPoint?xPos:-xPos:0}this.oldBaseNumber=pageNumber;if(this.updatePageCallback!=null)this.updatePageCallback()};Book.prototype.createCover=function(parameters){parameters.width=parameters.width*2;this.cover=new MOCKUP.BiFold(parameters);this.add(this.cover)};Book.prototype.createStack=function(parameters){var colors="red,green,blue,yellow,orange,black".split(",");for(var _stackCount=0;_stackCount<this.stackCount;_stackCount++){parameters.angles=[,this.stackCount-_stackCount];parameters.stiffness=(this.stackCount-_stackCount)/100;var clone=new MOCKUP.BookPaper(parameters);clone.angles[1]=180;clone.index=_stackCount;clone.updateAngle();clone.textureReady=false;clone.textureRequested=false;this.add(clone);clone.color=colors[_stackCount];clone.position.z=-1*_stackCount}};Book.prototype.shininess=function(shininess){if(shininess==null){return this.mainObject.shininess()}else{this.mainObject.shininess(shininess)}};Book.prototype.bumpScale=function(bumpScale){if(bumpScale==null){return this.mainObject.bumpScale()}else{this.mainObject.bumpScale(bumpScale)}};Book.prototype.frontImage=function(frontImage){if(frontImage==null){return this.mainObject.frontImage()}else{this.mainObject.frontImage(frontImage)}};Book.prototype.backImage=function(backImage){if(backImage==null){return this.mainObject.backImage()}else{this.mainObject.backImage(backImage)}};return Book}(MOCKUP.Bundle);MOCKUP.Book=Book}var PreviewObject=function(_super){function PreviewObject(parameters){parameters=parameters||{};this.type="PreviewObject";var _this=this;_this.zoomValue=1;function resizeDelay(){setTimeout(function(){_this.resize()},50)}window.addEventListener("resize",resizeDelay,false);this.sound=document.createElement("audio");this.sound.setAttribute("src",parameters.soundFile+"?ver="+DFLIP.version);this.sound.setAttribute("type","audio/mpeg");this.autoPlayFunction=function(){if(_this&&_this.target.autoPlay){if(_this.target.direction==DFLIP.DIRECTION.RTL)_this.target.prev();else _this.target.next()}};this.dispose=function(){clearInterval(this.autoPlayTimer);this.autoPlayTimer=null;this.autoPlayFunction=null;if(this.target&&this.target.children){for(var count=0;count<this.target.children.length;count++){var page=this.target.children[count];if(page&&page.currentTween)page.currentTween.stop()}}if(this.zoomTween){if(this.zoomTween.stop)this.zoomTween.stop();this.zoomTween=null}if(this.container&&this.container.info&&this.container.info.remove)this.container.info.remove();if(this.target&&this.target.dispose)this.target.dispose();this.target=null;if(this.stage&&this.stage.dispose)this.stage.dispose();this.stage=null;if(this.ui&&this.ui.dispose)this.ui.dispose();this.ui=null;if(this.contentProvider&&this.contentProvider.dispose)this.contentProvider.dispose();this.contentProvider=null;window.removeEventListener("resize",resizeDelay)}}PreviewObject.prototype={start:function(){this.target.gotoPage(this.target.startPage)},end:function(){this.target.gotoPage(this.target.endPage)},next:function(){},prev:function(){},getPageTextContent:function(pageIndex){return this.contentProvider.pdfDocument.getPage(pageIndex+1).then(function(page){return page.getTextContent({normalizeWhitespace:true})})},calculateSize:function(containerHeight,stageWidth,maxHeight,paddingHeight,paddingWidth,isAutoHeight,pageRatio,isSingle){var stageHeight=containerHeight;var stageInnerWidth=stageWidth-paddingWidth;var stageInnerHeight=stageHeight-paddingHeight;var autoWidth=Math.ceil(isSingle?stageInnerWidth:stageInnerWidth/2);var autoHeight=autoWidth/pageRatio;var refHeight=null;if(isAutoHeight){refHeight=Math.min(autoHeight,maxHeight-paddingHeight);stageHeight=refHeight}else{refHeight=Math.min(stageInnerHeight,maxHeight-paddingHeight)}var isWide=autoHeight>refHeight;var width,height;if(isWide){height=refHeight;width=Math.floor(height*pageRatio)}else{width=autoWidth;height=Math.ceil(autoWidth/pageRatio)}if(isAutoHeight){stageHeight=Math.max(height+paddingHeight,320)}return{stageHeight:stageHeight,isWide:isWide,height:height,width:width}},zoom:function(delta){this.pendingZoom=true;this.zoomDelta=delta;this.resize();if(this.ui)this.ui.update()},resize:function(){var _this=this;if(_this.target==null||_this.target.ui==null||_this.target.contentProvider==null||_this.target.contentProvider.viewport==null||_this.target.stage==null)return;if(this.ui&&this.ui.isFullscreen==true&&utils.hasFullscreenEnabled()==true&&utils.getFullscreenElement()==null){this.ui.switchFullscreen()}var target=_this.target,container=_this.container,options=_this.options,stage=target.stage,contentProvider=target.contentProvider,pageRatio=contentProvider.pageRatio,zoomViewport=contentProvider.zoomViewport,isRTL=isRTLMode(target),is3d=target.mode!=="css",isLandScape=contentProvider.pageRatio>1,isAutoHeight=this.ui.isFullscreen==true?false:options.height==="auto",isWide,height,width,cameraZ,fov,zoom,maxZoom,sideShift=container.hasClass("df-sidemenu-open")?220:0,isSingle=this.target.pageMode==DFLIP.PAGE_MODE.SINGLE;var containerWidth=container.width();if(containerWidth<400){_this.container.addClass("df-xs")}else{_this.container.removeClass("df-xs")}var controlsHeight=container.find(".df-ui-controls").height();var paddingTop=options.paddingTop+(options.controlsPosition==DFLIP.CONTROLSPOSITION.TOP?controlsHeight:0),paddingRight=options.paddingRight,paddingBottom=options.paddingBottom+(options.controlsPosition==DFLIP.CONTROLSPOSITION.BOTTOM?controlsHeight:0),paddingLeft=options.paddingLeft;paddingTop=isNaN(paddingTop)?0:limitAt(paddingTop,0,paddingTop),paddingBottom=isNaN(paddingBottom)?0:limitAt(paddingBottom,0,paddingBottom),paddingLeft=isNaN(paddingLeft)?0:limitAt(paddingLeft,0,paddingLeft),paddingRight=isNaN(paddingRight)?0:limitAt(paddingRight,0,paddingRight);var paddingHeight=paddingTop+paddingBottom,paddingWidth=paddingLeft+paddingRight;var stageWidth=containerWidth-sideShift;container.height(options.height);var maxHeight=$(window).height();var containerHeight=Math.min(container.height(),maxHeight);var sizes=_this.calculateSize(containerHeight,stageWidth,maxHeight,paddingHeight,paddingWidth,isAutoHeight,pageRatio,isSingle);if(isAutoHeight){containerHeight=stageHeight=_this.calculateSize(containerHeight,stageWidth+sideShift,maxHeight,paddingHeight,paddingWidth,isAutoHeight,pageRatio,isSingle).stageHeight}else{containerHeight=stageHeight=sizes.stageHeight}container.height(containerHeight);var stageHeight=containerHeight;var stageInnerWidth=stageWidth-paddingWidth,stageInnerHeight=stageHeight-paddingHeight;width=Math.floor(isSingle?stageInnerWidth:stageInnerWidth/2);height=Math.floor(width/pageRatio);isWide=height>stageInnerHeight;if(isWide){height=stageInnerHeight;width=height*pageRatio}maxZoom=contentProvider.maxZoom=contentProvider.zoomViewport.height/height;if(_this.zoomValue==null)_this.zoomValue=1;if(contentProvider.zoomScale==null)contentProvider.zoomScale=1;if(_this.pendingZoom==true&&_this.zoomDelta!=null){var delta=_this.zoomDelta,predictedIndex,currentMaxDimension=Math.max(height,width);_this.zoomValue=_this.zoomDelta>0?_this.zoomValue*_this.options.zoomRatio:_this.zoomValue/_this.options.zoomRatio;_this.zoomValue=limitAt(_this.zoomValue,1,maxZoom);if(_this.zoomValue==1){contentProvider.zoomScale=1}else{contentProvider.zoomScale=limitAt(_this.zoomValue,1,maxZoom)}}zoom=contentProvider.zoomScale;contentProvider.checkViewportSize(width,height,zoom);if(contentProvider.contentSourceType==SOURCE_TYPE.PDF){width=contentProvider.imageViewport.width/zoom;height=contentProvider.imageViewport.height/zoom}if(contentProvider.zoomScale!=1){this.target.container.addClass("df-zoom-enabled")}var zoomWidth=target.zoomWidth=Math.floor(width*zoom),zoomHeight=target.zoomHeight=Math.floor(height*zoom);var zoomFullWidth=zoomWidth*2;if(is3d){var proportion=zoomHeight/target.height,aspect=stageWidth/stageHeight;var relativeHeight=zoom*(height+paddingHeight)/proportion,relativeWidth=zoom*(width*(isSingle?1:2)+paddingWidth)/proportion;var focusSize=isWide?relativeHeight:relativeWidth/aspect;stage.resizeCanvas(stageWidth,stageHeight);cameraZ=1/(2*Math.tan(Math.PI*stage.camera.fov*.5/180)/(focusSize/zoom))+2.2;stage.camera.updateProjectionMatrix();stage.renderRequestPending=true;var shift=(paddingTop-paddingBottom)*(target.height/height)/zoom/2;var _reset=contentProvider.zoomScale==1;if(stage.camera.position.z!==cameraZ&&_this.pendingZoom==true){if(_this.zoomTween!=null)_this.zoomTween.stop();_this.zoomTween=new TWEEN.Tween({campos:stage.camera.position.z,otx:stage.orbitControl.target.x,oty:stage.orbitControl.target.y,otz:stage.orbitControl.target.z}).delay(0).to({campos:cameraZ,otx:0,oty:shift,otz:0},100).onUpdate(function(){stage.camera.position.z=this.campos;if(_reset){stage.camera.position.y=this.oty;stage.orbitControl.target=new THREE.Vector3(this.otx,this.oty,this.otz)}stage.orbitControl.update()}).easing(TWEEN.Easing.Linear.None).onComplete(function(){stage.camera.position.z=cameraZ;if(contentProvider.zoomScale==1){stage.camera.position.set(0,shift,cameraZ);stage.orbitControl.target=new THREE.Vector3(0,shift,0)}stage.orbitControl.update()}).start()}else{if(contentProvider.zoomScale==1){stage.camera.position.set(0,shift,cameraZ);stage.orbitControl.target=new THREE.Vector3(0,shift,0)}stage.orbitControl.update()}stage.orbitControl.update();stage.orbitControl.mouseButtons.ORBIT=zoom!=1?-1:THREE.MOUSE.RIGHT;stage.orbitControl.mouseButtons.PAN=zoom!=1?THREE.MOUSE.LEFT:-1}else{target.pageWidth=Math.round(width);target.fullWidth=target.pageWidth*2;target.height=Math.round(height);var shiftHeight=target.shiftHeight=Math.round(limitAt((zoomHeight-stageHeight+paddingHeight)/2,0,zoomHeight)),shiftWidth=target.shiftWidth=Math.round(limitAt((zoomFullWidth-stageWidth+paddingWidth)/2,0,zoomFullWidth));if(zoom==1){target.left=0;target.top=0}target.stage.css({top:-shiftHeight,bottom:-shiftHeight,right:-shiftWidth+(isRTL?sideShift:0),left:-shiftWidth+(isRTL?0:sideShift),paddingTop:paddingTop,paddingRight:paddingRight,paddingBottom:paddingBottom,paddingLeft:paddingLeft,transform:"translate3d("+target.left+"px,"+target.top+"px,0)"});target.stageHeight=stage.height();target.wrapper.css({width:zoomFullWidth,height:zoomHeight,marginTop:containerHeight-zoomHeight-paddingHeight>0?(containerHeight-paddingHeight-zoomHeight)/2:0});var wrapperSize=Math.floor(distOrigin(width,height)*zoom);target.stage.find(".df-page-wrapper").width(wrapperSize).height(wrapperSize);target.stage.find(".df-book-page, .df-page-front , .df-page-back, .df-page-fold-inner-shadow").height(zoomHeight).width(zoomWidth)}_this.checkCenter({type:"resize"});if(contentProvider.zoomScale==1){this.target.container.removeClass("df-zoom-enabled")}if(target.thumblist){target.thumblist.reset($(target.thumblist.container).height())}_this.pendingZoom=false},playSound:function(){try{if(this.options&&this.options.soundEnable==true){this.sound.currentTime=0;this.sound.play()}}catch(error){}},setPageMode:function(isSingle){if(isSingle==true){this.ui.pageMode.addClass(this.options.icons["doublepage"]);this.ui.pageMode.html("<span>"+this.options.text.doublePageMode+"</span>");this.ui.pageMode.attr("title",this.options.text.doublePageMode);this.target.pageMode=DFLIP.PAGE_MODE.SINGLE}else{this.ui.pageMode.removeClass(this.options.icons["doublepage"]);this.ui.pageMode.html("<span>"+this.options.text.singlePageMode+"</span>");this.ui.pageMode.attr("title",this.options.text.singlePageMode);this.target.pageMode=DFLIP.PAGE_MODE.DOUBLE}if(this.target&&this.target.singlePageMode==DFLIP.SINGLE_PAGE_MODE.BOOKLET){this.target.reset()}this.resize()},setAutoPlay:function(isPlay){if(this.options.autoPlay){isPlay=isPlay==true;var text=isPlay?this.options.text.pause:this.options.text.play;this.ui.play.toggleClass(this.options.icons["pause"],isPlay);this.ui.play.html("<span>"+text+"</span>");this.ui.play.attr("title",text);clearInterval(this.autoPlayTimer);if(isPlay){this.autoPlayTimer=setInterval(this.autoPlayFunction,this.options.autoPlayDuration)}this.target.autoPlay=isPlay}},height:function(height){if(height==null){return this.container.height()}else{this.options.height=height;this.container.height(height);this.resize()}},checkCenter:function(options){options=options==null?{}:options;this.centerType=this.centerType||"start";var target=this.target;var singleShift=0,left=0,right=0;var basePage=utils.getBasePage(target._activePage);var isEven=target._activePage%2==0;var isRTL=target.direction==DFLIP.DIRECTION.RTL;var isSingle=target.pageMode==DFLIP.PAGE_MODE.SINGLE,isBooklet=isSingle&&target.singlePageMode==DFLIP.SINGLE_PAGE_MODE.BOOKLET;var stageWidth=target.stage.width(),width;if(target.mode=="css"){width=target.wrapper.width();singleShift=Math.max((width-stageWidth)/2,0);left=-width/4;right=width/4;if(basePage==0||isBooklet){target.wrapper.css({left:isSingle?isRTL?right-singleShift:left-singleShift:isRTL?right:left});target.shadow.css({width:"50%",left:isRTL?0:"50%",transitionDelay:""})}else if(basePage==target.pageCount){target.wrapper.css({left:isSingle?isRTL?left-singleShift:right-singleShift:isRTL?left:right});target.shadow.css({width:"50%",left:isRTL?"50%":0,transitionDelay:""})}else{target.wrapper.css({left:isSingle?isRTL?isEven?left-singleShift:right-singleShift:isEven?right-singleShift:left-singleShift:0});target.shadow.css({width:"100%",left:0,transitionDelay:parseInt(target.duration,10)+50+"ms"})}target.wrapper.css({transition:options.type=="resize"?"none":""})}else if(target.stage!=null){var init=target.position.x,end;singleShift=target.width/4;width=target.width;left=-width/2;right=width/2;if(basePage==0||isBooklet){end=isRTL?right:left}else if(basePage==target.pageCount){end=isRTL?left:right}else{end=isSingle?isRTL?isEven?left:right:isEven?right:left:0}if(end!==this.centerEnd){this.centerTween=new TWEEN.Tween({x:init}).delay(0).to({x:end},target.duration).onUpdate(function(){target.position.x=this.x;target.stage.cssScene.position.x=this.x}).easing(target.ease).start();this.centerEnd=end}}},width:function(width){if(width==null){return this.container.width()}else{this.options.width=width;this.container.width(width);this.resize()}}};return PreviewObject}({});DFLIP.PreviewObject=PreviewObject;var ContentProvider=function(_super){__extends(ContentProvider,_super);function ContentProvider(contentSource,callback,parameters,flipbook){parameters=parameters||{};var _this=this;_this.contentRawSource=contentSource||[defaults.textureLoadFallback];_this.contentSource=_this.contentRawSource;_this.contentSourceType=null;_this.minDimension=parameters.minTextureSize||256;_this.maxDimension=parameters.maxTextureSize||2048;_this.pdfRenderQuality=parameters.pdfRenderQuality||DFLIP.defaults.pdfRenderQuality;_this.flipbook=flipbook;_this.waitPeriod=50;_this.maxLength=297;_this.enableDebug=false;_this.zoomScale=1;_this.maxZoom=2;_this.options=parameters;_this.outline=parameters.outline;_this.links=parameters.links;_this.html=parameters.html;_this.isCrossOrigin=parameters.isCrossOrigin;_this.normalViewport={height:297,width:210,scale:1};_this.viewport={height:297,width:210,scale:1};_this.imageViewport={height:297,width:210,scale:1};_this.bookSize={height:297,width:210};_this.zoomViewport={height:297,width:210};_this.thumbsize=128;_this.cacheIndex=256;_this.cache=[];_this.pageRatio=parameters.pageRatio||_this.viewport.width/_this.viewport.height;_this.textureLoadTimeOut=null;_this.type="TextureLibrary";if(Array===_this.contentSource.constructor||Array.isArray(_this.contentSource)||_this.contentSource instanceof Array){_this.contentSourceType=SOURCE_TYPE.IMAGE;_this.pageCount=_this.contentSource.length;for(var _correct=0;_correct<_this.contentSource.length;_correct++){_this.contentSource[_correct]=utils.httpsCorrection(_this.contentSource[_correct].toString())}$("<img/>").attr("src",_this.contentSource[0]).on("load",function(){_this.viewport.height=this.height;_this.viewport.width=this.width;_this.pageRatio=_this.viewport.width/_this.viewport.height;_this.bookSize={width:(_this.pageRatio>1?1:_this.pageRatio)*_this.maxLength,height:_this.maxLength/(_this.pageRatio<1?1:_this.pageRatio)};_this.zoomViewport={width:(_this.pageRatio>1?1:_this.pageRatio)*_this.maxDimension,height:_this.maxDimension/(_this.pageRatio<1?1:_this.pageRatio)};_this.linkService=new PDFLinkService;$(this).off();if(_this.options.pageSize==DFLIP.PAGE_SIZE.DOUBLEINTERNAL){_this.pageCount=_this.contentSource.length*2-2;if(_this.options.webgl==true)_this.requiresImageTextureScaling=true}if(callback!=null){callback(_this);callback=null}log(this.height+":"+this.width)})}else if(typeof _this.contentSource=="string"||_this.contentSource instanceof String){var checkSource=function(){if(_this.contentSource.indexOf(".base64")>1){$.ajax({url:_this.contentSource,xhrFields:{onprogress:function(e){if(e.lengthComputable){var percentage=100*e.loaded/e.total;_this.updateInfo(_this.options.text.loading+" PDF "+percentage.toString().split(".")[0]+"% ...")}}},success:function(response){_this.options.docParameters={data:atob(response)};processSource()}})}else{processSource()}};var processSource=function(){if(_this){pdfjsLib.GlobalWorkerOptions.workerSrc=defaults.pdfjsWorkerSrc;_this.contentSourceType=SOURCE_TYPE.PDF;var disableFontFace=_this.options.disableFontFace;if(isSafari||isIOS||_this.options.disableFontFace==true){}var loading=_this.loading=pdfjsLib.getDocument(_this.options.docParameters?_this.options.docParameters:{url:utils.httpsCorrection(contentSource),rangeChunkSize:isNaN(_this.options.rangeChunkSize)?524288:_this.options.rangeChunkSize,cMapUrl:defaults.cMapUrl,cMapPacked:true,imageResourcesPath:defaults.imageResourcesPath,disableAutoFetch:true,disableStream:true,disableFontFace:disableFontFace});loading.promise.then(function sourceLoaded(pdf){_this.pdfDocument=pdf;pdf.getPage(1).then(function(page){_this.normalViewport=page.getViewport({scale:1});_this.viewport=page.getViewport({scale:1});_this.viewport.height=_this.viewport.height/10;_this.viewport.width=_this.viewport.width/10;_this.pageRatio=_this.viewport.width/_this.viewport.height;_this.bookSize={width:(_this.pageRatio>1?1:_this.pageRatio)*_this.maxLength,height:_this.maxLength/(_this.pageRatio<1?1:_this.pageRatio)};_this.zoomViewport={width:(_this.pageRatio>1?1:_this.pageRatio)*_this.maxDimension,height:_this.maxDimension/(_this.pageRatio<1?1:_this.pageRatio)};_this.refPage=page;if(pdf.numPages>1){pdf.getPage(2).then(function(page){if(_this.options.pageSize==DFLIP.PAGE_SIZE.AUTO){var _viewport=page.getViewport({scale:1});var _pageRatio=_viewport.width/_viewport.height;if(_pageRatio>_this.pageRatio*1.5){_this.options.pageSize=DFLIP.PAGE_SIZE.DOUBLEINTERNAL;_this.pageCount=pdf.numPages*2-2}else{_this.options.pageSize=DFLIP.PAGE_SIZE.SINGLE}}if(callback!=null){callback(_this);callback=null}})}else{if(callback!=null){callback(_this);callback=null}}});_this.linkService=new PDFLinkService;_this.linkService.setDocument(pdf,null);_this.pageCount=pdf.numPages;_this.contentSource=pdf},function loadingError(error){if(_this){var cors="",tmp=document.createElement("a");tmp.href=_this.contentSource;if(tmp.hostname!==window.location.hostname)cors="CROSS ORIGIN!! ";_this.updateInfo(cors+"Cannot access file! "+_this.contentSource)}});loading.onProgress=function getDocumentProgress(progressData){if(_this){var percentage=100*progressData.loaded/progressData.total;if(isNaN(percentage)){if(progressData&&progressData.loaded){_this.updateInfo(_this.options.text.loading+" PDF "+(Math.ceil(progressData.loaded/1e4)/100).toString()+"MB ...")}else{_this.updateInfo(_this.options.text.loading+" PDF ...")}}else{_this.updateInfo(_this.options.text.loading+" PDF "+percentage.toString().split(".")[0]+"% ...")}}}}};var checkCORS=function(){if(_this){if(defaults.pdfjsWorkerSrc.indexOf("?ver")<0)defaults.pdfjsWorkerSrc+="?ver="+DFLIP.version;_this.updateInfo(_this.options.text.loading+" PDF Worker ...");var tmp=document.createElement("a");tmp.href=defaults.pdfjsWorkerSrc;if(tmp.hostname!==window.location.hostname){_this.updateInfo(_this.options.text.loading+" PDF Worker CORS ...");$.ajax({url:defaults.pdfjsWorkerSrc,cache:true,success:function(data){defaults.pdfjsWorkerSrc=DFLIP.createObjectURL(data,"text/javascript");checkSource()}})}else{checkSource()}}};if(window.pdfjsLib==null){if(_this){_this.updateInfo(_this.options.text.loading+" PDF Service ...");getScript(defaults.pdfjsSrc+"?ver="+DFLIP.version,function(){if(typeof define==="function"&&define.amd&&window.requirejs){_this.updateInfo(_this.options.text.loading+" PDF Service (require) ...");require.config({paths:{"pdfjs-dist/build/pdf.worker":defaults.pdfjsWorkerSrc.replace(".js","")}});require(["pdfjs-dist/build/pdf"],function(pdfjsLib){window.pdfjsLib=pdfjsLib;checkCORS()})}else if(typeof exports==="object"&&exports["pdfjs-dist/build/pdf"]!=null){window.pdfjsLib=exports["pdfjs-dist/build/pdf"];checkCORS()}else{checkCORS()}},function(){_this.updateInfo("Unable to load PDF service..")})}}else{checkSource()}}else{console.error("Unknown source type. Please check documentation for help")}this.dispose=function(){if(_this.loading&&_this.loading.destroy){_this.loading.destroy()}_this.loading=null;if(_this.textureLoadTimeOut){clearTimeout(_this.textureLoadTimeOut);_this.textureLoadTimeOut=null}if(this.targetObject){if(this.targetObject.thumbContainer&&this.targetObject.thumbContainer.remove)this.targetObject.thumbContainer.remove();if(this.targetObject.outlineContainer&&this.targetObject.outlineContainer.remove)this.targetObject.outlineContainer.remove();if(this.targetObject.dispose)this.targetObject.dispose();this.targetObject.processPage=null;this.targetObject.requestPage=null;if(this.targetObject.container&&this.targetObject.container.off)this.targetObject.container.off()}if(this.pdfDocument&&this.pdfDocument.destroy)this.pdfDocument.destroy();if(this.linkService&&this.linkService.dispose)this.linkService.dispose();if(this.outlineViewer&&this.outlineViewer.dispose)this.outlineViewer.dispose();if(this.thumblist&&this.thumblist.dispose){this.thumblist.review=null;this.thumblist.dispose()}this.activeThumb=null;this.targetObject=null;this.pdfDocument=null;this.linkService=null;this.outlineViewer=null;this.thumblist=null;_this=null};return this}ContentProvider.prototype.updateInfo=function(info){if(this.flipbook&&this.flipbook.updateInfo){this.flipbook.updateInfo(info)}};ContentProvider.prototype.initThumbs=function(){var _this=this;if(_this.cache[_this.thumbsize]==null)_this.cache[_this.thumbsize]=[];var thumbLoadTimeOut;var review=function(){clearTimeout(thumbLoadTimeOut);thumbLoadTimeOut=setTimeout(function(){thumbLoadTimeOut=setTimeout(reviewThumbs,_this.waitPeriod/2)},_this.waitPeriod)};var reviewThumbs=function(){var requestCount=0;if(Date.now()-_this.thumblist.lastScrolled<100){requestCount=1}else{_this.targetObject.container.find(".df-thumb-container .df-vrow").each(function(){var thumb=$(this);if(!thumb.hasClass("df-thumb-loaded")){requestCount++;var id=$(this).attr("id").replace("df-thumb","");_this.getPage(id,review,true);thumb.addClass("df-thumb-loaded");return false}});if(requestCount==0){clearTimeout(thumbLoadTimeOut)}}if(requestCount>0){review()}if(_this.activeThumb!=_this.targetObject._activePage){var thumbVisible=_this.targetObject.thumbContainer!=null&&_this.targetObject.thumbContainer.hasClass("df-sidemenu-visible");if(thumbVisible){var wrapper=_this.thumblist.container;var cScroll=wrapper.scrollTop,cHeight=wrapper.getBoundingClientRect().height;var thumb=_this.targetObject.thumbContainer.find("#df-thumb"+_this.targetObject._activePage);if(thumb.length>0){_this.targetObject.thumbContainer.find(".df-selected").removeClass("df-selected");thumb.addClass("df-selected");thumb=thumb[0];if(cScroll+cHeight<thumb.offsetTop+thumb.scrollHeight)utils.scrollIntoView(thumb,null,false);else if(cScroll>thumb.offsetTop)utils.scrollIntoView(thumb);_this.activeThumb=_this.targetObject._activePage}else{$(wrapper).scrollTop(_this.targetObject._activePage*124);review()}}}};_this.thumblist=_this.targetObject.thumblist=new ThumbList({h:500,addFn:function(row){},scrollFn:review,itemHeight:128,totalRows:_this.pageCount,generatorFn:function(row){var el=document.createElement("div");var pageNumber=row+1;el.id="df-thumb"+pageNumber;var elText=document.createElement("div");elText.innerHTML=pageNumber;el.appendChild(elText);return el}});_this.thumblist.lastScrolled=Date.now();_this.thumblist.review=review;review();var thumbContainer=$("<div>").addClass("df-thumb-container df-sidemenu-visible df-sidemenu");thumbContainer.append($(_this.thumblist.container).addClass("df-thumb-wrapper"));_this.targetObject.thumbContainer=thumbContainer;_this.targetObject.container.append(thumbContainer);var sideMenuClose=$(html.div,{class:"df-ui-btn df-ui-sidemenu-close ti-close"});thumbContainer.append(sideMenuClose);_this.thumblist.reset($(_this.thumblist.container).height());_this.targetObject.container.on("click",".df-thumb-container .df-vrow",function(e){e.stopPropagation();var id=$(this).attr("id").replace("df-thumb","");_this.targetObject.gotoPage(parseInt(id,10))})};ContentProvider.prototype.initOutline=function(){var _this=this;var outlineContainer=$("<div>").addClass("df-outline-container df-sidemenu");var outlineWrapper=$("<div>").addClass("df-outline-wrapper");var sideMenuClose=$(html.div,{class:"df-ui-btn df-ui-sidemenu-close ti-close"});outlineContainer.append(sideMenuClose).append(outlineWrapper);_this.targetObject.container.append(outlineContainer);_this.targetObject.outlineContainer=outlineContainer;_this.outlineViewer=new BookMarkViewer({container:outlineWrapper[0],linkService:_this.linkService,outlineItemClass:"df-outline-item",outlineToggleClass:"df-outline-toggle",outlineToggleHiddenClass:"df-outlines-hidden"});function processOutline(outline){if(_this.options.overwritePDFOutline==true){outline=[]}outline=outline||[];if(_this.outline){for(var count=0;count<_this.outline.length;count++){_this.outline[count].custom=true;if(outline)outline.push(_this.outline[count])}}if(outline.length===0&&_this.targetObject.ui.outline!=null){_this.targetObject.ui.outline.hide()}_this.outlineViewer.render({outline:outline})}if(_this.pdfDocument){_this.pdfDocument.getOutline().then(function(outline){processOutline(outline)})}else{processOutline([])}if(_this.options.autoEnableOutline==true){_this.targetObject.ui.outline.trigger("click")}if(_this.options.autoEnableThumbnail==true){_this.targetObject.ui.thumbnail.trigger("click")}};ContentProvider.prototype.checkViewportSize=function(width,height,zoom){var _this=this;var target=_this.targetObject;var zoomWidth=width*zoom,zoomHeight=height*zoom;var oldCacheSize=_this.cacheIndex;if(_this.contentSourceType==SOURCE_TYPE.PDF){_this.cacheIndex=Math.ceil(Math.max(zoomWidth,zoomHeight));_this.cacheIndex=Math.floor(Math.max(zoomWidth,zoomHeight));_this.cacheIndex=limitAt(_this.cacheIndex*defaults.pixelRatio,_this.minDimension,_this.maxDimension);if(_this.cache[_this.cacheIndex]==null)_this.cache[_this.cacheIndex]=[];if(oldCacheSize!==_this.cacheIndex){for(var pageCount=0;pageCount<target.children.length;pageCount++){var page=target.children[pageCount]}target.refresh()}_this.imageViewport=_this.refPage.getViewport({scale:zoomHeight/_this.normalViewport.height});_this.viewport=target.mode=="css"?_this.imageViewport:_this.refPage.getViewport({scale:_this.bookSize.height/_this.normalViewport.height});log(_this.cacheIndex);_this.annotedPage=undefined;_this.review()}else{if(_this.cache[_this.cacheIndex]==null)_this.cache[_this.cacheIndex]=[]}};ContentProvider.prototype.getCache=function(index,isThumb){return isThumb==true?this.cache[this.thumbsize]==null?null:this.cache[this.thumbsize][index]:this.cache[this.cacheIndex]==null?null:this.cache[this.cacheIndex][index]};ContentProvider.prototype.setCache=function(index,src,isThumb,cacheIndexSize){if(isThumb==true){if(this.cache[this.thumbsize]!=null)this.cache[this.thumbsize][index]=src}else{var cacheIndex=cacheIndexSize==null?this.cacheIndex:cacheIndexSize;if(this.cache[cacheIndex]!=null)this.cache[cacheIndex][index]=src}};ContentProvider.prototype.setTarget=function(targetObject){var _this=this;if(targetObject==null){return this.targetObject}else{this.targetObject=targetObject;targetObject.contentProvider=this;targetObject.container.removeClass("df-loading df-init");if(_this.linkService!=null){_this.linkService.setViewer(targetObject);_this.initOutline()}targetObject.processPage=function(pageNumber,callback){if(pageNumber>0&&pageNumber<=_this.pageCount){_this.getPage(pageNumber,callback)}else{_this.setPage(pageNumber,defaults.textureLoadFallback,callback)}};targetObject.requestPage=function(){_this.review("Request")};if(targetObject.resize!=null)targetObject.resize()}};ContentProvider.prototype.review=function(message){var _this=this;message=message||"timer review";clearTimeout(_this.textureLoadTimeOut);_this.textureLoadTimeOut=setTimeout(function(){_this.textureLoadTimeOut=setTimeout(_this.reviewPages,_this.waitPeriod/2,_this,message)},_this.waitPeriod)};ContentProvider.prototype.reviewPages=function(_this,message){_this=_this||this;var target=_this.targetObject;if(target==null)return;var isBooklet=isBookletMode(target);if(message!=null)log(message);var requiresRevisit=false;var pageCount,page;for(pageCount=0;pageCount<_this.targetObject.children.length;pageCount++){page=target.children[pageCount];if(page.isFlipping==true){requiresRevisit=true;break}}if(requiresRevisit==false){var pageLength=target.children.length>3?3:target.children.length;var midPoint=pageLength/2;var basePage=isBooklet?target._activePage:getBasePage(target._activePage);_this.baseNumber=basePage;if(_this.zoomScale>1){pageLength=1}for(pageCount=0;pageCount<pageLength;pageCount++){var dividend=Math.floor(pageCount/2);var diff=pageCount%2==0?-dividend*(isBooklet?1:2):(dividend==0?1:dividend)*(isBooklet?1:2);var frontPageNumber=basePage+diff,backPageNumber=basePage+diff+1;var page1=target.getPageByNumber(frontPageNumber),page2=target.getPageByNumber(backPageNumber),reqFrontPageStamp=frontPageNumber+"|"+_this.cacheIndex,reqBackPageStamp=backPageNumber+"|"+_this.cacheIndex;var requestCount=0;if(page1!=null&&page1.frontPageStamp!=reqFrontPageStamp&&page1.visible==true){page1.frontTextureLoaded=false;target.processPage(frontPageNumber,function(){_this.review("Batch Call")});page1.frontPageStamp=reqFrontPageStamp;requestCount++}if(page2!=null&&page2.backPageStamp!=reqBackPageStamp&&page2.visible==true&&!isBooklet){page2.backTextureLoaded=false;target.processPage(backPageNumber,function(){_this.review("Batch Call")});page2.backPageStamp=reqBackPageStamp;requestCount++}if(diff==0&&_this.annotedPage!==basePage){_this.getAnnotations(frontPageNumber);if(!isBooklet)_this.getAnnotations(backPageNumber);_this.annotedPage=basePage}if(requestCount>0){break}}if(requestCount==0){if(target.mode!=="css"){_this.setLoading(basePage)}else{}}}else{_this.review("Revisit request");if(_this.annotedPage!=null&&target.mode!=="css"){var baseActive=getBasePage(target._activePage);$(target.getContentLayer(baseActive)).html("");$(target.getContentLayer(baseActive+1)).html("");_this.annotedPage=null}}};ContentProvider.prototype.getPage=function(pageNumber,callbackFunction,isThumb){var _this=this;pageNumber=parseInt(pageNumber,10);var _pageNumber=pageNumber;var source=_this.contentSource;if(pageNumber<=0&&pageNumber>=_this.pageCount){_this.setPage(pageNumber,defaults.textureLoadFallback,callbackFunction,isThumb)}else{if(_this.contentSourceType==SOURCE_TYPE.PDF){if(_this.getCache(pageNumber,isThumb)!=null){_this.setPage(pageNumber,_this.getCache(pageNumber,isThumb),callbackFunction,isThumb);log("Page "+pageNumber+" loaded from cache")}else{if(isThumb!==true)_this.setLoading(pageNumber,true);if(_this.options.pageSize==DFLIP.PAGE_SIZE.DOUBLEINTERNAL&&pageNumber>2){_pageNumber=Math.ceil((pageNumber-1)/2)+1}source.getPage(_pageNumber,isThumb).then(function(page){renderPage(page,pageNumber,callbackFunction,isThumb)})}}else if(_this.contentSourceType==SOURCE_TYPE.IMAGE||_this.contentSourceType==SOURCE_TYPE.HTML){if(_this.getCache(pageNumber,isThumb)!=null){_this.setPage(pageNumber,_this.getCache(pageNumber,isThumb),callbackFunction,isThumb);log("Page "+pageNumber+" loaded from cache")}else{if(isThumb!==true)_this.setLoading(pageNumber,true);if(_this.options.pageSize==DFLIP.PAGE_SIZE.DOUBLEINTERNAL&&pageNumber>2){_pageNumber=Math.ceil((pageNumber-1)/2)+1}loadImagejQuery(source[_pageNumber-1],function(src){_this.setCache(pageNumber,src,isThumb,_this.cacheIndex);_this.setPage(pageNumber,src,callbackFunction,isThumb);if(callbackFunction!=null)callbackFunction()},_this.isCrossOrigin)}}}function loadImage(src,callback,isCrossOrigin){var img=new Image;img.crossOrigin="Anonymous";img.onload=function(){if(isCrossOrigin==true){var canvas=document.createElement("canvas"),ctx=canvas.getContext("2d");canvas.width=img.width;canvas.height=img.height;ctx.drawImage(img,0,0);if(defaults.canvasToBlob==true){canvas.toBlob(function(blob){var src=DFLIP.createObjectURL(blob,"image/jpeg");if(callback!=null)callback(src)},"image/jpeg",.85)}else{if(callback!=null)callback(canvas)}}else{if(callback!=null)callback(src)}img.onload=null;img=null};img.src=src;if(img.complete||img.complete===undefined){img.src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==";img.src=src}}function loadImagejQuery(src,callback,isCrossOrigin){$("<img/>").attr("src",src).on("load",function(){$(this).off();if(callback!=null){callback(src)}log(this.height+":"+this.width)})}function renderPage(page,pageNumber,callbackFunction,isThumb){var forceFit=_this.options.forceFit;var isDoublePage=_this.options.pageSize==DFLIP.PAGE_SIZE.DOUBLEINTERNAL&&pageNumber>1&&pageNumber<_this.pageCount;var widthFix=isDoublePage&&forceFit?2:1;var viewport=forceFit?page.getViewport({scale:1}):_this.normalViewport;var scale=_this.cacheIndex/Math.max(viewport.width/widthFix,viewport.height);if(_this.webgl==true){scale=nearestPowerOfTwo(_this.cacheIndex)/(_this.pageRatio>1?viewport.width/widthFix:viewport.height)}var canvas=document.createElement("canvas");var start=performance.now();var requestedCacheSize=_this.cacheIndex;var context=canvas.getContext("2d");if(isThumb==true){scale=_this.thumbsize/_this.normalViewport.height}canvas.height=Math.round(viewport.height*scale);canvas.width=Math.round(viewport.width/widthFix*scale);if(_this.targetObject.mode=="css"&&Math.abs(_this.targetObject.zoomHeight-canvas.height)<2){canvas.height=_this.targetObject.zoomHeight+0;canvas.width=_this.targetObject.zoomWidth+0}viewport=page.getViewport({scale:scale});log("rendering "+pageNumber+" at "+canvas.width+"x"+canvas.height);if(isDoublePage){if(isRTLMode(_this.targetObject)){if(pageNumber%2==0){viewport.transform[4]=-canvas.width}}else{if(pageNumber%2==1){viewport.transform[4]=-canvas.width}}}var renderContext={canvasContext:context,viewport:viewport};page.cleanupAfterRender=true;var pageRendering=page.render(renderContext);pageRendering.promise.then(function(){log(performance.now()-start);start=performance.now();if(isThumb==true||_this.options.canvasToBlob==true&&_this.webgl!==true){canvas.toBlob(function(blob){var src=DFLIP.createObjectURL(blob,"image/jpeg");log(performance.now()-start);_this.setCache(pageNumber,src,isThumb,requestedCacheSize);_this.setPage(pageNumber,src,callbackFunction,isThumb)},"image/jpeg",_this.pdfRenderQuality)}else{log("Setting Page "+pageNumber);_this.setPage(pageNumber,canvas,callbackFunction,isThumb)}renderContext=null})}};ContentProvider.prototype.getTargetPage=function(pageNumber){};ContentProvider.prototype.setLoading=function(pageNumber,show){if(this.targetObject!=null){if(this.webgl==true){var container=this.targetObject.container;if(show==true){if(container.isLoading!==true){container.addClass("df-loading");container.isLoading=true;log("Loading icon at "+pageNumber+" as "+show)}}else{if(container.isLoading!=null){container.removeClass("df-loading");container.isLoading=null;log("Loading icon at "+pageNumber+" as "+show)}}}else{var contentLayer=$(this.targetObject.getContentLayer(pageNumber));if(contentLayer!=null){if(show==true)contentLayer.addClass("df-page-loading");else contentLayer.removeClass("df-page-loading");log("Loading icon at "+pageNumber+" as "+show)}}}};ContentProvider.prototype.getAnnotations=function(pageNumber){var _this=this;if(_this.options.enableAnnotation==false)return;var target=_this.targetObject;pageNumber=parseInt(pageNumber,10);var source=_this.contentSource;var contentLayer=$(target.getContentLayer(pageNumber));contentLayer.empty();if(pageNumber>0&&pageNumber<=_this.pageCount){if(_this.contentSourceType==SOURCE_TYPE.PDF){var basePage=getBasePage(pageNumber);var _pageNumber=pageNumber;if(_this.options.pageSize==DFLIP.PAGE_SIZE.DOUBLEINTERNAL&&pageNumber>2){_pageNumber=Math.ceil((pageNumber-1)/2)+1}source.getPage(_pageNumber).then(function(page){if(contentLayer!=null&&contentLayer.length>0){var viewport=page.getViewport({scale:1});viewport=page.getViewport({scale:_this.normalViewport.height/viewport.height*_this.viewport.height/viewport.height});_this.setupAnnotations(page,viewport,contentLayer,pageNumber)}})}if(_this.links!=null&&_this.links[pageNumber]!=null){var pageLinks=_this.links[pageNumber];for(var index=0;index<pageLinks.length;index++){var pageLink=pageLinks[index];var annotation;if(pageLink.dest&&pageLink.dest.indexOf&&pageLink.dest.indexOf("[html]")==0){annotation=document.createElement("div");annotation.innerHTML=pageLink.dest.substr(6);annotation.className="customHtmlAnnotation"}else{annotation=document.createElement("a");annotation.setAttribute("dest",pageLink.dest);annotation.className="customLinkAnnotation";annotation.href="#"+pageLink.dest;annotation.onclick=function(){var dest=this.getAttribute("dest");if(dest){_this.linkService.customNavigateTo(dest)}return false}}annotation.style.left=pageLink.x+"%";annotation.style.top=pageLink.y+"%";annotation.style.width=pageLink.w+"%";annotation.style.height=pageLink.h+"%";contentLayer[0].appendChild(annotation)}}if(_this.html!=null&&_this.html[pageNumber]!=null){var pageHTML=_this.html[pageNumber];contentLayer.append($("<div class='customHTMLAnnotation'>").html(pageHTML))}}};ContentProvider.prototype.setPage=function(pageNumber,textureSrc,callbackFunction,isThumb){var _this=this;var target=_this.targetObject;var isRTL=isRTLMode(target);var isBooklet=isBookletMode(target);if(isThumb==true){var page=_this.targetObject.container.find("#df-thumb"+pageNumber);page.css({backgroundImage:bgImage(textureSrc)})}else{if(textureSrc==defaults.textureLoadFallback){log("Fallback on "+pageNumber)}var bookPage=target.getPageByNumber(pageNumber);if(bookPage!=null){if(pageNumber%2!=0&&!isRTL||pageNumber%2!=1&&isRTL&&!isBooklet||isBooklet&&!isRTL){log(pageNumber+"rendered to back of "+bookPage.color);bookPage.backImage(textureSrc,function(object,texture){bookPage.backTextureLoaded=true;_this.setLoading(pageNumber);if(_this.requiresImageTextureScaling&&texture&&pageNumber!=1&&pageNumber!=_this.pageCount){texture.repeat.x=.5;texture.offset.x=.5}if(callbackFunction!=null)callbackFunction()})}else{log(pageNumber+"rendered to front of "+bookPage.color);bookPage.frontImage(textureSrc,function(object,texture){bookPage.frontTextureLoaded=true;_this.setLoading(pageNumber);if(_this.requiresImageTextureScaling&&texture&&pageNumber!=1&&pageNumber!=_this.pageCount){texture.repeat.x=.5}if(callbackFunction!=null)callbackFunction()})}}else{log("Invalid set request on Page "+pageNumber)}}};ContentProvider.prototype.setupAnnotations=function(page,viewport,pageDiv,pageNumber){if(pageDiv==null||$(pageDiv).length==0)return;var _this=this;return page.getAnnotations().then(function(annotationsData){viewport=viewport.clone({dontFlip:true});if(_this.options.pageSize==DFLIP.PAGE_SIZE.DOUBLEINTERNAL&&pageNumber>2&&pageNumber%2==1){}else if(pageNumber==1){}if(pageDiv==null){return}pageDiv=$(pageDiv);if(pageDiv.find(".annotationDiv").length==0){pageDiv.append($("<div class='annotationDiv'>"))}var div=pageDiv.find(".annotationDiv");div.empty();if(_this.options.pageSize==DFLIP.PAGE_SIZE.DOUBLEINTERNAL&&pageNumber>2&&pageNumber%2==1){div.css({left:"-100%"})}else if(pageNumber==1){div.css({left:""})}pdfjsLib.AnnotationLayer.render({annotations:annotationsData,div:div[0],page:page,viewport:viewport,imageResourcesPath:defaults.imageResourcesPath,linkService:_this.linkService});if(_this.options.annotationClass&&_this.options.annotationClass!==""){div.find(" > section").addClass(_this.options.annotationClass)}if(_this.options.search==true){if(pageDiv.find(".textLayerDiv").length==0){pageDiv.append($("<div class='textLayerDiv'>"))}var div2=pageDiv.find(".textLayerDiv");page.getTextContent().then(function(textContent){var textLayer=new DFLIP.TextLayerBuilder({textLayerDiv:div2[0],pageIndex:null,viewport:viewport.clone({dontFlip:false})});textLayer.setTextContent(textContent);textLayer.render()})}})};return ContentProvider}({});var PageCSS=function(){function PageCSS(parameters){this.angles=parameters.angles||[0,0,0,0,0,0];this.stiffness=parameters.angles||.1;this.segments=parameters.segments||1;this.canvasMode=parameters.contentSourceType!==SOURCE_TYPE.IMAGE&¶meters.canvasToBlob==false;this.initDOM()}function createInternals(pageSide){var contentLayer=pageSide.contentLayer=$(html.div,{class:"df-page-content"});pageSide.append(contentLayer)}PageCSS.prototype={initDOM:function(){var element=this.element=$(html.div,{class:"df-book-page"});var wrapper=this.wrapper=$(html.div,{class:"df-page-wrapper"});var front=this.front=$(html.div,{class:"df-page-front"});var back=this.back=$(html.div,{class:"df-page-back"});var foldInnerShadow=this.foldInnerShadow=$(html.div,{class:"df-page-fold-inner-shadow"});var foldOuterShadow=this.foldOuterShadow=$(html.div,{class:"df-page-fold-outer-shadow"});this.frontIMG=new Image;this.backIMG=new Image;createInternals(front,this.segments,true);createInternals(back,this.segments,false);element.append(wrapper).append(foldOuterShadow);wrapper.append(front).append(back).append(foldInnerShadow)},updatePoint:function(point){if(point==null)return;var page=this.parent.dragPage!=null?this.parent.dragPage:point.page!=null?point.page:this;var pageWidth=page.element.width(),pageHeight=page.element.height();var corner=this.parent.corner!=null?this.parent.corner:point.corner,corners=DFLIP.CORNERS;var isRight=page.side==drag.right,isBottom=corner==corners.BL||corner==corners.BR;point.rx=isRight==true?pageWidth*2-point.x:point.x;point.ry=isBottom==true?pageHeight-point.y:point.y;var radAngle=Math.atan2(point.ry,point.rx);radAngle=Math.PI/2-limitAt(radAngle,0,toRad(90));var correctionX=isRight?point.x/2:pageWidth-point.x/2,correctionY=point.ry/2,refLength=Math.max(0,Math.sin(radAngle-Math.atan2(correctionY,correctionX))*distOrigin(correctionX,correctionY)),foldLength=.5*distOrigin(point.rx,point.ry);var x=Math.round(pageWidth-refLength*Math.sin(radAngle)),y=Math.round(refLength*Math.cos(radAngle)),angle=toDeg(radAngle);var angle1=isBottom?isRight?180+(90-angle):180+angle:isRight?angle:90-angle;var angle2=isBottom?isRight?180+(90-angle):angle:isRight?angle+180:angle1,angleS=isBottom?isRight?90-angle:angle+90:isRight?angle1-90:angle1+180,x1=isRight?pageWidth-x:x,y1=isBottom?pageHeight+y:-y,x2=isRight?-x:x-pageWidth,y2=isBottom?-pageHeight-y:y;var opacity=limitAt(point.distance*.5/pageWidth,0,.5);var foldOpacity=limitAt((pageWidth*2-point.rx)*.5/pageWidth,.05,.3);page.element.addClass("df-folding");var front=isRight?page.back:page.front;var back=isRight?page.front:page.back;var outerShadow=page.foldOuterShadow;var innerShadow=page.foldInnerShadow;page.wrapper.css({transform:translateStr(x1,y1)+rotateStr(angle1)});front.css({transform:rotateStr(-angle1)+translateStr(-x1,-y1)});back.css({transform:rotateStr(angle2)+translateStr(x2,y2),boxShadow:"rgba(0, 0, 0, "+opacity+") 0px 0px 20px"});innerShadow.css({transform:rotateStr(angle2)+translateStr(x2,y2),opacity:foldOpacity/2,backgroundImage:prefix.css+"linear-gradient( "+angleS+"deg, rgba(0, 0, 0, 0.25) , rgb(0, 0, 0) "+foldLength*.7+"px, rgb(255, 255, 255) "+foldLength+"px)"});outerShadow.css({opacity:foldOpacity/2,left:isRight?"auto":0,right:isRight?0:"auto",backgroundImage:prefix.css+"linear-gradient( "+(-angleS+180)+"deg, rgba(0, 0, 0,0) "+foldLength/3+"px, rgb(0, 0, 0) "+foldLength+"px)"})},updateAngle:function(angle,isRight){var width=this.element.width()*5;this.wrapper.css({perspective:width,perspectiveOrigin:isRight==true?"0% 50%":"100% 50%"});this.front.css({display:isRight==true?angle<=-90?"block":"none":angle<90?"block":"none",transform:(prefix.dom!=="MfS"?"":"perspective("+width+"px) ")+(isRight==true?"translateX(-100%) ":"")+"rotateY("+((isRight==true?180:0)+angle)+"deg)"});this.back.css({display:isRight==true?angle>-90?"block":"none":angle>=90?"block":"none",transform:(prefix.dom!=="MSd"?"":"perspective("+width+"px) ")+(isRight==false?"translateX(100%) ":"")+"rotateY("+((isRight==false?-180:0)+angle)+"deg)"});return},tween:function(point){var page=this;if(page==null||page.parent==null)return;var isBooklet=isBookletMode(page.parent);var isRight=page.side==drag.right;var isRTL=page.parent.direction==DFLIP.DIRECTION.RTL;var isBottom=page.parent.corner==DFLIP.CORNERS.BL||page.parent.corner==DFLIP.CORNERS.BR;var isMagnetic=page.magnetic==true;var travelY=isBottom?page.parent.height:0;var init,first,mid,angle=0;var end=page.end=page&&page.animateToReset==true?{x:isRight?page.parent.fullWidth:0,y:travelY}:{x:isRight?0:page.parent.fullWidth,y:travelY};page.ease=page.isHard?TWEEN.Easing.Quadratic.InOut:TWEEN.Easing.Linear.None;var tempDuration=page.parent.duration;if(page.isHard==true){if(point!=null){angle=angleByDistance(point.distance,point.fullWidth)}init=page.init={angle:angle*(isRight?-1:1)};end=page.end=page&&page.animateToReset==true?{angle:isRight?0:-0}:{angle:isRight?-180:180}}else{if(point==null){init=page.init=page&&page.animateToReset==true?{x:isRight?0:page.parent.fullWidth,y:0}:{x:isRight?page.parent.fullWidth:0,y:0};first=page.first={x:(isRight?3:1)*page.parent.fullWidth/4,y:0};mid=page.mid={x:(isRight?1:3)*page.parent.fullWidth/4,y:0}}else{init=page.init={x:point.x,y:point.y,opacity:1};first=page.first={x:point.x*3/4,y:point.y*3/4,opacity:1};mid=page.mid={x:point.x/4,y:point.y/4,opacity:1};tempDuration=page.parent.duration*distPoints(init.x,init.y,end.x,end.y)/page.parent.fullWidth;tempDuration=limitAt(tempDuration,page.parent.duration/3,page.parent.duration)}}init.index=0;end.index=1;page.isFlipping=true;var update=function(tween){if(page.isHard==true){page.updateAngle(tween.angle,isRight);page.angle=tween.angle}else{page.updatePoint({x:tween.x,y:tween.y});page.x=tween.x;page.y=tween.y}if(isBooklet&&!isMagnetic)page.element[0].style.opacity=isRight&&!isRTL||!isRight&&isRTL?tween.index>.5?2*(1-tween.index):1:tween.index<.5?2*tween.index:1};if(isBooklet&&(!isRight&&!isRTL||isRight&&isRTL))page.element[0].style.opacity=0;var completeTween=page.completeTween=page.completeTween||function(skipRefresh){page.isFlipping=false;if(page.isHard==true){page.updateAngle(page.end.angle);page.back.css({display:"block"});page.front.css({display:"block"})}else{page.updatePoint({x:page.end.x,y:page.end.y})}page.element[0].style.opacity=1;if(page.animateToReset!==true){page.side=page.side==drag.right?drag.left:drag.right}else page.animateToReset=null;page.currentTween=null;page.pendingPoint=null;page.magnetic=false;page.parent.dragPage=null;page.parent.corner=DFLIP.CORNERS.NONE;if(skipRefresh!=true)page.parent.refresh()};if(page.isHard==true){page.currentTween=new TWEEN.Tween(init).delay(0).to(end,page.parent.duration).onUpdate(function(){update(this)}).easing(page.ease).onComplete(page.completeTween).start()}else{if(point==null){page.currentTween=new TWEEN.Tween(init).delay(0).to(end,page.parent.duration).onUpdate(function(){update(this)}).easing(TWEEN.Easing.Sinusoidal.Out).onComplete(page.completeTween).start()}else{page.currentTween=new TWEEN.Tween(init).delay(0).to(end,tempDuration).onUpdate(function(){update(this)}).easing(TWEEN.Easing.Sinusoidal.Out).onComplete(page.completeTween);page.currentTween.start()}}},frontImage:function(texture,callback){var _this=this;function completed(){_this.front.css({backgroundImage:bgImage(texture)});if(callback!=null)callback()}if(_this.canvasMode==true){_this.front.find(">canvas").remove();if(texture!==defaults.textureLoadFallback){_this.front.append($(texture))}if(callback!=null)callback()}else{if(texture==defaults.textureLoadFallback){completed()}else{_this.frontIMG.onload=completed;_this.frontIMG.src=texture}}},backImage:function(texture,callback){var _this=this;function completed(){_this.back.css({backgroundImage:bgImage(texture)});if(callback!=null)callback()}if(_this.canvasMode==true){_this.back.find(">canvas").remove();if(texture!==defaults.textureLoadFallback){_this.back.append($(texture))}if(callback!=null)callback()}else{if(texture==defaults.textureLoadFallback){completed()}else{_this.backIMG.onload=completed;_this.backIMG.src=texture}}},updateCSS:function(css){this.element.css(css)},resetCSS:function(){this.wrapper.css({transform:""});this.front.css({transform:"",boxShadow:""});this.back.css({transform:"",boxShadow:""})},clearTween:function(skipRefresh){this.currentTween.stop();this.completeTween(skipRefresh==true);this.resetCSS()}};return PageCSS}();var BookCSS=function(_super){__extends(BookCSS,_super);function updateFolding(dragPage){dragPage.parent.container.find(".df-folding").removeClass("df-folding");dragPage.element.addClass("df-folding")}function hasFlipping(book){var hasFlipping=false;for(var pageCount=0;pageCount<book.pages.length;pageCount++){var page=book.pages[pageCount];if(page.isFlipping==true){hasFlipping=true;break}}return hasFlipping}function BookCSS(parameters,container){var _this=this;_this.type="BookCSS";_this.images=parameters.images||[];_this.pageCount=parameters.pageCount||1;_this.foldSense=50;_this.stackCount=4;_this.mode="css";_this.pages=[];_this.duration=parameters.duration;_this.container=$(container);_this.options=parameters;_this.drag=drag.none;_this.pageMode=parameters.pageMode||(isMobile||_this.pageCount<=2?DFLIP.PAGE_MODE.SINGLE:DFLIP.PAGE_MODE.DOUBLE);_this.singlePageMode=parameters.singlePageMode||(isMobile?DFLIP.SINGLE_PAGE_MODE.BOOKLET:DFLIP.SINGLE_PAGE_MODE.ZOOM);_this.swipe_threshold=isMobile?15:50;_this.direction=parameters.direction||DFLIP.DIRECTION.LTR;_this.startPage=1;_this.endPage=_this.pageCount;_this._activePage=parameters.openPage||_this.startPage;_this.hardConfig=parameters.hard;has3d="WebKitCSSMatrix"in window||document.body&&"MozPerspective"in document.body.style;_this.animateF=function(){if(TWEEN.getAll().length>0)TWEEN.update();else clearInterval(_this.animate)};_this.init(parameters);_this.skipDrag=false;function checkPage(point){if(_this.dragPage!=point.page&&point.page.visible==true){_this.dragPage.clearTween(true);_this.dragPage=point.page;_this.corner=point.corner;_this.dragPage.pendingPoint=point}}var mouseMove=function(event){var point=_this.eventToPoint(event);if(event.touches!=null&&event.touches.length==2&&_this.startTouches!=null){_this.zoomDirty=true;var touchCenter=utils.getVectorAvg(utils.getTouches(event,_this.container.offset())),newScale=utils.calculateScale(_this.startTouches,utils.getTouches(event)),scale=newScale/_this.lastScale;var zoom=_this.contentProvider.zoomScale,x=touchCenter.x,y=touchCenter.y;_this.stage.css({transform:"translate3d("+_this.left+"px,"+_this.top+"px,0) scale3d("+newScale+","+newScale+",1)"});_this.lastScale=newScale;_this.lastZoomCenter=touchCenter;event.preventDefault()}if(event.touches!=null&&event.touches.length>1||_this.startPoint==null||_this.startTouches!=null)return;var targetPage=_this.dragPage||point.page;if(_this.contentProvider.zoomScale!==1){if(event.touches!=null||_this.isPanning==true){_this.pan(point);event.preventDefault()}}else{if(_this.skipDrag!==true){var distance=point.distance;if(!hasFlipping(_this)){if(_this.dragPage!=null||point.isInside==true){if(_this.dragPage!=null){log("set mouse down move")}else{point.y=limitAt(point.y,1,_this.height-1);point.x=limitAt(point.x,1,point.fullWidth-1)}var corner=_this.corner||point.corner;if(targetPage.isHard){var isRight=corner==DFLIP.CORNERS.BR||corner==DFLIP.CORNERS.TR;var angle=angleByDistance(point.distance,point.fullWidth);targetPage.updateAngle(angle*(isRight?-1:1),isRight)}else{targetPage.updatePoint(point,_this)}targetPage.magnetic=true;targetPage.magneticCorner=point.corner;event.preventDefault()}if(_this.dragPage==null&&targetPage!=null&&point.isInside==false&&targetPage.magnetic==true){targetPage.pendingPoint=point;targetPage.animateToReset=true;_this.corner=targetPage.magneticCorner;_this.animatePage(targetPage);targetPage.pendingPoint=null;targetPage.magnetic=false;targetPage.magneticCorner=null}if(_this.isPanning==true&&_this.dragPage==null&&_this.contentProvider.zoomScale==1){var swipe_dist=point.x-_this.lastPos,swipe_time=performance.now()-_this.lastTime;if(Math.abs(swipe_dist)>_this.swipe_threshold){if(swipe_dist<0){_this.next()}else{_this.prev()}_this.drag=drag.none;_this.isPanning=false;event.preventDefault()}_this.lastPos=point.x;_this.lastTime=performance.now()}}}}},mouseUp=function(event){if(event.touches!=null&&event.touches.length==0){var zoom=_this.contentProvider.zoomScale;if(_this.zoomDirty==true){_this.previewObject.contentProvider.zoomScale=utils.limitAt(_this.previewObject.contentProvider.zoomScale*_this.lastScale,1,_this.previewObject.contentProvider.maxZoom);_this.previewObject.zoomValue=_this.previewObject.contentProvider.zoomScale*1;_this.previewObject.resize();_this.zoomDirty=false}_this.wrapper.css({transform:""});_this.lastScale=null;_this.startTouches=null}_this.isPanning=false;if(event.touches!=null&&event.touches.length>1)return;if(_this.skipDrag!==true){var point=_this.eventToPoint(event);if(_this.dragPage){event.preventDefault();_this.dragPage.pendingPoint=point;if(point.x==_this.startPoint.x&&point.y==_this.startPoint.y&&point.isInside==true){if(_this.corner==DFLIP.CORNERS.BR||_this.corner==DFLIP.CORNERS.TR){checkPage(point);if(_this.dragPage.isFlipping!==true)_this.next()}else if(_this.corner==DFLIP.CORNERS.BL||_this.corner==DFLIP.CORNERS.TL){checkPage(point);if(_this.dragPage.isFlipping!==true)_this.prev()}}else if(_this.dragPage.isFlipping!==true){if(point.distance>point.fullWidth/2){if(point.x>point.fullWidth/2)_this.prev();else _this.next()}else{_this.dragPage.animateToReset=true;_this.animatePage(_this.dragPage)}}if(_this.dragPage){_this.dragPage.pendingPoint=null;_this.dragPage.magnetic=false}}else{}_this.drag=drag.none}},mouseClick=function(event){var point=_this.eventToPoint(event);var element=event.srcElement||event.originalTarget;if(_this.dragPage&&_this.dragPage.magnetic)return;if(_this.wrapper[0].contains(event.target)&&_this.contentProvider.zoomScale==1&&point.x==_this.startPoint.x&&point.y==_this.startPoint.y&&point.isInsidePage&&_this.startPoint.page==point.page&&!point.page.isFlipping&&element.nodeName!=="A"){if(_this.startPoint.page.side==0){_this.corner=DFLIP.CORNERS.TL;_this.prev();_this.startPoint.page=null}else{_this.corner=DFLIP.CORNERS.TR;_this.next();_this.startPoint.page=null}_this.isPanning=false}},mouseDown=function(event){if(event.touches!=null&&event.touches.length==2&&_this.startTouches==null){_this.startTouches=utils.getTouches(event);_this.lastScale=1}if(event.touches!=null&&event.touches.length>1||event.touches==null&&event.button!==0)return;var point=_this.eventToPoint(event);_this.startPoint=point;_this.left=_this.left||0;_this.top=_this.top||0;_this.isPanning=true;_this.lastPos=point.x;_this.lastTime=performance.now();if(_this.skipDrag!==true){if(point.isInside==true&&!hasFlipping(_this)){_this.startPoint=point;_this.drag=point.drag;_this.dragPage=point.page;_this.corner=point.corner;log(_this.corner);updateFolding(_this.dragPage);if(point.page.isHard){}else{point.page.updatePoint(point,_this)}if(point.page.name=="0"){_this.shadow.css({width:"50%",left:_this.direction==DFLIP.DIRECTION.RTL?0:"50%",transitionDelay:""})}else if(point.page.name==Math.ceil(_this.pageCount/2)-1){_this.shadow.css({width:"50%",left:_this.direction==DFLIP.DIRECTION.RTL?"50%":0,transitionDelay:""})}}}},onMouseWheel=function(event){var delta=0;if(event.wheelDelta!=null){delta=event.wheelDelta/120}else if(event.detail!=null){delta=-event.detail/3}var zoom1=_this.contentProvider.zoomScale,maxZoom=_this.contentProvider.maxZoom;if(delta){if(delta>0&&zoom1<maxZoom||delta<0&&zoom1>1){event.stopPropagation();event.preventDefault();var pointOld=_this.eventToPoint(event);var pointNew=_this.eventToPoint(event);var origin={x:_this.container.width()/2,y:-23+_this.container.height()/2};_this.previewObject.zoom(delta);var zoom2=_this.contentProvider.zoomScale;if(zoom1!==zoom2){var dz=zoom2/zoom1;if(zoom2==1){_this.left=0;_this.top=0}else{_this.left*=dz;_this.top*=dz}var dx=(pointOld.raw.x-origin.x)*dz,dy=(pointOld.raw.y-origin.y)*dz;pointNew.raw.x=origin.x+dx;pointNew.raw.y=origin.y+dy;_this.startPoint=pointNew;_this.pan(pointOld);var targetPage=_this.dragPage||pointOld.page;if(_this.dragPage==null&&targetPage!=null&&pointOld.isInside==true&&targetPage.magnetic==true){targetPage.pendingPoint=pointOld;targetPage.animateToReset=true;_this.corner=targetPage.magneticCorner;_this.animatePage(targetPage);targetPage.pendingPoint=null;targetPage.magnetic=false;targetPage.magneticCorner=null}}}}};var containerDom=_this.container[0];var stageDom=_this.stage[0];if(containerDom){stageDom.addEventListener("mousemove",mouseMove,false);stageDom.addEventListener("touchmove",mouseMove,false);stageDom.addEventListener("mousedown",mouseDown,false);stageDom.addEventListener("click",mouseClick,false);stageDom.addEventListener("mouseup",mouseUp,false);stageDom.addEventListener("touchend",mouseUp,false);stageDom.addEventListener("touchstart",mouseDown,false);if(_this.options.scrollWheel==true){stageDom.addEventListener("mousewheel",onMouseWheel,false);stageDom.addEventListener("DOMMouseScroll",onMouseWheel,false)}}this.dispose=function(){stageDom.removeEventListener("mousemove",mouseMove,false);stageDom.removeEventListener("touchmove",mouseMove,false);stageDom.removeEventListener("mousedown",mouseDown,false);stageDom.removeEventListener("click",mouseClick,false);stageDom.removeEventListener("mouseup",mouseUp,false);stageDom.removeEventListener("touchend",mouseUp,false);stageDom.removeEventListener("touchstart",mouseDown,false);if(_this.options.scrollWheel==true){stageDom.removeEventListener("mousewheel",onMouseWheel,false);stageDom.removeEventListener("DOMMouseScroll",onMouseWheel,false)}_this.updatePageCallback=null;_this.flipCallback=null;_this.animateF=null;_this.stage.remove()}}BookCSS.prototype={add:function(object){if(object instanceof PageCSS)this.container.append($(object.element));else this.container.append($(object))},pan:function(point){var origin=this.startPoint;var scale=this.contentProvider.zoomScale;var left=this.left+(point.raw.x-origin.raw.x),top=this.top+(point.raw.y-origin.raw.y);this.left=Math.round(limitAt(left,-this.shiftWidth,this.shiftWidth));this.top=Math.round(limitAt(top,-this.shiftHeight,this.shiftHeight));if(scale==1){this.left=0;this.top=0}this.startPoint=point;this.stage.css({transform:"translate3d("+this.left+"px,"+this.top+"px,0)"})},getPageByNumber:function(pageNumber){var relativePageNumber=isBookletMode(this)?isRTLMode(this)?pageNumber+1:pageNumber:Math.floor((pageNumber-1)/2);var page;for(var count=0;count<this.pages.length;count++){if(relativePageNumber==parseInt(this.pages[count].name,10))page=this.pages[count]}return page},getPageSide:function(pageNumber){var isRTL=this.direction==DFLIP.DIRECTION.RTL;var page=this.getPageByNumber(pageNumber);if(page==null)return;if(isBookletMode(this))return isRTL?page.front:page.back;if(pageNumber%2==0)return isRTL?page.back:page.front;else return isRTL?page.front:page.back},getContentLayer:function(pageNumber){var pageSide=this.getPageSide(pageNumber);return pageSide==null?null:pageSide.contentLayer}};BookCSS.prototype.init=function(parameters){var _this=this;_this.stage=$(html.div,{class:"df-book-stage"});_this.wrapper=$(html.div,{class:"df-book-wrapper"});_this.shadow=$(html.div,{class:"df-book-shadow"});_this.container.append(_this.stage);_this.stage.append(_this.wrapper);_this.wrapper.append(_this.shadow);_this.createStack(parameters)};BookCSS.prototype.createStack=function(parameters){var colors="red,green,blue,yellow,orange,black".split(",");for(var _stackCount=0;_stackCount<this.stackCount;_stackCount++){parameters.angles=[,this.stackCount-_stackCount];parameters.stiffness=(this.stackCount-_stackCount)/100;var clone=new PageCSS(parameters);clone.angles[1]=180;clone.index=_stackCount;clone.parent=this;clone.textureReady=false;clone.textureRequested=false;this.wrapper.append(clone.element);clone.isFlipping=false;this.pages.push(clone);clone.color=colors[_stackCount]}this.children=this.pages};BookCSS.prototype.isPageHard=function(pageNumber){return utils.isHardPage(this.hardConfig,pageNumber,this.pageCount,isBookletMode(this))};BookCSS.prototype.setDuration=function(_duration){this.duration=_duration};BookCSS.prototype.moveBy=function(step){var nextPage=this._activePage+step;nextPage=limitAt(nextPage,this.startPage,this.endPage);if(this.firstFlipped!=true){this.previewObject.analytics({eventAction:"First Page Flip",options:this.previewObject.options});this.firstFlipped=true}this.gotoPage(nextPage)};BookCSS.prototype.next=function(step){if(step==null)step=this.direction==DFLIP.DIRECTION.RTL?-this.pageMode:this.pageMode;this.moveBy(step)};BookCSS.prototype.prev=function(step){if(step==null)step=this.direction==DFLIP.DIRECTION.RTL?this.pageMode:-this.pageMode;this.moveBy(step)};BookCSS.prototype.eventToPoint=function(event){event=fixMouseEvent(event);var wrapper=this.wrapper,pages=this.pages,pageWidth=this.pageWidth,fullWidth=this.fullWidth,height=this.height,win=$(window),point={x:event.clientX,y:event.clientY};var left=point.x-wrapper[0].getBoundingClientRect().left;var top=point.y-wrapper[0].getBoundingClientRect().top;point.x=point.x-this.container[0].getBoundingClientRect().left;point.y=point.y-this.container[0].getBoundingClientRect().top;var distance=this.drag==drag.none?left<pageWidth?left:fullWidth-left:this.drag==drag.left?left:fullWidth-left;var page=left<pageWidth?pages[this.stackCount/2-1]:pages[this.stackCount/2];var pageDrag=left<this.foldSense?drag.left:left>fullWidth-this.foldSense?drag.right:drag.none;var x=left,y=top,h=height,w=fullWidth,delta=this.foldSense,corners=DFLIP.CORNERS,corner;if(x>=0&&x<delta){if(y>=0&&y<=delta)corner=corners.TL;else if(y>=h-delta&&y<=h)corner=corners.BL;else if(y>delta&&y<h-delta)corner=corners.L;else corner=corners.NONE}else if(x>=w-delta&&x<=w){if(y>=0&&y<=delta)corner=corners.TR;else if(y>=h-delta&&y<=h)corner=corners.BR;else if(y>delta&&y<h-delta)corner=corners.R;else corner=corners.NONE}else corner=corners.NONE;return{isInsidePage:x>=0&&x<=w&&y>=0&&y<=h,isInside:corner!==corners.NONE&&corner!==corners.L&&corner!==corners.R,x:left,y:top,fullWidth:fullWidth,rawDistance:fullWidth-left,distance:distance,page:page,drag:pageDrag,foldSense:this.foldSense,event:event,raw:point,corner:corner}};BookCSS.prototype.gotoPage=function(pageNumber){pageNumber=parseInt(pageNumber,10);this._activePage=pageNumber;if(this.autoPlay==true){this.previewObject.setAutoPlay(this.autoPlay)}this.updatePage(pageNumber);if(this&&this.thumblist&&this.thumblist.review)this.thumblist.review()};BookCSS.prototype.refresh=function(){this.updatePage(this._activePage);if(this.flipCallback!=null)this.flipCallback()};BookCSS.prototype.updatePage=function(pageNumber){var isRTL=this.direction==DFLIP.DIRECTION.RTL,isBooklet=isBookletMode(this),newBaseNumber=getBasePage(pageNumber);var pageDivisor=isBooklet?1:2;pageNumber=Math.floor(pageNumber/pageDivisor);if(isRTL)pageNumber=Math.ceil(this.pageCount/pageDivisor)-pageNumber;var oldBaseNumber=this.oldBaseNumber||0;var pageCount=this.pageCount/pageDivisor;var stackCount=this.stackCount;var midPoint=Math.floor(stackCount/2);if(oldBaseNumber>pageNumber){this.children[stackCount-1].skipFlip=true;this.children.unshift(this.children.pop())}else if(oldBaseNumber<pageNumber){this.children[0].skipFlip=true;this.children.push(this.children.shift())}for(var _pageCount=0;_pageCount<stackCount;_pageCount++){var page=this.children[_pageCount];if(oldBaseNumber!==pageNumber){if(page.currentTween!=null){page.clearTween(true)}}var oldSide=page.side;var newSide;var relativePageNumber=pageNumber-midPoint+_pageCount;if(isRTL)relativePageNumber=isBooklet?this.pageCount-relativePageNumber:Math.ceil(this.pageCount/2)-relativePageNumber-1;var oldName=page.name;page.isHard=this.isPageHard(relativePageNumber);if(page.isHard){page.element.addClass("df-hard-page")}else{page.element.removeClass("df-hard-page");page.front.css({display:"block"});page.back.css({display:"block"})}if(relativePageNumber==0||relativePageNumber==pageCount){page.element.addClass("df-cover-page")}else{page.element.removeClass("df-cover-page")}var oldPageNumber=$(page.element).attr("pageNumber");if(oldPageNumber!=relativePageNumber){page.front.contentLayer.empty();page.back.contentLayer.empty()}$(page.element).attr("pageNumber",relativePageNumber);page.isEdge=false;if(_pageCount==0){}else if(_pageCount==stackCount-1){}else{page.isEdge=false}if(_pageCount<midPoint){newSide=drag.left}else{newSide=drag.right}if(page.isFlipping==false){if(newSide!==oldSide&&page.skipFlip==false){this.animatePage(page);if(this.preFlipCallback!=null)this.preFlipCallback()}else{page.skipFlip=false;page.element.removeClass("df-flipping df-quick-turn df-folding df-left-side df-right-side");page.element.addClass(_pageCount<midPoint?"df-left-side":"df-right-side");page.side=newSide}}page.visible=isBooklet?isRTL?_pageCount<midPoint||page.isFlipping:_pageCount>=midPoint||page.isFlipping:relativePageNumber>=0&&relativePageNumber<pageCount||isBooklet&&relativePageNumber==pageCount;if(this.requestPage!=null&&page.visible==true){page.name=relativePageNumber.toString();if(page.name!=oldName){page.backTextureLoaded=false;page.frontTextureLoaded=false;page.backPageStamp="-1";page.frontPageStamp="-1";page.thumbLoaded=false;page.front.contentLayer.html("");page.back.contentLayer.html("");page.frontImage(defaults.textureLoadFallback);page.backImage(defaults.textureLoadFallback);this.requestPage()}}page.oldDepth=page.depth;page.updateCSS({display:page.visible==true?"block":"none",zIndex:6+(_pageCount<midPoint?_pageCount-midPoint:midPoint-_pageCount),transform:""});if(page.pendingPoint==null&&page.isFlipping==false){page.resetCSS()}}if(TWEEN.getAll().length==0){clearInterval(this.animate)}$(".quick-hint").html(pageNumber);this.oldBaseNumber=pageNumber;if(this.updatePageCallback)this.updatePageCallback()};BookCSS.prototype.animatePage=function(page){page.element.addClass("df-flipping");page.isFlipping=true;if(this.animate!=null){clearInterval(this.animate)}this.animate=setInterval(this.animateF,30);page.tween(page.pendingPoint)};return BookCSS}({});var FlipBook=function(_super){__extends(FlipBook,_super);function FlipBook(container,source,parameters){_super.call(this,parameters);var _this=this;_this.type="FlipBook";_this.container=container;_this.options=parameters;_this.options.source=source;_this.contentSource=source;if(parameters.height!=null&¶meters.height.toString().indexOf("%")<0){_this.container.height(Math.min(parameters.height,$(window).height()))}else{_this.container.height(parameters.height)}if(_this.options.isLightBox){window.dfLightBox.closeButton.addClass(_this.options.icons["close"])}if(_this.options.pageSize==DFLIP.PAGE_SIZE.DOUBLEINTERNAL){if(Array===_this.contentSource.constructor||Array.isArray(_this.contentSource)||_this.contentSource instanceof Array){_this.options.singlePageMode=DFLIP.SINGLE_PAGE_MODE.ZOOM}_this.container.addClass("df-double-internal")}if(!_this.options.isLightBox&&_this.container.attr("id")!=null){_this.options.id=_this.container.attr("id")}if(_this.options.parsed!==true&&_this.options.links!=null){DFLIP.parseLinks(_this.options.links)}var webgl=_this.webgl=parameters.webgl==true&&hasWebgl==true&&utils.canSupport3D();container.addClass("df-container df-loading df-init df-floating"+" df-controls-"+_this.options.controlsPosition);if(_this.options.transparent==true){container.addClass("df-transparent")}if(_this.options.direction==DFLIP.DIRECTION.RTL){container.addClass("df-rtl")}_this.container.info=$(html.div,{class:"loading-info"}).appendTo(_this.container).html(_this.options.text.loading+"...");if(!!userAgent.match(/msie\s[5-9]/i)){_this.container.info.html("Your browser (Internet Explorer) is out of date to run DFlip Flipbook Plugin. <br><a href='http://browsehappy.com/'>Upgrade to a new one</a>").addClass("df-old-browser");container.removeClass("df-loading");return _this}var backgroundImage=parameters.backgroundImage==null||parameters.backgroundImage==""?"":"url('"+parameters.backgroundImage+"')";_this.container.css({position:"relative",overflow:"hidden",backgroundColor:parameters.backgroundColor,backgroundImage:backgroundImage});if(_this.options.isLightBox==true){_this.analytics({eventAction:"Open Book",options:_this.options})}_this.init(webgl,source);if(_this.options.onCreate!=null)_this.options.onCreate(_this);return _this}FlipBook.prototype.init=function(webgl){var _this=this;var book=_this.target;var options=_this.options;if(webgl==true){var updateMockupJs=function(callback){var process3d=function(){MOCKUP.defaults.anisotropy=0;MOCKUP.defaults.groundTexture="blank";THREE.skipPowerOfTwo=true;RegisterMockupObjects();if(callback!=null)callback()};if(window.MOCKUP==null){_this.updateInfo(options.text.loading+" WEBGL 3D ...");if(typeof define==="function"&&define.amd&&window.requirejs){requirejs.config({paths:{three:defaults.threejsSrc.replace(".js","")},shim:{three:{exports:"THREE"}}});require(["three"],function(THREE){window.THREE=THREE;getScript(defaults.mockupjsSrc+"?ver="+DFLIP.version,function(){process3d()});return THREE})}else if(typeof define==="function"&&define.amd){require(["three",defaults.threejsSrc.replace(".js","")],function(ready,fx){ready(function(){})})}else{getScript(defaults.threejsSrc+"?ver="+DFLIP.version,function(){getScript(defaults.mockupjsSrc+"?ver="+DFLIP.version,function(){process3d()})})}}else{process3d()}};updateMockupJs(function(){_this.container.css({minHeight:300,minWidth:300});_this.stage=new PreviewStage(extendOptions(_this.options,{container:_this.container}));_this.stage.previewObject=_this;_this.contentProvider=new ContentProvider(_this.contentSource,function(contentProvider){var options={pageCount:contentProvider.pageCount,stackCount:6,segments:20,width:contentProvider.bookSize.width,height:contentProvider.bookSize.height};_this.target=book=_this.stage.target=new MOCKUP.Book(extendOptions(_this.options,options),_this.stage);_this.extendtarget();createUI(_this.container,_this);book.ui=_this.ui;book.container=_this.container;contentProvider.webgl=webgl;contentProvider.setTarget(_this.target);book.getContentLayer=function(pageNumber){var isRTL=book.direction==DFLIP.DIRECTION.RTL,left=_this.stage.cssScene.divLeft.element,right=_this.stage.cssScene.divRight.element;var baseActive=getBasePage(book._activePage);if(isBookletMode(book))return isRTL?left:right;if(pageNumber%2==0)return isRTL?right:left;else return isRTL?left:right};book.stage=_this.stage;book.flipCallback=function(){if(_this.contentProvider){_this.contentProvider.review("flipCallback");var baseActive=getBasePage(book._activePage);var width,height;var pageLeft=book.getPageByNumber(baseActive),pageRight=book.getPageByNumber(baseActive+1);var divLeft=book.parent.cssScene.divLeft,divRight=book.parent.cssScene.divRight;var isSingle=book.pageMode==DFLIP.PAGE_MODE.SINGLE;var isRTL=book.direction==DFLIP.DIRECTION.RTL;if(pageLeft!=null&&divLeft!=null){width=Math.abs(pageLeft.geometry.boundingBox.max.x-pageLeft.geometry.boundingBox.min.x);height=Math.abs(pageLeft.geometry.boundingBox.max.z-pageLeft.geometry.boundingBox.min.z);divLeft.rotation.y=-Math.atan2(height,width)*.9;divLeft.position.z=height*.8;divLeft.position.x=height/2.5;$(divLeft.element).css({width:width,left:-width/2})}if(pageRight!=null&&divRight!=null){width=Math.abs(pageRight.geometry.boundingBox.max.x-pageRight.geometry.boundingBox.min.x);height=Math.abs(pageRight.geometry.boundingBox.max.z-pageRight.geometry.boundingBox.min.z);divRight.rotation.y=Math.atan2(height,width)*.9;divRight.position.z=height*.8;divRight.position.x=-height/2.5;$(divRight.element).css({width:width,left:width/2})}if(_this.options.onFlip!=null)_this.options.onFlip(_this)}};book.resize=function(){_this.resize()}();book.updatePageCallback=function(){_this.ui.update();_this.checkCenter();_this.stage.renderRequestPending=true};var divLeft=$(_this.stage.cssScene.divLeft.element);var divRight=$(_this.stage.cssScene.divRight.element);book.preFlipCallback=function(){divLeft.empty();divRight.empty();if(_this.options.beforeFlip!=null)_this.options.beforeFlip(_this);_this.playSound()};$(window).trigger("resize");divLeft.css({width:contentProvider.bookSize.width,height:contentProvider.bookSize.height,left:-contentProvider.bookSize.width/2});divRight.css({width:contentProvider.bookSize.width,height:contentProvider.bookSize.height,left:contentProvider.bookSize.width/2});book.ease=TWEEN.Easing.Cubic.InOut;book.contentProvider=contentProvider;book.duration=_this.options.duration;book.gotoPage(book._activePage);book.flipCallback();if(_this.options.isLightBox==true){_this.analytics({eventAction:"Book Ready",options:_this.options})}if(_this.options.onReady!=null)_this.options.onReady(_this)},options,_this)})}else{_this.contentProvider=new ContentProvider(_this.contentSource,function(contentProvider){var options={pageCount:contentProvider.pageCount,contentSourceType:contentProvider.contentSourceType};_this.target=book=new BookCSS(extendOptions(_this.options,options),_this.container);_this.target.previewObject=_this;_this.extendtarget();createUI(_this.container,_this);contentProvider.webgl=webgl;contentProvider.setTarget(_this.target);contentProvider.waitPeriod=2;book.ease=TWEEN.Easing.Quadratic.InOut;book.duration=_this.options.duration;book.container=_this.container;book.updatePageCallback=function(){_this.ui.update();_this.checkCenter()};book.resize=function(){_this.resize()}();$(window).trigger("resize");book.flipCallback=function(){if(_this.contentProvider){_this.contentProvider.review("flipCallback");if(_this.options.onFlip!=null)_this.options.onFlip(_this)}};book.preFlipCallback=function(){if(_this.options.beforeFlip!=null)_this.options.beforeFlip(_this);_this.playSound()};book.gotoPage(book._activePage);book.flipCallback();if(_this.options.onReady!=null)_this.options.onReady(_this);_this.analytics({eventAction:"Book Ready",options:_this.options})},options,_this)}};FlipBook.prototype.extendtarget=function(){var _this=this;_this.target.previewObject=_this;_this.target.reset=function(){for(var pageCount=0;pageCount<_this.target.children.length;pageCount++){var page=_this.target.children[pageCount];page.skipFlip=true;page.name="-2"}_this.contentProvider.annotedPage="-2";_this.target.refresh()}};FlipBook.prototype.getURLHash=function(){if(this.options.id!=null){var hash=utils.getSharePrefix()+(this.options.slug!=null?this.options.slug:this.options.id)+"/";if(this.target!=null&&this.target._activePage!=null){hash+=this.target._activePage+"/"}window.location.hash=hash}return window.location.href};FlipBook.prototype.end=function(){this.target.gotoPage(this.target.endPage)};FlipBook.prototype.gotoPage=function(pageNumber){this.target.gotoPage(pageNumber);if(this.ui!=null)this.ui.update()};FlipBook.prototype.prev=function(){this.target.prev()};FlipBook.prototype.next=function(){this.target.next()};FlipBook.prototype.updateInfo=function(info){if(this.container&&this.container.info&&this.container.info.html)this.container.info.html(info)};FlipBook.prototype.analytics=function(eventData){if(this.options.enableAnalytics==true){try{var options=eventData.options,eventLabel=undefined;if(options){eventLabel=options.bookTitle||options.slug||options.id}var analyticsTag=window.gtag;if(analyticsTag){analyticsTag("event",eventData.eventAction,{event_category:"Flipbook",event_label:eventLabel})}else{var analytics=window.ga||window.__gaTracker;analytics("send",{hitType:"event",eventCategory:"Flipbook",eventAction:eventData.eventAction,eventLabel:eventLabel})}}catch(e){}}};return FlipBook}(PreviewObject);$.fn.extend({shelf:function(){},flipBook:function(source,options){return new FlipBook($(this),source,extendDFlipOptions(options))}})})(DFLIP,jQuery);(function(view){"use strict";view.URL=view.URL||view.webkitURL;if(view.Blob&&view.URL){try{new Blob;return}catch(e){}}var BlobBuilder=view.BlobBuilder||view.WebKitBlobBuilder||view.MozBlobBuilder||function(view){var get_class=function(object){return Object.prototype.toString.call(object).match(/^\[object\s(.*)\]$/)[1]},FakeBlobBuilder=function BlobBuilder(){this.data=[]},FakeBlob=function Blob(data,type,encoding){this.data=data;this.size=data.length;this.type=type;this.encoding=encoding},FBB_proto=FakeBlobBuilder.prototype,FB_proto=FakeBlob.prototype,FileReaderSync=view.FileReaderSync,FileException=function(type){this.code=this[this.name=type]},file_ex_codes=("NOT_FOUND_ERR SECURITY_ERR ABORT_ERR NOT_READABLE_ERR ENCODING_ERR "+"NO_MODIFICATION_ALLOWED_ERR INVALID_STATE_ERR SYNTAX_ERR").split(" "),file_ex_code=file_ex_codes.length,real_URL=view.URL||view.webkitURL||view,real_create_object_URL=real_URL.createObjectURL,real_revoke_object_URL=real_URL.revokeObjectURL,URL=real_URL,btoa=view.btoa,atob=view.atob,ArrayBuffer=view.ArrayBuffer,Uint8Array=view.Uint8Array,origin=/^[\w-]+:\/*\[?[\w\.:-]+\]?(?::[0-9]+)?/;FakeBlob.fake=FB_proto.fake=true;while(file_ex_code--){FileException.prototype[file_ex_codes[file_ex_code]]=file_ex_code+1}if(!real_URL.createObjectURL){URL=view.URL=function(uri){var uri_info=document.createElementNS("http://www.w3.org/1999/xhtml","a"),uri_origin;uri_info.href=uri;if(!("origin"in uri_info)){if(uri_info.protocol.toLowerCase()==="data:"){uri_info.origin=null}else{uri_origin=uri.match(origin);uri_info.origin=uri_origin&&uri_origin[1]}}return uri_info}}URL.createObjectURL=function(blob){var type=blob.type,data_URI_header;if(type===null){type="application/octet-stream"}if(blob instanceof FakeBlob){data_URI_header="data:"+type;if(blob.encoding==="base64"){return data_URI_header+";base64,"+blob.data}else if(blob.encoding==="URI"){return data_URI_header+","+decodeURIComponent(blob.data)}if(btoa){return data_URI_header+";base64,"+btoa(blob.data)}else{return data_URI_header+","+encodeURIComponent(blob.data)}}else if(real_create_object_URL){return real_create_object_URL.call(real_URL,blob)}};URL.revokeObjectURL=function(object_URL){if(object_URL.substring(0,5)!=="data:"&&real_revoke_object_URL){real_revoke_object_URL.call(real_URL,object_URL)}};FBB_proto.append=function(data){var bb=this.data;if(Uint8Array&&(data instanceof ArrayBuffer||data instanceof Uint8Array)){var str="",buf=new Uint8Array(data),i=0,buf_len=buf.length;for(;i<buf_len;i++){str+=String.fromCharCode(buf[i])}bb.push(str)}else if(get_class(data)==="Blob"||get_class(data)==="File"){if(FileReaderSync){var fr=new FileReaderSync;bb.push(fr.readAsBinaryString(data))}else{throw new FileException("NOT_READABLE_ERR")}}else if(data instanceof FakeBlob){if(data.encoding==="base64"&&atob){bb.push(atob(data.data))}else if(data.encoding==="URI"){bb.push(decodeURIComponent(data.data))}else if(data.encoding==="raw"){bb.push(data.data)}}else{if(typeof data!=="string"){data+=""}bb.push(unescape(encodeURIComponent(data)))}};FBB_proto.getBlob=function(type){if(!arguments.length){type=null}return new FakeBlob(this.data.join(""),type,"raw")};FBB_proto.toString=function(){return"[object BlobBuilder]"};FB_proto.slice=function(start,end,type){var args=arguments.length;if(args<3){type=null}return new FakeBlob(this.data.slice(start,args>1?end:this.data.length),type,this.encoding)};FB_proto.toString=function(){return"[object Blob]"};FB_proto.close=function(){this.size=0;delete this.data};return FakeBlobBuilder}(view);view.Blob=function(blobParts,options){var type=options?options.type||"":"";var builder=new BlobBuilder;if(blobParts){for(var i=0,len=blobParts.length;i<len;i++){if(Uint8Array&&blobParts[i]instanceof Uint8Array){builder.append(blobParts[i].buffer)}else{builder.append(blobParts[i])}}}var blob=builder.getBlob(type);if(!blob.slice&&blob.webkitSlice){blob.slice=blob.webkitSlice}return blob};var getPrototypeOf=Object.getPrototypeOf||function(object){return object.__proto__};view.Blob.prototype=getPrototypeOf(new view.Blob)})(window);(function(view){"use strict";var Uint8Array=view.Uint8Array,HTMLCanvasElement=view.HTMLCanvasElement,canvas_proto=HTMLCanvasElement&&HTMLCanvasElement.prototype,is_base64_regex=/\s*;\s*base64\s*(?:;|$)/i,to_data_url="toDataURL",base64_ranks,decode_base64=function(base64){var len=base64.length,buffer=new Uint8Array(len/4*3|0),i=0,outptr=0,last=[0,0],state=0,save=0,rank,code;while(len--){code=base64.charCodeAt(i++);rank=base64_ranks[code-43];if(rank!==255&&rank!=null){last[1]=last[0];last[0]=code;save=save<<6|rank;state++;if(state===4){buffer[outptr++]=save>>>16;if(last[1]!==61){buffer[outptr++]=save>>>8}if(last[0]!==61){buffer[outptr++]=save}state=0}}}return buffer};if(Uint8Array){base64_ranks=new Uint8Array([62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,0,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51])}if(HTMLCanvasElement&&!canvas_proto.toBlob){canvas_proto.toBlob=function(callback,type){if(!type){type="image/png"}if(this.mozGetAsFile){callback(this.mozGetAsFile("canvas",type));return}if(this.msToBlob&&/^\s*image\/png\s*(?:$|;)/i.test(type)){callback(this.msToBlob());return}var args=Array.prototype.slice.call(arguments,1),dataURI=this[to_data_url].apply(this,args),header_end=dataURI.indexOf(","),data=dataURI.substring(header_end+1),is_base64=is_base64_regex.test(dataURI.substring(0,header_end)),blob;if(Blob.fake){blob=new Blob;if(is_base64){blob.encoding="base64"}else{blob.encoding="URI"}blob.data=data;blob.size=data.length}else if(Uint8Array){if(is_base64){blob=new Blob([decode_base64(data)],{type:type})}else{blob=new Blob([decodeURIComponent(data)],{type:type})}}callback(blob)};if(canvas_proto.toDataURLHD){canvas_proto.toBlobHD=function(){to_data_url="toDataURLHD";var blob=this.toBlob();to_data_url="toDataURL";return blob}}else{canvas_proto.toBlobHD=canvas_proto.toBlob}}})(window);(function PerformanceNowPolyfill(){if("performance"in window===false){window.performance={}}Date.now=Date.now||function(){return(new Date).getTime()};if("now"in window.performance===false){var offset=window.performance.timing&&window.performance.timing.navigationStart?window.performance.timing.navigationStart:Date.now();window.performance.now=function(){return Date.now()-offset}}})();(function TweenJs(){var TWEEN=TWEEN||function(){var _tweens=[];return{getAll:function(){return _tweens},removeAll:function(){_tweens=[]},add:function(tween){_tweens.push(tween)},remove:function(tween){var i=_tweens.indexOf(tween);if(i!==-1){_tweens.splice(i,1)}},update:function(time){if(_tweens.length===0){return false}var i=0;time=time!=null?time:window.performance.now();while(i<_tweens.length){if(_tweens[i].update(time)){i++}else{_tweens.splice(i,1)}}return true}}}();TWEEN.Tween=function(object){var _object=object;var _valuesStart={};var _valuesEnd={};var _valuesStartRepeat={};var _duration=1e3;var _repeat=0;var _yoyo=false;var _isPlaying=false;var _reversed=false;var _delayTime=0;var _startTime=null;var _easingFunction=TWEEN.Easing.Linear.None;var _interpolationFunction=TWEEN.Interpolation.Linear;var _chainedTweens=[];var _onStartCallback=null;var _onStartCallbackFired=false;var _onUpdateCallback=null;var _onCompleteCallback=null;var _onStopCallback=null;for(var field in object){_valuesStart[field]=parseFloat(object[field],10)}this.to=function(properties,duration){if(duration!=null){_duration=duration}_valuesEnd=properties;return this};this.start=function(time){TWEEN.add(this);_isPlaying=true;_onStartCallbackFired=false;_startTime=time!=null?time:window.performance.now();_startTime+=_delayTime;for(var property in _valuesEnd){if(_valuesEnd[property]instanceof Array){if(_valuesEnd[property].length===0){continue}_valuesEnd[property]=[_object[property]].concat(_valuesEnd[property])}if(_valuesStart[property]===null){continue}_valuesStart[property]=_object[property];if(_valuesStart[property]instanceof Array===false){_valuesStart[property]*=1}_valuesStartRepeat[property]=_valuesStart[property]||0}return this};this.stop=function(){if(!_isPlaying){return this}TWEEN.remove(this);_isPlaying=false;if(_onStopCallback!==null){_onStopCallback.call(_object)}this.stopChainedTweens();return this};this.stopChainedTweens=function(){for(var i=0,numChainedTweens=_chainedTweens.length;i<numChainedTweens;i++){_chainedTweens[i].stop()}};this.complete=function(){if(!_isPlaying){return this}TWEEN.remove(this);_isPlaying=false;if(_onCompleteCallback!==null){_onCompleteCallback.call(_object)}this.completeChainedTweens();return this};this.completeChainedTweens=function(){for(var i=0,numChainedTweens=_chainedTweens.length;i<numChainedTweens;i++){_chainedTweens[i].complete()}};this.delay=function(amount){_delayTime=amount;return this};this.repeat=function(times){_repeat=times;return this};this.yoyo=function(yoyo){_yoyo=yoyo;return this};this.easing=function(easing){_easingFunction=easing==null?_easingFunction:easing;return this};this.interpolation=function(interpolation){_interpolationFunction=interpolation;return this};this.chain=function(){_chainedTweens=arguments;return this};this.onStart=function(callback){_onStartCallback=callback;return this};this.onUpdate=function(callback){_onUpdateCallback=callback;return this};this.onComplete=function(callback){_onCompleteCallback=callback;return this};this.onStop=function(callback){_onStopCallback=callback;return this};this.update=function(time){var property;var elapsed;var value;if(time<_startTime){return true}if(_onStartCallbackFired===false){if(_onStartCallback!==null){_onStartCallback.call(_object)}_onStartCallbackFired=true}elapsed=(time-_startTime)/_duration;elapsed=elapsed>1?1:elapsed;value=_easingFunction(elapsed);for(property in _valuesEnd){if(_valuesStart[property]===null){continue}var start=_valuesStart[property]||0;var end=_valuesEnd[property];if(end instanceof Array){_object[property]=_interpolationFunction(end,value)}else{if(typeof end==="string"){if(end.startsWith("+")||end.startsWith("-")){end=start+parseFloat(end,10)}else{end=parseFloat(end,10)}}if(typeof end==="number"){_object[property]=start+(end-start)*value}}}if(_onUpdateCallback!==null){_onUpdateCallback.call(_object,value)}if(elapsed===1){if(_repeat>0){if(isFinite(_repeat)){_repeat--}for(property in _valuesStartRepeat){if(typeof _valuesEnd[property]==="string"){_valuesStartRepeat[property]=_valuesStartRepeat[property]+parseFloat(_valuesEnd[property],10)}if(_yoyo){var tmp=_valuesStartRepeat[property];_valuesStartRepeat[property]=_valuesEnd[property];_valuesEnd[property]=tmp}_valuesStart[property]=_valuesStartRepeat[property]}if(_yoyo){_reversed=!_reversed}_startTime=time+_delayTime;return true}else{if(_onCompleteCallback!==null){_onCompleteCallback.call(_object)}for(var i=0,numChainedTweens=_chainedTweens.length;i<numChainedTweens;i++){_chainedTweens[i].start(_startTime+_duration)}return false}}return true}};TWEEN.Easing={Linear:{None:function(k){return k}},Quadratic:{In:function(k){return k*k},Out:function(k){return k*(2-k)},InOut:function(k){if((k*=2)<1){return.5*k*k}return-.5*(--k*(k-2)-1)}},Quartic:{In:function(k){return k*k*k*k},Out:function(k){return 1- --k*k*k*k},InOut:function(k){if((k*=2)<1){return.5*k*k*k*k}return-.5*((k-=2)*k*k*k-2)}},Sinusoidal:{In:function(k){return 1-Math.cos(k*Math.PI/2)},Out:function(k){return Math.sin(k*Math.PI/2)},InOut:function(k){return.5*(1-Math.cos(Math.PI*k))}},Cubic:{In:function(k){return k*k*k},Out:function(k){return--k*k*k+1},InOut:function(k){if((k*=2)<1){return.5*k*k*k}return.5*((k-=2)*k*k+2)}}};TWEEN.Interpolation={Linear:function(v,k){var m=v.length-1;var f=m*k;var i=Math.floor(f);var fn=TWEEN.Interpolation.Utils.Linear;if(k<0){return fn(v[0],v[1],f)}if(k>1){return fn(v[m],v[m-1],m-f)}return fn(v[i],v[i+1>m?m:i+1],f-i)},Bezier:function(v,k){var b=0;var n=v.length-1;var pw=Math.pow;var bn=TWEEN.Interpolation.Utils.Bernstein;for(var i=0;i<=n;i++){b+=pw(1-k,n-i)*pw(k,i)*v[i]*bn(n,i)}return b},Utils:{Linear:function(p0,p1,t){return(p1-p0)*t+p0},Bernstein:function(n,i){var fc=TWEEN.Interpolation.Utils.Factorial;return fc(n)/fc(i)/fc(n-i)},Factorial:function(){var a=[1];return function(n){var s=1;if(a[n]){return a[n]}for(var i=n;i>1;i--){s*=i}a[n]=s;return s}}(),CatmullRom:function(p0,p1,p2,p3,t){var v0=(p2-p0)*.5;var v1=(p3-p1)*.5;var t2=t*t;var t3=t*t2;return(2*p1-2*p2+v0+v1)*t3+(-3*p1+3*p2-2*v0-v1)*t2+v0*t+p1}}};window.TWEEN=TWEEN})();DFLIP.createBlob=function createBlob(data,contentType){if(typeof Blob!=="undefined"){return new Blob([data],{type:contentType})}var bb=new MozBlobBuilder;bb.append(data);return bb.getBlob(contentType)};DFLIP.createObjectURL=function createObjectURLClosure(){var digits="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";return function createObjectURL(data,contentType){if(typeof URL!=="undefined"&&URL.createObjectURL){var blob=DFLIP.createBlob(data,contentType);return URL.createObjectURL(blob)}var buffer="data:"+contentType+";base64,";for(var i=0,ii=data.length;i<ii;i+=3){var b1=data[i]&255;var b2=data[i+1]&255;var b3=data[i+2]&255;var d1=b1>>2,d2=(b1&3)<<4|b2>>4;var d3=i+1<ii?(b2&15)<<2|b3>>6:64;var d4=i+2<ii?b3&63:64;buffer+=digits[d1]+digits[d2]+digits[d3]+digits[d4]}return buffer}}();var ThumbList=function ThumbListClosure(){function ThumbList(config){var width=config&&config.w+"px"||"100%";var height=config&&config.h+"px"||"100%";var itemHeight=this.itemHeight=config.itemHeight;this.items=config.items;this.generatorFn=config.generatorFn;this.totalRows=config.totalRows||config.items&&config.items.length;this.addFn=config.addFn;this.scrollFn=config.scrollFn;var scroller=ThumbList.createScroller(itemHeight*this.totalRows);this.container=ThumbList.createContainer(width,height);this.container.appendChild(scroller);this.screenItemsLen=Math.ceil(config.h/itemHeight);this.offsetItems=this.screenItemsLen;this.cachedItemsLen=this.screenItemsLen+this.offsetItems*2;this._renderChunk(this.container,0);var self=this;self.lastRepaintY=0;var maxBuffer=this.screenItemsLen*itemHeight;var lastScrolled=0;var requestInterval;function onScroll(e){var scrollTop=e.target.scrollTop;if(!self.lastRepaintY||Math.abs(scrollTop-self.lastRepaintY)>=self.offsetItems*self.itemHeight){var first=parseInt(scrollTop/itemHeight,10)-self.offsetItems;self._renderChunk(self.container,first<0?0:first);self.lastRepaintY=scrollTop}self.lastScrolled=lastScrolled=Date.now();if(self.scrollFn!=null){self.scrollFn()}e.preventDefault&&e.preventDefault()}self.dispose=function(){if(self.container){if(self.container.parentNode){self.container.parentNode.removeChild(self.container)}}self.container.removeEventListener("scroll",onScroll)};self.container.addEventListener("scroll",onScroll)}ThumbList.prototype.reset=function(height){this.screenItemsLen=Math.ceil(height/this.itemHeight);this.cachedItemsLen=this.screenItemsLen+this.offsetItems*2;var first=parseInt(this.lastRepaintY/this.itemHeight,10)-this.offsetItems;this.needReset=true;this._renderChunk(this.container,Math.max(first,0))};ThumbList.prototype.createRow=function(i){var item;if(this.generatorFn){item=this.generatorFn(i);item.classList.add("df-vrow");item.style.position="absolute";item.style.top=i*this.itemHeight+"px";item.setAttribute("index",i)}return item};ThumbList.prototype._renderChunk=function(node,from){var isEmpty=this.range==null;this.range=this.range||{min:0,max:this.cachedItemsLen};var range=this.range;var min=range.min,max=range.max;var isAdd=isEmpty?true:from>=min;if(!isEmpty&&from==min&&this.needReset==false)return;var countVar;var start=isEmpty?min:isAdd?max:from;start=start>this.totalRows?this.totalRows:start<0?0:start;var end=from+this.cachedItemsLen;end=end>this.totalRows?this.totalRows:end;for(countVar=start;countVar<end;countVar++){if(isAdd)node.appendChild(this.createRow(countVar));else node.insertBefore(this.createRow(countVar),node.childNodes[1+countVar-start]);if(this.addFn!=null){this.addFn(countVar)}}var difference=Math.abs(from-min);this.needReset=false;if(!isEmpty&&node.childNodes.length>this.cachedItemsLen+1){var delStart=isAdd?1:1+this.cachedItemsLen,delEnd=delStart+(end-start);for(var j=delEnd;j>delStart;j--){if(node.childNodes[delStart])this.container.removeChild(node.childNodes[delStart])}}this.range.min=from;this.range.max=end};ThumbList.createContainer=function(w,h){var c=document.createElement("div");c.style.width=w;c.style.height=h;c.style.overflow="auto";c.style.position="relative";c.style.padding=0;return c};ThumbList.createScroller=function(h){var scroller=document.createElement("div");scroller.style.opacity=0;scroller.style.position="absolute";scroller.style.top=0;scroller.style.left=0;scroller.style.width="1px";scroller.style.height=h+"px";return scroller};return ThumbList}();var BookMarkViewer=function BookMarkViewerClosure(){function BookMarkViewer(options){this.outline=null;this.lastToggleIsShow=true;this.container=options.container;this.linkService=options.linkService;this.outlineItemClass=options.outlineItemClass||"outlineItem";this.outlineToggleClass=options.outlineToggleClass||"outlineItemToggler";this.outlineToggleHiddenClass=options.outlineToggleHiddenClass||"outlineItemsHidden"}BookMarkViewer.prototype={dispose:function(){if(this.container){if(this.container.parentNode){this.container.parentNode.removeChild(this.container)}}this.linkService=null},reset:function BookMarkViewer_reset(){this.outline=null;this.lastToggleIsShow=true;var container=this.container;while(container.firstChild){container.removeChild(container.firstChild)}},_dispatchEvent:function BookMarkViewer_dispatchEvent(outlineCount){var event=document.createEvent("CustomEvent");event.initCustomEvent("outlineloaded",true,true,{outlineCount:outlineCount});this.container.dispatchEvent(event)},_bindLink:function BookMarkViewer_bindLink(element,item){var linkService=this.linkService;if(item.custom==true){element.href=linkService.getCustomDestinationHash(item.dest);element.onclick=function goToDestination(e){linkService.customNavigateTo(item.dest);return false}}else{if(item.url){pdfjsLib.addLinkAttributes(element,{url:item.url});return}element.href=linkService.getDestinationHash(item.dest);element.onclick=function goToDestination(e){linkService.navigateTo(item.dest);return false}}},_addToggleButton:function BookMarkViewer_addToggleButton(div){var toggler=document.createElement("div");toggler.className=this.outlineToggleClass+" "+this.outlineToggleHiddenClass;toggler.onclick=function(event){event.stopPropagation();toggler.classList.toggle(this.outlineToggleHiddenClass);if(event.shiftKey){var shouldShowAll=!toggler.classList.contains(this.outlineToggleHiddenClass);this._toggleOutlineItem(div,shouldShowAll)}}.bind(this);div.insertBefore(toggler,div.firstChild)},_toggleOutlineItem:function BookMarkViewer_toggleOutlineItem(root,show){this.lastToggleIsShow=show;var togglers=root.querySelectorAll("."+this.outlineToggleClass);for(var i=0,ii=togglers.length;i<ii;++i){togglers[i].classList[show?"remove":"add"](this.outlineToggleHiddenClass)}},toggleOutlineTree:function BookMarkViewer_toggleOutlineTree(){if(!this.outline){return}this._toggleOutlineItem(this.container,!this.lastToggleIsShow)},render:function BookMarkViewer_render(params){var outline=params&¶ms.outline||null;var outlineCount=0;if(this.outline){this.reset()}this.outline=outline;if(!outline){return}var fragment=document.createDocumentFragment();var queue=[{parent:fragment,items:this.outline}];var hasAnyNesting=false;while(queue.length>0){var levelData=queue.shift();var isCustom=levelData.custom;for(var i=0,len=levelData.items.length;i<len;i++){var item=levelData.items[i];var div=document.createElement("div");div.className=this.outlineItemClass;var element=document.createElement("a");if(item.custom==null&&isCustom!=null)item.custom=isCustom;this._bindLink(element,item);element.textContent=item.title.replace(/\x00/g,"");div.appendChild(element);if(item.items&&item.items.length>0){hasAnyNesting=true;this._addToggleButton(div);var itemsDiv=document.createElement("div");itemsDiv.className=this.outlineItemClass+"s";div.appendChild(itemsDiv);queue.push({parent:itemsDiv,custom:item.custom,items:item.items})}levelData.parent.appendChild(div);outlineCount++}}if(hasAnyNesting){if(this.container.classList!=null){this.container.classList.add(this.outlineItemClass+"s")}else if(this.container.className!=null){this.container.className+=" picWindow"}}this.container.appendChild(fragment);this._dispatchEvent(outlineCount)}};return BookMarkViewer}();var DFLightBox=function DFLightBoxClosure($){function DFLightBox(closeCallback,options){this.duration=300;var _this=this;_this.lightboxWrapper=$("<div>").addClass("df-lightbox-wrapper");_this.container=$("<div>").addClass("df-container").appendTo(_this.lightboxWrapper);_this.controls=$("<div>").addClass("df-lightbox-controls").appendTo(_this.lightboxWrapper);_this.closeButton=$("<div>").addClass("df-lightbox-close df-ui-btn").on("click",function(){_this.close(closeCallback)}).appendTo(_this.controls);_this.lightboxWrapper.append(_this.container);return _this}DFLightBox.prototype.show=function(callback){if(this.lightboxWrapper.parent().length==0)$("body").append(this.lightboxWrapper);$("html,body").addClass("df-lightbox-open");this.lightboxWrapper.fadeIn(this.duration,callback);return this};DFLightBox.prototype.close=function(callback){this.lightboxWrapper.fadeOut(this.duration);setTimeout(callback,this.duration);$("html,body").removeClass("df-lightbox-open");return this};return DFLightBox}(jQuery);DFLIP.Share=function ShareClosure($){function Share(container,options){var _this=this;var htmlDiv="<div>";var shareButtonClass="df-share-button";var windowParameters="width=500,height=400";_this.isOpen=false;_this.shareUrl="";_this.wrapper=$('<div class="df-share-wrapper" style="display: none;">').on("click",function(e){_this.close()});_this.box=$('<div class="df-share-box">').on("click",function(e){e.preventDefault();e.stopPropagation()}).appendTo(_this.wrapper).html('<span class="df-share-title">'+options.text.share+"</span>");_this.urlInput=$('<textarea class="df-share-url">').on("click",function(){$(this).select()});_this.facebook=$(htmlDiv,{class:shareButtonClass+" df-share-facebook "+options.icons["facebook"]}).on("click",function(e){window.open("https://www.facebook.com/sharer/sharer.php?u="+encodeURIComponent(_this.shareUrl),"Sharer",windowParameters)});_this.google=$(htmlDiv,{class:shareButtonClass+" df-share-google "+options.icons["google"]}).on("click",function(e){window.open("https://plus.google.com/share?url="+encodeURIComponent(_this.shareUrl),"Sharer",windowParameters)});_this.twitter=$(htmlDiv,{class:shareButtonClass+" df-share-twitter "+options.icons["twitter"]}).on("click",function(e){window.open("http://twitter.com/share?url="+encodeURIComponent(_this.shareUrl),"Sharer",windowParameters)});_this.mail=$("<a>",{class:shareButtonClass+" df-share-mail "+options.icons["mail"],href:"mailto:?subject="+options.text["mailSubject"]+"&body="+options.text["mailBody"].replace("{{url}}",encodeURIComponent(_this.shareUrl)),target:"_blank"}).on("click",function(e){$(this).attr("href","mailto:?subject="+options.text["mailSubject"]+"&body="+options.text["mailBody"].replace("{{url}}",encodeURIComponent(_this.shareUrl)));e.stopPropagation()});_this.box.append(_this.urlInput).append(_this.facebook).append(_this.twitter).append(_this.mail);$(container).append(_this.wrapper)}Share.prototype.show=function(){this.wrapper.fadeIn(300);this.urlInput.val(this.shareUrl);this.urlInput.trigger("click");this.isOpen=true};Share.prototype.dispose=function(){var _this=this;_this.box.off();_this.google.off();_this.twitter.off();_this.facebook.off();_this.mail.off();_this.urlInput.off();_this.wrapper.off().remove()};Share.prototype.close=function(){this.wrapper.fadeOut(300);this.isOpen=false};Share.prototype.update=function(url){this.shareUrl=url};return Share}(jQuery);DFLIP.Popup=function PopupClosure($){function Popup(container,options){var _this=this;var htmlDiv="<div>";var windowParameters="width=500,height=400";_this.isOpen=false;_this.wrapper=$('<div class="df-popup-wrapper" style="display: none;">').on("click",function(e){_this.close()});_this.box=$('<div class="df-popup-box">').on("click",function(e){e.preventDefault();e.stopPropagation()}).appendTo(_this.wrapper);$(container).append(_this.wrapper)}Popup.prototype.show=function(){this.wrapper.fadeIn(300);this.isOpen=true};Popup.prototype.dispose=function(){var _this=this;_this.box.off();_this.wrapper.off().remove()};Popup.prototype.close=function(){this.wrapper.fadeOut(300);this.isOpen=false};return Popup}(jQuery);var PDFLinkService=function(){function PDFLinkService(){this.baseUrl=null;this.pdfDocument=null;this.pdfViewer=null;this.pdfHistory=null;this._pagesRefCache=null}PDFLinkService.prototype={dispose:function(){this.baseUrl=null;this.pdfDocument=null;this.pdfViewer=null;this.pdfHistory=null;this._pagesRefCache=null},setDocument:function PDFLinkService_setDocument(pdfDocument,baseUrl){this.baseUrl=baseUrl;this.pdfDocument=pdfDocument;this._pagesRefCache=Object.create(null)},setViewer:function PDFLinkService_setViewer(pdfViewer){this.pdfViewer=pdfViewer;this.externalLinkTarget=pdfViewer.previewObject.options.linkTarget},setHistory:function PDFLinkService_setHistory(pdfHistory){this.pdfHistory=pdfHistory},get pagesCount(){return this.pdfDocument.numPages},get page(){return this.pdfViewer.currentPageNumber},set page(value){this.pdfViewer.currentPageNumber=value},navigateTo:function PDFLinkService_navigateTo(dest){var destString="";var self=this;var goToDestination=function(destRef){var pageNumber=destRef instanceof Object?self._pagesRefCache[destRef.num+" "+destRef.gen+" R"]:destRef+1;if(pageNumber){if(self.pdfViewer.contentProvider.options.pageSize==DFLIP.PAGE_SIZE.DOUBLEINTERNAL&&pageNumber>2){pageNumber=pageNumber*2-1}if(pageNumber>self.pdfViewer.pageCount){pageNumber=self.pdfViewer.pageCount}self.pdfViewer.gotoPage(pageNumber);if(self.pdfHistory){self.pdfHistory.push({dest:dest,hash:destString,page:pageNumber})}}else{self.pdfDocument.getPageIndex(destRef).then(function(pageIndex){var pageNum=pageIndex+1;var cacheKey=destRef.num+" "+destRef.gen+" R";self._pagesRefCache[cacheKey]=pageNum;goToDestination(destRef)})}};var destinationPromise;if(typeof dest==="string"){destString=dest;destinationPromise=this.pdfDocument.getDestination(dest)}else{destinationPromise=Promise.resolve(dest)}destinationPromise.then(function(destination){dest=destination;if(!(destination instanceof Array)){return}goToDestination(destination[0])})},customNavigateTo:function PDFLinkService_navigateTo(dest){if(dest==""||dest==null||dest=="null")return;var pageNumber=null;if(!isNaN(Math.round(dest))){pageNumber=dest}else if(typeof dest==="string"){pageNumber=parseInt(dest.replace("#",""),10);if(isNaN(pageNumber)){window.open(dest,DFLIP.defaults.linkTarget==DFLIP.LINK_TARGET.SELF?"_self":"_blank");return}}if(pageNumber!=null)this.pdfViewer.gotoPage(pageNumber)},getDestinationHash:function PDFLinkService_getDestinationHash(dest){if(typeof dest==="string"){return this.getAnchorUrl("#"+escape(dest))}if(dest instanceof Array){var destRef=dest[0];var pageNumber=destRef instanceof Object?this._pagesRefCache[destRef.num+" "+destRef.gen+" R"]:destRef+1;if(pageNumber){var pdfOpenParams=this.getAnchorUrl("#page="+pageNumber);var destKind=dest[1];if(typeof destKind==="object"&&"name"in destKind&&destKind.name==="XYZ"){var scale=dest[4]||this.pdfViewer.currentScaleValue;var scaleNumber=parseFloat(scale);if(scaleNumber){scale=scaleNumber*100}pdfOpenParams+="&zoom="+scale;if(dest[2]||dest[3]){pdfOpenParams+=","+(dest[2]||0)+","+(dest[3]||0)}}return pdfOpenParams}}return this.getAnchorUrl("")},getCustomDestinationHash:function PDFLinkService_getCustomDestinationHash(dest){return"#"+escape(dest)},getAnchorUrl:function PDFLinkService_getAnchorUrl(anchor){return(this.baseUrl||"")+anchor},setHash:function PDFLinkService_setHash(hash){if(hash.indexOf("=")>=0){var params=parseQueryString(hash);if("nameddest"in params){if(this.pdfHistory){this.pdfHistory.updateNextHashParam(params.nameddest)}this.navigateTo(params.nameddest);return}var pageNumber,dest;if("page"in params){pageNumber=params.page|0||1}if("zoom"in params){var zoomArgs=params.zoom.split(",");var zoomArg=zoomArgs[0];var zoomArgNumber=parseFloat(zoomArg);if(zoomArg.indexOf("Fit")===-1){dest=[null,{name:"XYZ"},zoomArgs.length>1?zoomArgs[1]|0:null,zoomArgs.length>2?zoomArgs[2]|0:null,zoomArgNumber?zoomArgNumber/100:zoomArg]}else{if(zoomArg==="Fit"||zoomArg==="FitB"){dest=[null,{name:zoomArg}]}else if(zoomArg==="FitH"||zoomArg==="FitBH"||(zoomArg==="FitV"||zoomArg==="FitBV")){dest=[null,{name:zoomArg},zoomArgs.length>1?zoomArgs[1]|0:null]}else if(zoomArg==="FitR"){if(zoomArgs.length!==5){console.error("PDFLinkService_setHash: "+"Not enough parameters for 'FitR'.")}else{dest=[null,{name:zoomArg},zoomArgs[1]|0,zoomArgs[2]|0,zoomArgs[3]|0,zoomArgs[4]|0]}}else{console.error("PDFLinkService_setHash: '"+zoomArg+"' is not a valid zoom value.")}}}if(dest){this.pdfViewer.scrollPageIntoView(pageNumber||this.page,dest)}else if(pageNumber){this.page=pageNumber}if("pagemode"in params){var event=document.createEvent("CustomEvent");event.initCustomEvent("pagemode",true,true,{mode:params.pagemode});this.pdfViewer.container.dispatchEvent(event)}}else if(/^\d+$/.test(hash)){this.page=hash}else{if(this.pdfHistory){this.pdfHistory.updateNextHashParam(unescape(hash))}this.navigateTo(unescape(hash))}},executeNamedAction:function PDFLinkService_executeNamedAction(action){switch(action){case"GoBack":if(this.pdfHistory){this.pdfHistory.back()}break;case"GoForward":if(this.pdfHistory){this.pdfHistory.forward()}break;case"NextPage":this.page++;break;case"PrevPage":this.page--;break;case"LastPage":this.page=this.pagesCount;break;case"FirstPage":this.page=1;break;default:break}var event=document.createEvent("CustomEvent");event.initCustomEvent("namedaction",true,true,{action:action});this.pdfViewer.container.dispatchEvent(event)},cachePageRef:function PDFLinkService_cachePageRef(pageNum,pageRef){var refStr=pageRef.num+" "+pageRef.gen+" R";this._pagesRefCache[refStr]=pageNum}};return PDFLinkService}();var FindStates={FIND_FOUND:0,FIND_NOTFOUND:1,FIND_WRAPPED:2,FIND_PENDING:3};var FIND_SCROLL_OFFSET_TOP=-50;var FIND_SCROLL_OFFSET_LEFT=-400;var CHARACTERS_TO_NORMALIZE={"â":"'","â":"'","â":"'","â":"'","â":'"',"â":'"',"â":'"',"â":'"',"¼":"1/4","½":"1/2","¾":"3/4"};DFLIP.PDFFindController=function PDFFindControllerClosure(){function PDFFindController(options){this.pdfViewer=options.pdfViewer||null;this.onUpdateResultsCount=null;this.onUpdateState=null;this.reset();var replace=Object.keys(CHARACTERS_TO_NORMALIZE).join("");this.normalizationRegex=new RegExp("["+replace+"]","g")}PDFFindController.prototype={reset:function PDFFindController_reset(){this.startedTextExtraction=false;this.extractTextPromises=[];this.pendingFindMatches=Object.create(null);this.active=false;this.pageContents=[];this.pageMatches=[];this.pageMatchesLength=null;this.matchCount=0;this.selected={pageIdx:-1,matchIdx:-1};this.offset={pageIdx:null,matchIdx:null};this.pagesToSearch=null;this.resumePageIdx=null;this.state=null;this.dirtyMatch=false;this.findTimeout=null;this.firstPagePromise=new Promise(function(resolve){this.resolveFirstPage=resolve}.bind(this))},normalize:function PDFFindController_normalize(text){return text.replace(this.normalizationRegex,function(ch){return CHARACTERS_TO_NORMALIZE[ch]})},_prepareMatches:function PDFFindController_prepareMatches(matchesWithLength,matches,matchesLength){function isSubTerm(matchesWithLength,currentIndex){var currentElem,prevElem,nextElem;currentElem=matchesWithLength[currentIndex];nextElem=matchesWithLength[currentIndex+1];if(currentIndex<matchesWithLength.length-1&¤tElem.match===nextElem.match){currentElem.skipped=true;return true}for(var i=currentIndex-1;i>=0;i--){prevElem=matchesWithLength[i];if(prevElem.skipped){continue}if(prevElem.match+prevElem.matchLength<currentElem.match){break}if(prevElem.match+prevElem.matchLength>=currentElem.match+currentElem.matchLength){currentElem.skipped=true;return true}}return false}var i,len;matchesWithLength.sort(function(a,b){return a.match===b.match?a.matchLength-b.matchLength:a.match-b.match});for(i=0,len=matchesWithLength.length;i<len;i++){if(isSubTerm(matchesWithLength,i)){continue}matches.push(matchesWithLength[i].match);matchesLength.push(matchesWithLength[i].matchLength)}},calcFindPhraseMatch:function PDFFindController_calcFindPhraseMatch(query,pageIndex,pageContent){var matches=[];var queryLen=query.length;var matchIdx=-queryLen;while(true){matchIdx=pageContent.indexOf(query,matchIdx+queryLen);if(matchIdx===-1){break}matches.push(matchIdx)}this.pageMatches[pageIndex]=matches},calcFindWordMatch:function PDFFindController_calcFindWordMatch(query,pageIndex,pageContent){var matchesWithLength=[];var queryArray=query.match(/\S+/g);var subquery,subqueryLen,matchIdx;for(var i=0,len=queryArray.length;i<len;i++){subquery=queryArray[i];subqueryLen=subquery.length;matchIdx=-subqueryLen;while(true){matchIdx=pageContent.indexOf(subquery,matchIdx+subqueryLen);if(matchIdx===-1){break}matchesWithLength.push({match:matchIdx,matchLength:subqueryLen,skipped:false})}}if(!this.pageMatchesLength){this.pageMatchesLength=[]}this.pageMatchesLength[pageIndex]=[];this.pageMatches[pageIndex]=[];this._prepareMatches(matchesWithLength,this.pageMatches[pageIndex],this.pageMatchesLength[pageIndex])},calcFindMatch:function PDFFindController_calcFindMatch(pageIndex){var pageContent=this.normalize(this.pageContents[pageIndex]);var query=this.normalize(this.state.query);var caseSensitive=this.state.caseSensitive;var phraseSearch=this.state.phraseSearch;var queryLen=query.length;if(queryLen===0){return}if(!caseSensitive){pageContent=pageContent.toLowerCase();query=query.toLowerCase()}if(phraseSearch){this.calcFindPhraseMatch(query,pageIndex,pageContent)}else{this.calcFindWordMatch(query,pageIndex,pageContent)}this.updatePage(pageIndex);if(this.resumePageIdx===pageIndex){this.resumePageIdx=null;this.nextPageMatch()}if(this.pageMatches[pageIndex].length>0){this.matchCount+=this.pageMatches[pageIndex].length;this.updateUIResultsCount()}},extractText:function PDFFindController_extractText(){if(this.startedTextExtraction){return}this.startedTextExtraction=true;this.pageContents=[];var extractTextPromisesResolves=[];var numPages=this.pdfViewer.contentProvider.pdfDocument.numPages;for(var i=0;i<numPages;i++){this.extractTextPromises.push(new Promise(function(resolve){extractTextPromisesResolves.push(resolve)}))}var self=this;function extractPageText(pageIndex){self.pdfViewer.getPageTextContent(pageIndex).then(function textContentResolved(textContent){var textItems=textContent.items;var str=[];for(var i=0,len=textItems.length;i<len;i++){str.push(textItems[i].str)}self.pageContents.push(str.join(""));extractTextPromisesResolves[pageIndex](pageIndex);console.log("extracting Page"+pageIndex);if(pageIndex+1<self.pdfViewer.contentProvider.pdfDocument.numPages){extractPageText(pageIndex+1)}})}extractPageText(0)},executeCommand:function PDFFindController_executeCommand(cmd,state){if(this.state===null||cmd!=="findagain"){this.dirtyMatch=true}this.state=state;this.updateUIState(FindStates.FIND_PENDING);this.firstPagePromise.then(function(){this.extractText();clearTimeout(this.findTimeout);if(cmd==="find"){this.findTimeout=setTimeout(this.nextMatch.bind(this),250)}else{this.nextMatch()}}.bind(this))},updatePage:function PDFFindController_updatePage(index){if(this.selected.pageIdx===index){this.pdfViewer.currentPageNumber=index+1}var page=this.pdfViewer.getPageView(index);if(page.textLayer){page.textLayer.updateMatches()}},nextMatch:function PDFFindController_nextMatch(){var previous=this.state.findPrevious;var currentPageIndex=this.pdfViewer.currentPageNumber-1;var numPages=this.pdfViewer.contentProvider.pageCount;this.active=true;if(this.dirtyMatch){this.dirtyMatch=false;this.selected.pageIdx=this.selected.matchIdx=-1;this.offset.pageIdx=currentPageIndex;this.offset.matchIdx=null;this.hadMatch=false;this.resumePageIdx=null;this.pageMatches=[];this.matchCount=0;this.pageMatchesLength=null;var self=this;for(var i=0;i<numPages;i++){this.updatePage(i);if(!(i in this.pendingFindMatches)){this.pendingFindMatches[i]=true;this.extractTextPromises[i].then(function(pageIdx){delete self.pendingFindMatches[pageIdx];self.calcFindMatch(pageIdx)})}}}if(this.state.query===""){this.updateUIState(FindStates.FIND_FOUND);return}if(this.resumePageIdx){return}var offset=this.offset;this.pagesToSearch=numPages;if(offset.matchIdx!==null){var numPageMatches=this.pageMatches[offset.pageIdx].length;if(!previous&&offset.matchIdx+1<numPageMatches||previous&&offset.matchIdx>0){this.hadMatch=true;offset.matchIdx=previous?offset.matchIdx-1:offset.matchIdx+1;this.updateMatch(true);return}this.advanceOffsetPage(previous)}this.nextPageMatch()},matchesReady:function PDFFindController_matchesReady(matches){var offset=this.offset;var numMatches=matches.length;var previous=this.state.findPrevious;if(numMatches){this.hadMatch=true;offset.matchIdx=previous?numMatches-1:0;this.updateMatch(true);return true}this.advanceOffsetPage(previous);if(offset.wrapped){offset.matchIdx=null;if(this.pagesToSearch<0){this.updateMatch(false);return true}}return false},updateMatchPosition:function PDFFindController_updateMatchPosition(pageIndex,index,elements,beginIdx){if(this.selected.matchIdx===index&&this.selected.pageIdx===pageIndex){var spot={top:FIND_SCROLL_OFFSET_TOP,left:FIND_SCROLL_OFFSET_LEFT};scrollIntoView(elements[beginIdx],spot,true)}},nextPageMatch:function PDFFindController_nextPageMatch(){if(this.resumePageIdx!==null){console.error("There can only be one pending page.")}do{var pageIdx=this.offset.pageIdx;var matches=this.pageMatches[pageIdx];if(!matches){this.resumePageIdx=pageIdx;break}}while(!this.matchesReady(matches))},advanceOffsetPage:function PDFFindController_advanceOffsetPage(previous){var offset=this.offset;var numPages=this.extractTextPromises.length;offset.pageIdx=previous?offset.pageIdx-1:offset.pageIdx+1;offset.matchIdx=null;this.pagesToSearch--;if(offset.pageIdx>=numPages||offset.pageIdx<0){offset.pageIdx=previous?numPages-1:0;offset.wrapped=true}},updateMatch:function PDFFindController_updateMatch(found){var state=FindStates.FIND_NOTFOUND;var wrapped=this.offset.wrapped;this.offset.wrapped=false;if(found){var previousPage=this.selected.pageIdx;this.selected.pageIdx=this.offset.pageIdx;this.selected.matchIdx=this.offset.matchIdx;state=wrapped?FindStates.FIND_WRAPPED:FindStates.FIND_FOUND;if(previousPage!==-1&&previousPage!==this.selected.pageIdx){this.updatePage(previousPage)}}this.updateUIState(state,this.state.findPrevious);if(this.selected.pageIdx!==-1){this.updatePage(this.selected.pageIdx)}},updateUIResultsCount:function PDFFindController_updateUIResultsCount(){if(this.onUpdateResultsCount){this.onUpdateResultsCount(this.matchCount)}},updateUIState:function PDFFindController_updateUIState(state,previous){if(this.onUpdateState){this.onUpdateState(state,previous,this.matchCount)}}};return PDFFindController}();DFLIP.TextLayerBuilder=function TextLayerBuilderClosure(){function TextLayerBuilder(options){this.textLayerDiv=options.textLayerDiv;this.renderingDone=false;this.divContentDone=false;this.pageIdx=options.pageIndex;this.pageNumber=this.pageIdx+1;this.matches=[];this.viewport=options.viewport;this.textDivs=[];this.findController=options.findController||null;this.textLayerRenderTask=null;this.enhanceTextSelection=options.enhanceTextSelection;this._bindMouse()}TextLayerBuilder.prototype={_finishRendering:function TextLayerBuilder_finishRendering(){this.renderingDone=true;if(!this.enhanceTextSelection){var endOfContent=document.createElement("div");endOfContent.className="endOfContent";this.textLayerDiv.appendChild(endOfContent)}},render:function TextLayerBuilder_render(timeout){if(!this.divContentDone||this.renderingDone){return}if(this.textLayerRenderTask){this.textLayerRenderTask.cancel();this.textLayerRenderTask=null}this.textDivs=[];var textLayerFrag=document.createDocumentFragment();this.textLayerRenderTask=pdfjsLib.renderTextLayer({textContent:this.textContent,container:textLayerFrag,viewport:this.viewport,textDivs:this.textDivs,timeout:timeout,enhanceTextSelection:this.enhanceTextSelection});this.textLayerRenderTask.promise.then(function(){this.textLayerDiv.appendChild(textLayerFrag);this._finishRendering();this.updateMatches()}.bind(this),function(reason){})},setTextContent:function TextLayerBuilder_setTextContent(textContent){if(this.textLayerRenderTask){this.textLayerRenderTask.cancel();this.textLayerRenderTask=null}this.textContent=textContent;this.divContentDone=true},convertMatches:function TextLayerBuilder_convertMatches(matches,matchesLength){var i=0;var iIndex=0;var bidiTexts=this.textContent.items;var end=bidiTexts.length-1;var queryLen=this.findController===null?0:this.findController.state.query.length;var ret=[];if(!matches){return ret}for(var m=0,len=matches.length;m<len;m++){var matchIdx=matches[m];while(i!==end&&matchIdx>=iIndex+bidiTexts[i].str.length){iIndex+=bidiTexts[i].str.length;i++}if(i===bidiTexts.length){console.error("Could not find a matching mapping")}var match={begin:{divIdx:i,offset:matchIdx-iIndex}};if(matchesLength){matchIdx+=matchesLength[m]}else{matchIdx+=queryLen}while(i!==end&&matchIdx>iIndex+bidiTexts[i].str.length){iIndex+=bidiTexts[i].str.length;i++}match.end={divIdx:i,offset:matchIdx-iIndex};ret.push(match)}return ret},renderMatches:function TextLayerBuilder_renderMatches(matches){if(matches.length===0){return}var bidiTexts=this.textContent.items;var textDivs=this.textDivs;var prevEnd=null;var pageIdx=this.pageIdx;var isSelectedPage=this.findController===null?false:pageIdx===this.findController.selected.pageIdx;var selectedMatchIdx=this.findController===null?-1:this.findController.selected.matchIdx;var highlightAll=this.findController===null?false:this.findController.state.highlightAll;var infinity={divIdx:-1,offset:undefined};function beginText(begin,className){var divIdx=begin.divIdx;textDivs[divIdx].textContent="";appendTextToDiv(divIdx,0,begin.offset,className)}function appendTextToDiv(divIdx,fromOffset,toOffset,className){var div=textDivs[divIdx];var content=bidiTexts[divIdx].str.substring(fromOffset,toOffset);var node=document.createTextNode(content);if(className){var span=document.createElement("span");span.className=className;span.appendChild(node);div.appendChild(span);return}div.appendChild(node)}var i0=selectedMatchIdx,i1=i0+1;if(highlightAll){i0=0;i1=matches.length}else if(!isSelectedPage){return}for(var i=i0;i<i1;i++){var match=matches[i];var begin=match.begin;var end=match.end;var isSelected=isSelectedPage&&i===selectedMatchIdx;var highlightSuffix=isSelected?" selected":"";if(this.findController){this.findController.updateMatchPosition(pageIdx,i,textDivs,begin.divIdx)}if(!prevEnd||begin.divIdx!==prevEnd.divIdx){if(prevEnd!==null){appendTextToDiv(prevEnd.divIdx,prevEnd.offset,infinity.offset)}beginText(begin)}else{appendTextToDiv(prevEnd.divIdx,prevEnd.offset,begin.offset)}if(begin.divIdx===end.divIdx){appendTextToDiv(begin.divIdx,begin.offset,end.offset,"highlight"+highlightSuffix)}else{appendTextToDiv(begin.divIdx,begin.offset,infinity.offset,"highlight begin"+highlightSuffix);for(var n0=begin.divIdx+1,n1=end.divIdx;n0<n1;n0++){textDivs[n0].className="highlight middle"+highlightSuffix}beginText(end,"highlight end"+highlightSuffix)}prevEnd=end}if(prevEnd){appendTextToDiv(prevEnd.divIdx,prevEnd.offset,infinity.offset)}},updateMatches:function TextLayerBuilder_updateMatches(){if(!this.renderingDone){return}var matches=this.matches;var textDivs=this.textDivs;var bidiTexts=this.textContent.items;var clearedUntilDivIdx=-1;for(var i=0,len=matches.length;i<len;i++){var match=matches[i];var begin=Math.max(clearedUntilDivIdx,match.begin.divIdx);for(var n=begin,end=match.end.divIdx;n<=end;n++){var div=textDivs[n];div.textContent=bidiTexts[n].str;div.className=""}clearedUntilDivIdx=match.end.divIdx+1}if(this.findController===null||!this.findController.active){return}var pageMatches,pageMatchesLength;if(this.findController!==null){pageMatches=this.findController.pageMatches[this.pageIdx]||null;pageMatchesLength=this.findController.pageMatchesLength?this.findController.pageMatchesLength[this.pageIdx]||null:null}this.matches=this.convertMatches(pageMatches,pageMatchesLength);this.renderMatches(this.matches)},_bindMouse:function TextLayerBuilder_bindMouse(){var div=this.textLayerDiv;var self=this;div.addEventListener("mousedown",function(e){if(self.enhanceTextSelection&&self.textLayerRenderTask){self.textLayerRenderTask.expandTextDivs(true);return}var end=div.querySelector(".endOfContent");if(!end){return}var adjustTop=e.target!==div;adjustTop=adjustTop&&window.getComputedStyle(end).getPropertyValue("-moz-user-select")!=="none";if(adjustTop){var divBounds=div.getBoundingClientRect();var r=Math.max(0,(e.pageY-divBounds.top)/divBounds.height);end.style.top=(r*100).toFixed(2)+"%"}end.classList.add("active")});div.addEventListener("mouseup",function(e){if(self.enhanceTextSelection&&self.textLayerRenderTask){self.textLayerRenderTask.expandTextDivs(false);return}var end=div.querySelector(".endOfContent");if(!end){return}end.style.top="";end.classList.remove("active")})}};return TextLayerBuilder}();DFLIP.ConvertPageLinks=function(){var w=arguments[0]/100,h=arguments[1]/100;var toPercent=function(_x,_y,_w,_h,_dest){return{x:_x/w,y:_y/h,w:_w/w,h:_h/h,dest:_dest}};var percents=[];var input;for(var index=2;index<arguments.length;index++){input=arguments[index];percents[index-2]=toPercent.apply(this,input)}return percents};DFLIP.parseLinks=function(links){var _links;if(links!=null&&links.length>0){for(var index=0;index<links.length;index++){_links=links[index];if(_links!=null&&_links[0]!=null&&_links[0].dest==null){_links=DFLIP.ConvertPageLinks.apply(this,_links);links[index]=_links}}}return links};(function($){function isTrue(val){return val=="true"||val==true}function checkValues(options){if(options.webgl!=null)options.webgl=isTrue(options.webgl);if(options.enableDownload!=null)options.enableDownload=isTrue(options.enableDownload);if(options.search!=null)options.search=isTrue(options.search);if(options.enableAnalytics!=null)options.enableAnalytics=isTrue(options.enableAnalytics);if(options.scrollWheel!=null)options.scrollWheel=isTrue(options.scrollWheel);if(options.autoEnableOutline!=null)options.autoEnableOutline=isTrue(options.autoEnableOutline);if(options.autoEnableThumbnail!=null)options.autoEnableThumbnail=isTrue(options.autoEnableThumbnail);if(options.transparent!=null)options.transparent=isTrue(options.transparent);if(options.overwritePDFOutline!=null)options.overwritePDFOutline=isTrue(options.overwritePDFOutline);if(options.soundEnable!=null)options.soundEnable=isTrue(options.soundEnable);if(options.forceFit!=null)options.forceFit=isTrue(options.forceFit);if(options.enableAnnotation!=null)options.enableAnnotation=isTrue(options.enableAnnotation);if(options.webglShadow!=null)options.webglShadow=isTrue(options.webglShadow);if(options.autoPlay!=null)options.autoPlay=isTrue(options.autoPlay);if(options.autoPlayStart!=null)options.autoPlayStart=isTrue(options.autoPlayStart);if(options.paddingTop!=null)options.paddingTop=parseInt(options.paddingTop,10);if(options.paddingRight!=null)options.paddingRight=parseInt(options.paddingRight,10);if(options.paddingBottom!=null)options.paddingBottom=parseInt(options.paddingBottom,10);if(options.paddingLeft!=null)options.paddingLeft=parseInt(options.paddingLeft,10);if(options.zoomRatio!=null)options.zoomRatio=parseFloat(options.zoomRatio,10);if(options.stiffness!=null)options.stiffness=parseFloat(options.stiffness,10);if(options.autoPlayDuration!=null)options.autoPlayDuration=parseInt(options.autoPlayDuration,10);if(options.linkTarget!=null)options.linkTarget=parseInt(options.linkTarget,10);if(options.pageMode==0||options.pageMode=="0")options.pageMode=null;if(options.singlePageMode==0||options.singlePageMode=="0")options.singlePageMode=null}function parseOptions(options){if(options.parsed==true)return;options.parsed=true;var links=[];checkValues(options);if(typeof dFlipWPGlobal!=="undefined"&&options.wpOptions=="true"){try{for(var key in options.links){var _pagelinks=options.links[key];var pagelink=[100,100];for(var l=0;l<_pagelinks.length;l++){var _link=_pagelinks[l];var _values=_link.substr(1).slice(0,-1).split(",");var _linkarr=[];for(var v=0;v<5;v++){_linkarr[v]=_values[v]}pagelink.push(_linkarr)}links[parseInt(key,10)+1]=pagelink}}catch(error){console.error(error.stack)}options.links=DFLIP.parseLinks(links)}else{options.links=DFLIP.parseLinks(options.links)}}DFLIP.getOptions=function(book){book=$(book);var book_id=book.attr("id");var options="option_"+book_id,source=book.attr("source")||book.attr("df-source");options=options==null||options==""||window[options]==null?{}:window[options];options.source=source==null||source==""?options.source:source;var attrOptions={webgl:book.attr("webgl"),height:book.attr("height"),soundEnable:book.attr("sound"),bookTitle:book.data("title"),transparent:book.attr("transparent"),enableDownload:book.attr("download"),search:book.attr("search"),duration:book.attr("duration"),hard:book.attr("hard"),openPage:book.data("page"),pageMode:book.attr("pagemode"),direction:book.attr("direction"),backgroundColor:book.attr("backgroundcolor"),scrollWheel:book.attr("scrollwheel"),backgroundImage:book.attr("backgroundimage"),paddingTop:book.attr("paddingtop"),paddingRight:book.attr("paddingright"),paddingBottom:book.attr("paddingbottom"),paddingLeft:book.attr("paddingleft"),wpOptions:book.attr("wpoptions")};options=$.extend(true,{},options,attrOptions);parseOptions(options);return options};DFLIP.parseBooks=function(){$("._df_button, ._df_thumb, ._df_custom, ._df_book").each(function(){var book=$(this);var parsed=book.attr("parsed")||book.attr("df-parsed");if(parsed!=="true"){book.attr("df-parsed","true");if(book.hasClass("_df_book")){var book_id=book.attr("id"),slug=book.attr("slug");var options=DFLIP.getOptions(book);options.id=book_id;if(slug!=null)options.slug=slug;if(book_id){window[book_id.toString()]=$(book).flipBook(options.source,options)}else{$(book).flipBook(options.source,options)}}else{if(book.hasClass("_df_thumb")){var wrapper=$("<div class='_df_book-cover'>");var text=book.html().trim();book.html("");var title=$("<span class='_df_book-title'>").html(text).appendTo(wrapper);var thumb=book.attr("thumb")||book.attr("df-thumb"),thumbType=book.attr("thumbtype")||DFLIP.defaults.thumbElement||"div",tags=book.attr("tags")||book.attr("df-tags");if(tags){tags=tags.split(",");if(tags.length>0){for(var tagcount=0;tagcount<tags.length;tagcount++){book.append("<span class='_df_book-tag'>"+tags[tagcount]+"</span>")}}}if(thumb!=null&&thumb.toString().trim()!=""){if(thumbType=="img"){wrapper.append('<img src="'+thumb+'" alt="'+text+'"/>');book.attr("thumb-type","img")}else{wrapper.css({backgroundImage:"url('"+thumb+"')"})}}else{wrapper.addClass("_df_thumb-not-found")}book.append(wrapper)}}}})};$(document).ready(function(){if(typeof dFlipLocation=="undefined"&&DFLIP.autoDetectLocation!=false){$("script").each(function(){var src=$(this)[0].src;if((src.indexOf("/dflip.js")>-1||src.indexOf("/dflip.min.js")>-1)&&(src.indexOf("https://")>-1||src.indexOf("http://")>-1)&&src.indexOf("js/dflip.")>-1){var splits=src.split("/");window.dFlipLocation=splits.slice(0,-2).join("/")}})}if(typeof dFlipLocation!=="undefined"){if(dFlipLocation.length>2&&dFlipLocation.slice(-1)!=="/"){window.dFlipLocation+="/"}DFLIP.defaults.mockupjsSrc=dFlipLocation+"js/libs/mockup.min.js";DFLIP.defaults.pdfjsSrc=dFlipLocation+"js/libs/pdf.min.js";DFLIP.defaults.pdfjsCompatibilitySrc=dFlipLocation+"js/libs/compatibility.js";DFLIP.defaults.threejsSrc=dFlipLocation+"js/libs/three.min.js";DFLIP.defaults.pdfjsWorkerSrc=dFlipLocation+"js/libs/pdf.worker.min.js";DFLIP.defaults.soundFile=dFlipLocation+"sound/turn2.mp3";DFLIP.defaults.imagesLocation=dFlipLocation+"images";DFLIP.defaults.imageResourcesPath=dFlipLocation+"images/pdfjs/";DFLIP.defaults.cMapUrl=dFlipLocation+"js/libs/cmaps/";if(typeof dFlipWPGlobal!=="undefined"){checkValues(dFlipWPGlobal);$.extend(true,DFLIP.defaults,dFlipWPGlobal)}}DFLIP.preParseHash=window.location.hash;$("body").on("click","._df_button, ._df_thumb, ._df_custom",function(event){event.preventDefault();var book=$(this);if(!window.dfLightBox){window.dfLightBox=new DFLightBox(function(){Array.prototype.forEach.call(DFLIP.utils.getSharePrefixes(),function(prefix){if(window.location.hash.indexOf("#"+prefix)==0)window.location.hash="#_"});window.dfActiveLightBoxBook.analytics({eventAction:"Book Closed",options:window.dfActiveLightBoxBook.options});window.dfActiveLightBoxBook.dispose();window.dfActiveLightBoxBook=null})}window.dfLightBox.duration=500;if(window.dfActiveLightBoxBook&&window.dfActiveLightBoxBook.dispose){window.dfActiveLightBoxBook.dispose()}else{window.dfLightBox.show(function(){var options=DFLIP.getOptions(book);options.transparent=false;options.height="100%";options.id=book.attr("id");var slug=book.attr("slug");if(slug!=null)options.slug=slug;options.isLightBox=true;window.dfActiveLightBoxBook=$(window.dfLightBox.container).flipBook(options.source,options)})}});if(DFLIP.utils.isSafari||DFLIP.utils.isIOS){$("body").addClass("df-webkit")}var hash_triggered=false;Array.prototype.forEach.call(DFLIP.utils.getSharePrefixes(),function(prefix){if(DFLIP.preParseHash&&DFLIP.preParseHash.indexOf(prefix)>=0&&hash_triggered===false){var id=DFLIP.preParseHash.split(prefix)[1].split("/")[0];var page=DFLIP.preParseHash.split(prefix)[1].split("/")[1];if(page!=null){page=page.split("/")[0]}var book;book=$("[slug="+id+"]");if(book.length==0)book=$("#"+id);if(book.length==0)book=$("[_slug="+id+"]");if(book.length>0){if(page!=null){book.data("page",page)}if(book.is("._df_button, ._df_thumb, ._df_custom")){book.trigger("click");hash_triggered=true}}}});DFLIP.parseBooks();if($("body").hasClass("attachment-pdf")){var attachments=$("[attachment_pdf_flipbook_lightbox]");if(attachments.length>0){$(attachments[0]).trigger("click")}}$("body").on("click",".df-ui-sidemenu-close",function(){var $this=$(this);$this
vendor: 119 bytes, line 1
1.closest(".df-container").find(".df-ui-outline.df-active , .df-ui-thumbnail.df-active").trigger("click")})})})(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.